You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							54 lines
						
					
					
						
							1.5 KiB
						
					
					
				
			
		
		
	
	
							54 lines
						
					
					
						
							1.5 KiB
						
					
					
				// Copyright (C) 2023 MapLibre contributors
 | 
						|
// Copyright (C) 2019 Mapbox, Inc.
 | 
						|
 | 
						|
// SPDX-License-Identifier: BSD-2-Clause
 | 
						|
 | 
						|
#pragma once
 | 
						|
 | 
						|
#include "map.hpp"
 | 
						|
 | 
						|
#include <mbgl/map/map_observer.hpp>
 | 
						|
#include <mbgl/style/style.hpp>
 | 
						|
 | 
						|
#include <QtCore/QObject>
 | 
						|
 | 
						|
#include <exception>
 | 
						|
#include <memory>
 | 
						|
 | 
						|
namespace QMapLibre {
 | 
						|
 | 
						|
class MapPrivate;
 | 
						|
 | 
						|
class MapObserver : public QObject, public mbgl::MapObserver {
 | 
						|
    Q_OBJECT
 | 
						|
 | 
						|
public:
 | 
						|
    explicit MapObserver(MapPrivate *ptr);
 | 
						|
    ~MapObserver() override;
 | 
						|
 | 
						|
    // mbgl::MapObserver implementation.
 | 
						|
    void onCameraWillChange(mbgl::MapObserver::CameraChangeMode mode) final;
 | 
						|
    void onCameraIsChanging() final;
 | 
						|
    void onCameraDidChange(mbgl::MapObserver::CameraChangeMode mode) final;
 | 
						|
    void onWillStartLoadingMap() final;
 | 
						|
    void onDidFinishLoadingMap() final;
 | 
						|
    void onDidFailLoadingMap(mbgl::MapLoadError error, const std::string &what) final;
 | 
						|
    void onWillStartRenderingFrame() final;
 | 
						|
    void onDidFinishRenderingFrame(mbgl::MapObserver::RenderFrameStatus status) final;
 | 
						|
    void onWillStartRenderingMap() final;
 | 
						|
    void onDidFinishRenderingMap(mbgl::MapObserver::RenderMode mode) final;
 | 
						|
    void onDidFinishLoadingStyle() final;
 | 
						|
    void onSourceChanged(mbgl::style::Source &source) final;
 | 
						|
 | 
						|
signals:
 | 
						|
    void mapChanged(Map::MapChange);
 | 
						|
    void mapLoadingFailed(Map::MapLoadingFailure, const QString &reason);
 | 
						|
    void copyrightsChanged(const QString ©rightsHtml);
 | 
						|
 | 
						|
private:
 | 
						|
    Q_DISABLE_COPY(MapObserver)
 | 
						|
 | 
						|
    MapPrivate *d_ptrRef;
 | 
						|
};
 | 
						|
 | 
						|
} // namespace QMapLibre
 | 
						|
 |