18 #ifndef QGISINTERFACE_H 19 #define QGISINTERFACE_H 103 virtual void addCustomActionForLayerType( QAction *action, QString menu,
112 virtual void addCustomActionForLayer( QAction *action,
QgsMapLayer *layer ) = 0;
118 virtual bool removeCustomActionForLayerType( QAction *action ) = 0;
124 virtual QList< QgsMapCanvas * > mapCanvases() = 0;
131 virtual QgsMapCanvas *createNewMapCanvas(
const QString &name ) = 0;
138 virtual void closeMapCanvas(
const QString &name ) = 0;
144 virtual QSize
iconSize(
bool dockedToolbar =
false )
const = 0;
151 virtual QList<QgsMapLayer *> editableLayers(
bool modified =
false )
const = 0;
167 virtual QWidget *mainWindow() = 0;
176 virtual QList<QgsLayoutDesignerInterface *> openLayoutDesigners() = 0;
180 virtual QMap<QString, QVariant> defaultStyleSheetOptions() = 0;
183 virtual QFont defaultStyleSheetFont() = 0;
199 virtual QMenu *projectMenu() = 0;
204 virtual QMenu *editMenu() = 0;
209 virtual QMenu *viewMenu() = 0;
214 virtual QMenu *layerMenu() = 0;
219 virtual QMenu *newLayerMenu() = 0;
225 virtual QMenu *addLayerMenu() = 0;
230 virtual QMenu *settingsMenu() = 0;
235 virtual QMenu *pluginMenu() = 0;
240 virtual QMenu *rasterMenu() = 0;
245 virtual QMenu *databaseMenu() = 0;
250 virtual QMenu *vectorMenu() = 0;
255 virtual QMenu *webMenu() = 0;
264 virtual QMenu *firstRightStandardMenu() = 0;
269 virtual QMenu *windowMenu() = 0;
274 virtual QMenu *helpMenu() = 0;
281 virtual QToolBar *fileToolBar() = 0;
286 virtual QToolBar *layerToolBar() = 0;
292 virtual QToolBar *dataSourceManagerToolBar() = 0;
297 virtual QToolBar *mapNavToolToolBar() = 0;
302 virtual QToolBar *digitizeToolBar() = 0;
307 virtual QToolBar *advancedDigitizeToolBar() = 0;
313 virtual QToolBar *shapeDigitizeToolBar() = 0;
318 virtual QToolBar *attributesToolBar() = 0;
323 virtual QToolBar *pluginToolBar() = 0;
328 virtual QToolBar *helpToolBar() = 0;
333 virtual QToolBar *rasterToolBar() = 0;
338 virtual QToolBar *vectorToolBar() = 0;
343 virtual QToolBar *databaseToolBar() = 0;
348 virtual QToolBar *webToolBar() = 0;
352 virtual QAction *actionNewProject() = 0;
354 virtual QAction *actionOpenProject() = 0;
356 virtual QAction *actionSaveProject() = 0;
358 virtual QAction *actionSaveProjectAs() = 0;
360 virtual QAction *actionSaveMapAsImage() = 0;
362 virtual QAction *actionProjectProperties() = 0;
365 virtual QAction *actionCreatePrintLayout() = 0;
368 virtual QAction *actionShowLayoutManager() = 0;
370 virtual QAction *actionExit() = 0;
375 virtual QAction *actionCutFeatures() = 0;
377 virtual QAction *actionCopyFeatures() = 0;
379 virtual QAction *actionPasteFeatures() = 0;
381 virtual QAction *actionAddFeature() = 0;
383 virtual QAction *actionDeleteSelected() = 0;
385 virtual QAction *actionMoveFeature() = 0;
387 virtual QAction *actionSplitFeatures() = 0;
389 virtual QAction *actionSplitParts() = 0;
391 virtual QAction *actionAddRing() = 0;
393 virtual QAction *actionAddPart() = 0;
395 virtual QAction *actionSimplifyFeature() = 0;
397 virtual QAction *actionDeleteRing() = 0;
399 virtual QAction *actionDeletePart() = 0;
405 virtual QAction *actionVertexTool() = 0;
412 virtual QAction *actionVertexToolActiveLayer() = 0;
416 virtual QAction *actionPan() = 0;
418 virtual QAction *actionPanToSelected() = 0;
420 virtual QAction *actionZoomIn() = 0;
422 virtual QAction *actionZoomOut() = 0;
424 virtual QAction *actionSelect() = 0;
426 virtual QAction *actionSelectRectangle() = 0;
428 virtual QAction *actionSelectPolygon() = 0;
430 virtual QAction *actionSelectFreehand() = 0;
432 virtual QAction *actionSelectRadius() = 0;
434 virtual QAction *actionIdentify() = 0;
436 virtual QAction *actionFeatureAction() = 0;
438 virtual QAction *actionMeasure() = 0;
440 virtual QAction *actionMeasureArea() = 0;
442 virtual QAction *actionZoomFullExtent() = 0;
444 virtual QAction *actionZoomToLayer() = 0;
446 virtual QAction *actionZoomToSelected() = 0;
448 virtual QAction *actionZoomLast() = 0;
450 virtual QAction *actionZoomNext() = 0;
452 virtual QAction *actionZoomActualSize() = 0;
454 virtual QAction *actionMapTips() = 0;
456 virtual QAction *actionNewBookmark() = 0;
458 virtual QAction *actionShowBookmarks() = 0;
460 virtual QAction *actionDraw() = 0;
463 virtual QAction *actionNewVectorLayer() = 0;
464 virtual QAction *actionAddOgrLayer() = 0;
465 virtual QAction *actionAddRasterLayer() = 0;
466 virtual QAction *actionAddPgLayer() = 0;
467 virtual QAction *actionAddWmsLayer() = 0;
469 virtual QAction *actionAddAfsLayer() = 0;
471 virtual QAction *actionAddAmsLayer() = 0;
472 virtual QAction *actionCopyLayerStyle() = 0;
473 virtual QAction *actionPasteLayerStyle() = 0;
474 virtual QAction *actionOpenTable() = 0;
475 virtual QAction *actionOpenFieldCalculator() = 0;
481 virtual QAction *actionOpenStatisticalSummary() = 0;
483 virtual QAction *actionToggleEditing() = 0;
484 virtual QAction *actionSaveActiveLayerEdits() = 0;
485 virtual QAction *actionAllEdits() = 0;
486 virtual QAction *actionSaveEdits() = 0;
487 virtual QAction *actionSaveAllEdits() = 0;
488 virtual QAction *actionRollbackEdits() = 0;
489 virtual QAction *actionRollbackAllEdits() = 0;
490 virtual QAction *actionCancelEdits() = 0;
491 virtual QAction *actionCancelAllEdits() = 0;
492 virtual QAction *actionLayerSaveAs() = 0;
493 virtual QAction *actionDuplicateLayer() = 0;
494 virtual QAction *actionLayerProperties() = 0;
495 virtual QAction *actionAddToOverview() = 0;
496 virtual QAction *actionAddAllToOverview() = 0;
497 virtual QAction *actionRemoveAllFromOverview() = 0;
498 virtual QAction *actionHideAllLayers() = 0;
499 virtual QAction *actionShowAllLayers() = 0;
500 virtual QAction *actionHideSelectedLayers() = 0;
506 virtual QAction *actionHideDeselectedLayers() = 0;
507 virtual QAction *actionShowSelectedLayers() = 0;
510 virtual QAction *actionManagePlugins() = 0;
511 virtual QAction *actionPluginListSeparator() = 0;
512 virtual QAction *actionShowPythonDialog() = 0;
515 virtual QAction *actionToggleFullScreen() = 0;
516 virtual QAction *actionOptions() = 0;
517 virtual QAction *actionCustomProjection() = 0;
520 virtual QAction *actionHelpContents() = 0;
521 virtual QAction *actionQgisHomePage() = 0;
522 virtual QAction *actionCheckQgisVersion() = 0;
523 virtual QAction *actionAbout() = 0;
535 virtual int messageTimeout() = 0;
552 virtual void takeAppScreenShots(
const QString &saveDirectory,
const int categories = 0 ) {Q_UNUSED( saveDirectory ) Q_UNUSED( categories );}
561 virtual void zoomFull() = 0;
566 virtual void zoomToPrevious() = 0;
571 virtual void zoomToNext() = 0;
576 virtual void zoomToActiveLayer() = 0;
581 virtual QgsVectorLayer *addVectorLayer(
const QString &vectorLayerPath,
const QString &baseName,
const QString &providerKey ) = 0;
586 virtual QgsRasterLayer *addRasterLayer(
const QString &rasterLayerPath,
const QString &baseName = QString() ) = 0;
591 virtual QgsRasterLayer *addRasterLayer(
const QString &url,
const QString &layerName,
const QString &providerKey ) = 0;
596 virtual QgsMeshLayer *addMeshLayer(
const QString &url,
const QString &baseName,
const QString &providerKey ) = 0;
599 virtual bool addProject(
const QString &project ) = 0;
601 virtual void newProject(
bool promptToSaveFlag =
false ) = 0;
610 virtual void reloadConnections( ) = 0;
622 virtual void copySelectionToClipboard(
QgsMapLayer * ) = 0;
628 virtual void pasteFromClipboard(
QgsMapLayer * ) = 0;
631 virtual int addToolBarIcon( QAction *qAction ) = 0;
641 virtual QAction *addToolBarWidget( QWidget *widget
SIP_TRANSFER ) = 0;
644 virtual void removeToolBarIcon( QAction *qAction ) = 0;
654 virtual QAction *addRasterToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
657 virtual int addRasterToolBarIcon( QAction *qAction ) = 0;
660 virtual void removeRasterToolBarIcon( QAction *qAction ) = 0;
663 virtual int addVectorToolBarIcon( QAction *qAction ) = 0;
673 virtual QAction *addVectorToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
676 virtual void removeVectorToolBarIcon( QAction *qAction ) = 0;
679 virtual int addDatabaseToolBarIcon( QAction *qAction ) = 0;
689 virtual QAction *addDatabaseToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
692 virtual void removeDatabaseToolBarIcon( QAction *qAction ) = 0;
695 virtual int addWebToolBarIcon( QAction *qAction ) = 0;
705 virtual QAction *addWebToolBarWidget( QWidget *widget SIP_TRANSFER ) = 0;
708 virtual void removeWebToolBarIcon( QAction *qAction ) = 0;
711 virtual QToolBar *addToolBar(
const QString &name ) = 0
SIP_FACTORY;
717 virtual void addToolBar( QToolBar *toolbar SIP_TRANSFER, Qt::ToolBarArea area = Qt::TopToolBarArea ) = 0;
722 virtual void openMessageLog() = 0;
725 virtual void addUserInputWidget( QWidget *widget ) = 0;
731 virtual void showLayoutManager() = 0;
746 virtual void showOptionsDialog( QWidget *parent =
nullptr,
const QString ¤tPage = QString() ) = 0;
752 virtual void buildStyleSheet(
const QMap<QString, QVariant> &opts ) = 0;
755 virtual void saveStyleSheetOptions(
const QMap<QString, QVariant> &opts ) = 0;
758 virtual void addPluginToMenu(
const QString &name, QAction *action ) = 0;
761 virtual void removePluginMenu(
const QString &name, QAction *action ) = 0;
764 virtual void insertAddLayerAction( QAction *action ) = 0;
767 virtual void removeAddLayerAction( QAction *action ) = 0;
770 virtual void addPluginToDatabaseMenu(
const QString &name, QAction *action ) = 0;
773 virtual void removePluginDatabaseMenu(
const QString &name, QAction *action ) = 0;
776 virtual void addPluginToRasterMenu(
const QString &name, QAction *action ) = 0;
779 virtual void removePluginRasterMenu(
const QString &name, QAction *action ) = 0;
782 virtual void addPluginToVectorMenu(
const QString &name, QAction *action ) = 0;
785 virtual void removePluginVectorMenu(
const QString &name, QAction *action ) = 0;
788 virtual void addPluginToWebMenu(
const QString &name, QAction *action ) = 0;
791 virtual void removePluginWebMenu(
const QString &name, QAction *action ) = 0;
798 virtual void addDockWidget( Qt::DockWidgetArea area, QDockWidget *dockwidget ) = 0;
805 virtual void removeDockWidget( QDockWidget *dockwidget ) = 0;
808 virtual void showLayerProperties(
QgsMapLayer *l ) = 0;
811 virtual QDialog *showAttributeTable(
QgsVectorLayer *l,
const QString &filterExpression = QString() ) = 0;
817 virtual void addWindow( QAction *action ) = 0;
823 virtual void removeWindow( QAction *action ) = 0;
826 virtual bool registerMainWindowAction( QAction *action,
const QString &defaultShortcut ) = 0;
829 virtual bool unregisterMainWindowAction( QAction *action ) = 0;
917 virtual void openURL(
const QString &url,
bool useQgisDocDirectory =
true ) = 0
SIP_DEPRECATED;
927 virtual bool openFeatureForm(
QgsVectorLayer *l,
QgsFeature &f,
bool updateFeatureOnly =
false,
bool showModal =
true ) = 0;
951 virtual void preloadForm(
const QString &uifile ) = 0;
961 virtual void registerLocatorFilter(
QgsLocatorFilter *filter SIP_TRANSFER ) = 0;
982 virtual void invalidateLocatorResults() = 0;
1012 void currentThemeChanged(
const QString &theme );
1036 void layoutDesignerClosed();
1041 void initializationCompleted();
1059 void newProjectCreated();
1065 void layerSavedAs(
QgsMapLayer *l,
const QString &path );
1070 #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...
Abstract base class for filters which collect locator results.
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
QSize iconSize(bool dockableToolbar)
Returns the user-preferred size of a window's toolbar icons.
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).
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.
QgsMapLayerType
Types of layers that can be added to a map.
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.