18 #ifndef QGISINTERFACE_H 19 #define QGISINTERFACE_H 102 virtual void addCustomActionForLayerType( QAction *action, QString menu,
111 virtual void addCustomActionForLayer( QAction *action,
QgsMapLayer *layer ) = 0;
117 virtual bool removeCustomActionForLayerType( QAction *action ) = 0;
123 virtual QList< QgsMapCanvas * > mapCanvases() = 0;
130 virtual QgsMapCanvas *createNewMapCanvas(
const QString &name ) = 0;
137 virtual void closeMapCanvas(
const QString &name ) = 0;
143 virtual QSize iconSize(
bool dockedToolbar =
false )
const = 0;
149 virtual QList<QgsMapLayer *> editableLayers(
bool modified =
false )
const = 0;
165 virtual QWidget *mainWindow() = 0;
174 virtual QList<QgsLayoutDesignerInterface *> openLayoutDesigners() = 0;
178 virtual QMap<QString, QVariant> defaultStyleSheetOptions() = 0;
181 virtual QFont defaultStyleSheetFont() = 0;
197 virtual QMenu *projectMenu() = 0;
202 virtual QMenu *editMenu() = 0;
207 virtual QMenu *viewMenu() = 0;
212 virtual QMenu *layerMenu() = 0;
217 virtual QMenu *newLayerMenu() = 0;
223 virtual QMenu *addLayerMenu() = 0;
228 virtual QMenu *settingsMenu() = 0;
233 virtual QMenu *pluginMenu() = 0;
238 virtual QMenu *rasterMenu() = 0;
243 virtual QMenu *databaseMenu() = 0;
248 virtual QMenu *vectorMenu() = 0;
253 virtual QMenu *webMenu() = 0;
262 virtual QMenu *firstRightStandardMenu() = 0;
267 virtual QMenu *windowMenu() = 0;
272 virtual QMenu *helpMenu() = 0;
279 virtual QToolBar *fileToolBar() = 0;
284 virtual QToolBar *layerToolBar() = 0;
290 virtual QToolBar *dataSourceManagerToolBar() = 0;
295 virtual QToolBar *mapNavToolToolBar() = 0;
300 virtual QToolBar *digitizeToolBar() = 0;
305 virtual QToolBar *advancedDigitizeToolBar() = 0;
311 virtual QToolBar *shapeDigitizeToolBar() = 0;
316 virtual QToolBar *attributesToolBar() = 0;
321 virtual QToolBar *pluginToolBar() = 0;
326 virtual QToolBar *helpToolBar() = 0;
331 virtual QToolBar *rasterToolBar() = 0;
336 virtual QToolBar *vectorToolBar() = 0;
341 virtual QToolBar *databaseToolBar() = 0;
346 virtual QToolBar *webToolBar() = 0;
350 virtual QAction *actionNewProject() = 0;
352 virtual QAction *actionOpenProject() = 0;
354 virtual QAction *actionSaveProject() = 0;
356 virtual QAction *actionSaveProjectAs() = 0;
358 virtual QAction *actionSaveMapAsImage() = 0;
360 virtual QAction *actionProjectProperties() = 0;
363 virtual QAction *actionCreatePrintLayout() = 0;
366 virtual QAction *actionShowLayoutManager() = 0;
368 virtual QAction *actionExit() = 0;
373 virtual QAction *actionCutFeatures() = 0;
375 virtual QAction *actionCopyFeatures() = 0;
377 virtual QAction *actionPasteFeatures() = 0;
379 virtual QAction *actionAddFeature() = 0;
381 virtual QAction *actionDeleteSelected() = 0;
383 virtual QAction *actionMoveFeature() = 0;
385 virtual QAction *actionSplitFeatures() = 0;
387 virtual QAction *actionSplitParts() = 0;
389 virtual QAction *actionAddRing() = 0;
391 virtual QAction *actionAddPart() = 0;
393 virtual QAction *actionSimplifyFeature() = 0;
395 virtual QAction *actionDeleteRing() = 0;
397 virtual QAction *actionDeletePart() = 0;
399 virtual QAction *actionVertexTool() = 0;
403 virtual QAction *actionPan() = 0;
405 virtual QAction *actionPanToSelected() = 0;
407 virtual QAction *actionZoomIn() = 0;
409 virtual QAction *actionZoomOut() = 0;
411 virtual QAction *actionSelect() = 0;
413 virtual QAction *actionSelectRectangle() = 0;
415 virtual QAction *actionSelectPolygon() = 0;
417 virtual QAction *actionSelectFreehand() = 0;
419 virtual QAction *actionSelectRadius() = 0;
421 virtual QAction *actionIdentify() = 0;
423 virtual QAction *actionFeatureAction() = 0;
425 virtual QAction *actionMeasure() = 0;
427 virtual QAction *actionMeasureArea() = 0;
429 virtual QAction *actionZoomFullExtent() = 0;
431 virtual QAction *actionZoomToLayer() = 0;
433 virtual QAction *actionZoomToSelected() = 0;
435 virtual QAction *actionZoomLast() = 0;
437 virtual QAction *actionZoomNext() = 0;
439 virtual QAction *actionZoomActualSize() = 0;
441 virtual QAction *actionMapTips() = 0;
443 virtual QAction *actionNewBookmark() = 0;
445 virtual QAction *actionShowBookmarks() = 0;
447 virtual QAction *actionDraw() = 0;
450 virtual QAction *actionNewVectorLayer() = 0;
451 virtual QAction *actionAddOgrLayer() = 0;
452 virtual QAction *actionAddRasterLayer() = 0;
453 virtual QAction *actionAddPgLayer() = 0;
454 virtual QAction *actionAddWmsLayer() = 0;
456 virtual QAction *actionAddAfsLayer() = 0;
458 virtual QAction *actionAddAmsLayer() = 0;
459 virtual QAction *actionCopyLayerStyle() = 0;
460 virtual QAction *actionPasteLayerStyle() = 0;
461 virtual QAction *actionOpenTable() = 0;
462 virtual QAction *actionOpenFieldCalculator() = 0;
468 virtual QAction *actionOpenStatisticalSummary() = 0;
470 virtual QAction *actionToggleEditing() = 0;
471 virtual QAction *actionSaveActiveLayerEdits() = 0;
472 virtual QAction *actionAllEdits() = 0;
473 virtual QAction *actionSaveEdits() = 0;
474 virtual QAction *actionSaveAllEdits() = 0;
475 virtual QAction *actionRollbackEdits() = 0;
476 virtual QAction *actionRollbackAllEdits() = 0;
477 virtual QAction *actionCancelEdits() = 0;
478 virtual QAction *actionCancelAllEdits() = 0;
479 virtual QAction *actionLayerSaveAs() = 0;
480 virtual QAction *actionDuplicateLayer() = 0;
481 virtual QAction *actionLayerProperties() = 0;
482 virtual QAction *actionAddToOverview() = 0;
483 virtual QAction *actionAddAllToOverview() = 0;
484 virtual QAction *actionRemoveAllFromOverview() = 0;
485 virtual QAction *actionHideAllLayers() = 0;
486 virtual QAction *actionShowAllLayers() = 0;
487 virtual QAction *actionHideSelectedLayers() = 0;
493 virtual QAction *actionHideDeselectedLayers() = 0;
494 virtual QAction *actionShowSelectedLayers() = 0;
497 virtual QAction *actionManagePlugins() = 0;
498 virtual QAction *actionPluginListSeparator() = 0;
499 virtual QAction *actionShowPythonDialog() = 0;
502 virtual QAction *actionToggleFullScreen() = 0;
503 virtual QAction *actionOptions() = 0;
504 virtual QAction *actionCustomProjection() = 0;
507 virtual QAction *actionHelpContents() = 0;
508 virtual QAction *actionQgisHomePage() = 0;
509 virtual QAction *actionCheckQgisVersion() = 0;
510 virtual QAction *actionAbout() = 0;
522 virtual int messageTimeout() = 0;
538 virtual void takeAppScreenShots(
const QString &saveDirectory,
const int categories = 0 ) {Q_UNUSED( saveDirectory ); Q_UNUSED( categories );}
547 virtual void zoomFull() = 0;
552 virtual void zoomToPrevious() = 0;
557 virtual void zoomToNext() = 0;
562 virtual void zoomToActiveLayer() = 0;
567 virtual QgsVectorLayer *addVectorLayer(
const QString &vectorLayerPath,
const QString &baseName,
const QString &providerKey ) = 0;
572 virtual QgsRasterLayer *addRasterLayer(
const QString &rasterLayerPath,
const QString &baseName = QString() ) = 0;
577 virtual QgsRasterLayer *addRasterLayer(
const QString &url,
const QString &layerName,
const QString &providerKey ) = 0;
582 virtual QgsMeshLayer *addMeshLayer(
const QString &url,
const QString &baseName,
const QString &providerKey ) = 0;
585 virtual bool addProject(
const QString &project ) = 0;
587 virtual void newProject(
bool promptToSaveFlag =
false ) = 0;
596 virtual void reloadConnections( ) = 0;
608 virtual void copySelectionToClipboard(
QgsMapLayer * ) = 0;
614 virtual void pasteFromClipboard(
QgsMapLayer * ) = 0;
617 virtual int addToolBarIcon( QAction *qAction ) = 0;
627 virtual QAction *addToolBarWidget( QWidget *widget
SIP_TRANSFER ) = 0;
630 virtual void removeToolBarIcon( QAction *qAction ) = 0;
640 virtual QAction *addRasterToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
643 virtual int addRasterToolBarIcon( QAction *qAction ) = 0;
646 virtual void removeRasterToolBarIcon( QAction *qAction ) = 0;
649 virtual int addVectorToolBarIcon( QAction *qAction ) = 0;
659 virtual QAction *addVectorToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
662 virtual void removeVectorToolBarIcon( QAction *qAction ) = 0;
665 virtual int addDatabaseToolBarIcon( QAction *qAction ) = 0;
675 virtual QAction *addDatabaseToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
678 virtual void removeDatabaseToolBarIcon( QAction *qAction ) = 0;
681 virtual int addWebToolBarIcon( QAction *qAction ) = 0;
691 virtual QAction *addWebToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
694 virtual void removeWebToolBarIcon( QAction *qAction ) = 0;
697 virtual QToolBar *addToolBar(
const QString &name ) = 0
SIP_FACTORY;
703 virtual void addToolBar( QToolBar *toolbar SIP_TRANSFER, Qt::ToolBarArea area = Qt::TopToolBarArea ) = 0;
708 virtual void openMessageLog() = 0;
711 virtual void addUserInputWidget( QWidget *widget ) = 0;
717 virtual void showLayoutManager() = 0;
732 virtual void showOptionsDialog( QWidget *parent =
nullptr,
const QString ¤tPage = QString() ) = 0;
738 virtual void buildStyleSheet(
const QMap<QString, QVariant> &opts ) = 0;
741 virtual void saveStyleSheetOptions(
const QMap<QString, QVariant> &opts ) = 0;
744 virtual void addPluginToMenu(
const QString &name, QAction *action ) = 0;
747 virtual void removePluginMenu(
const QString &name, QAction *action ) = 0;
750 virtual void insertAddLayerAction( QAction *action ) = 0;
753 virtual void removeAddLayerAction( QAction *action ) = 0;
756 virtual void addPluginToDatabaseMenu(
const QString &name, QAction *action ) = 0;
759 virtual void removePluginDatabaseMenu(
const QString &name, QAction *action ) = 0;
762 virtual void addPluginToRasterMenu(
const QString &name, QAction *action ) = 0;
765 virtual void removePluginRasterMenu(
const QString &name, QAction *action ) = 0;
768 virtual void addPluginToVectorMenu(
const QString &name, QAction *action ) = 0;
771 virtual void removePluginVectorMenu(
const QString &name, QAction *action ) = 0;
774 virtual void addPluginToWebMenu(
const QString &name, QAction *action ) = 0;
777 virtual void removePluginWebMenu(
const QString &name, QAction *action ) = 0;
784 virtual void addDockWidget( Qt::DockWidgetArea area, QDockWidget *dockwidget ) = 0;
791 virtual void removeDockWidget( QDockWidget *dockwidget ) = 0;
794 virtual void showLayerProperties(
QgsMapLayer *l ) = 0;
797 virtual QDialog *showAttributeTable(
QgsVectorLayer *l,
const QString &filterExpression = QString() ) = 0;
802 virtual void addWindow( QAction *action ) = 0;
807 virtual void removeWindow( QAction *action ) = 0;
810 virtual bool registerMainWindowAction( QAction *action,
const QString &defaultShortcut ) = 0;
813 virtual bool unregisterMainWindowAction( QAction *action ) = 0;
901 virtual void openURL(
const QString &url,
bool useQgisDocDirectory =
true ) = 0
SIP_DEPRECATED;
911 virtual bool openFeatureForm(
QgsVectorLayer *l,
QgsFeature &f,
bool updateFeatureOnly =
false,
bool showModal =
true ) = 0;
935 virtual void preloadForm(
const QString &uifile ) = 0;
945 virtual void registerLocatorFilter(
QgsLocatorFilter *filter SIP_TRANSFER ) = 0;
966 virtual void invalidateLocatorResults() = 0;
996 void currentThemeChanged(
const QString &theme );
1020 void layoutDesignerClosed();
1025 void initializationCompleted();
1043 void newProjectCreated();
1049 void layerSavedAs(
QgsMapLayer *l,
const QString &path );
1054 #endif //#ifndef QGISINTERFACE_H
Base class for all map layer types.
The QgsLayerTreeView class extends QTreeView and provides some additional functionality when working ...
The QgsLayerTreeMapCanvasBridge class takes care of updates of layer set for QgsMapCanvas from a laye...
This class provides qgis with the ability to render raster datasets onto the mapcanvas.
#define Q_NOWARN_DEPRECATED_PUSH
A bar for displaying non-blocking messages to the user.
A common interface for layout designer dialogs and widgets.
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
Abstract base class that may be implemented to handle new types of data to be dropped in QGIS layouts...
Map canvas is a class for displaying all GIS data types on a canvas.
Abstract base class that may be implemented to handle new types of data to be dropped in QGIS...
LayerType
Types of layers that can be added to a map.
Abstract base class for filters which collect locator results.
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
QgisInterface Abstract base class defining interfaces exposed by QgisApp and made available to plugin...
#define Q_NOWARN_DEPRECATED_POP
This class represents a coordinate reference system (CRS).
This class has all the configuration of snapping and can return answers to snapping queries...
A model for showing available data sources and other items in a structured tree.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Interface for master layout type objects, such as print layouts and reports.
Represents a vector layer which manages a vector based data sets.
virtual void takeAppScreenShots(const QString &saveDirectory, const int categories=0)
Take screenshots for user documentation.
A proxy widget for QStatusBar.