QGIS API Documentation 3.30.0-'s-Hertogenbosch (f186b8efe0)
qgslayoutdesignerinterface.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayoutdesignerinterface.h
3 ---------------------
4 Date : July 2017
5 Copyright : (C) 2017 Nyall Dawson
6 Email : nyall dot dawson at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSLAYOUTDESIGNERINTERFACE_H
17#define QGSLAYOUTDESIGNERINTERFACE_H
18
19#include "qgis_gui.h"
20#include "qgis_sip.h"
21#include "qgslayoutexporter.h"
22#include <QObject>
23
24class QgsLayout;
25class QgsLayoutView;
26class QgsLayoutItem;
27class QgsMessageBar;
28class QgsFeature;
30class QMenu;
31class QDockWidget;
32class QToolBar;
33
55class GUI_EXPORT QgsLayoutDesignerInterface: public QObject
56{
57
58#ifdef SIP_RUN
60 if ( qobject_cast<QgsLayoutDesignerInterface *>( sipCpp ) )
61 sipType = sipType_QgsLayoutDesignerInterface;
62 else
63 sipType = NULL;
65#endif
66
67 Q_OBJECT
68
69 public:
70
73 {
76 };
77
81 QgsLayoutDesignerInterface( QObject *parent SIP_TRANSFERTHIS = nullptr )
82 : QObject( parent )
83 {}
84
89 virtual QgsLayout *layout() = 0;
90
96
102 virtual QWidget *window() = 0;
103
108 virtual QgsLayoutView *view() = 0;
109
113 virtual QgsMessageBar *messageBar() = 0;
114
118 virtual void selectItems( const QList< QgsLayoutItem * > &items ) = 0;
119
126 virtual void setAtlasPreviewEnabled( bool enabled ) = 0;
127
134 virtual bool atlasPreviewEnabled() const = 0;
135
141 virtual void setAtlasFeature( const QgsFeature &feature ) = 0;
142
151 virtual void showItemOptions( QgsLayoutItem *item, bool bringPanelToFront = true ) = 0;
152
153 // Menus and toolbars
154
169 virtual QMenu *layoutMenu() = 0;
170
185 virtual QMenu *editMenu() = 0;
186
201 virtual QMenu *viewMenu() = 0;
202
217 virtual QMenu *itemsMenu() = 0;
218
235 virtual QMenu *atlasMenu() = 0;
236
253 virtual QMenu *reportMenu() = 0;
254
269 virtual QMenu *settingsMenu() = 0;
270
282 virtual QToolBar *layoutToolbar() = 0;
283
295 virtual QToolBar *navigationToolbar() = 0;
296
308 virtual QToolBar *actionsToolbar() = 0;
309
324 virtual QToolBar *atlasToolbar() = 0;
325
335 virtual void addDockWidget( Qt::DockWidgetArea area, QDockWidget *dock ) = 0;
336
346 virtual void removeDockWidget( QDockWidget *dock ) = 0;
347
353 virtual void activateTool( StandardTool tool ) = 0;
354
361 {
362 public:
363
368
374 QMap< QString, QgsLabelingResults * > labelingResults;
375
376 };
377
386
387 public slots:
388
392 virtual void close() = 0;
393
399 virtual void showRulers( bool visible ) = 0;
400
401 signals:
402
411
412
419
420};
421
422#endif // QGSLAYOUTDESIGNERINTERFACE_H
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Definition: qgsfeature.h:56
Encapsulates the results of an export operation performed in the designer.
QMap< QString, QgsLabelingResults * > labelingResults
Returns the labeling results for all map items included in the export.
QgsLayoutExporter::ExportResult result
Result/error code of export.
A common interface for layout designer dialogs and widgets.
virtual void removeDockWidget(QDockWidget *dock)=0
Removes the specified dock widget from layout designer (without deleting it).
virtual void showItemOptions(QgsLayoutItem *item, bool bringPanelToFront=true)=0
Shows the configuration widget for the specified layout item.
virtual QgsLayoutView * view()=0
Returns the layout view utilized by the designer.
virtual QMenu * settingsMenu()=0
Returns a reference to the designer's "Settings" menu.
virtual QgsMasterLayoutInterface * masterLayout()=0
Returns the master layout displayed in the designer.
virtual QgsMessageBar * messageBar()=0
Returns the designer's message bar.
virtual QMenu * layoutMenu()=0
Returns a reference to the designer's "Layout" menu.
virtual QgsLayoutDesignerInterface::ExportResults * lastExportResults() const =0
Returns the results of the last export operation performed in the designer.
virtual QToolBar * navigationToolbar()=0
Returns a reference to the designer's "Navigation" toolbar.
virtual QMenu * atlasMenu()=0
Returns a reference to the designer's "Atlas" menu.
virtual QToolBar * atlasToolbar()=0
Returns a reference to the designer's "Atlas" toolbar.
virtual bool atlasPreviewEnabled() const =0
Returns whether the atlas preview mode is enabled in the designer.
virtual QWidget * window()=0
Returns a pointer to the designer window.
virtual void addDockWidget(Qt::DockWidgetArea area, QDockWidget *dock)=0
Adds a dock widget to the layout designer, in the specified dock area.
virtual QMenu * reportMenu()=0
Returns a reference to the designer's "Report" menu.
virtual void selectItems(const QList< QgsLayoutItem * > &items)=0
Selects the specified items.
void mapPreviewRefreshed(QgsLayoutItemMap *map)
Emitted when a map item's preview has been refreshed.
virtual QgsLayout * layout()=0
Returns the current layout displayed in the designer.
virtual void setAtlasPreviewEnabled(bool enabled)=0
Toggles whether the atlas preview mode should be enabled in the designer.
virtual QToolBar * layoutToolbar()=0
Returns a reference to the designer's "Layout" toolbar.
virtual void activateTool(StandardTool tool)=0
Activates a standard layout designer tool.
virtual void close()=0
Closes the layout designer.
QgsLayoutDesignerInterface(QObject *parent=nullptr)
Constructor for QgsLayoutDesignerInterface.
virtual void setAtlasFeature(const QgsFeature &feature)=0
Sets the specified feature as the current atlas feature.
virtual void showRulers(bool visible)=0
Toggles whether or not the rulers should be visible in the designer.
virtual QMenu * editMenu()=0
Returns a reference to the designer's "Edit" menu.
virtual QMenu * viewMenu()=0
Returns a reference to the designer's "View" menu.
void layoutExported()
Emitted whenever a layout is exported from the layout designer.
virtual QToolBar * actionsToolbar()=0
Returns a reference to the designer's "Actions" toolbar.
virtual QMenu * itemsMenu()=0
Returns a reference to the designer's "Items" menu.
StandardTool
Standard designer tools which are always available for use.
@ ToolMoveItemNodes
Move item nodes tool.
@ ToolMoveItemContent
Move item content tool.
ExportResult
Result codes for exporting layouts.
Layout graphical items for displaying a map.
Base class for graphical items within a QgsLayout.
A graphical widget to display and interact with QgsLayouts.
Definition: qgslayoutview.h:51
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
Definition: qgslayout.h:50
Interface for master layout type objects, such as print layouts and reports.
A bar for displaying non-blocking messages to the user.
Definition: qgsmessagebar.h:61
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
Definition: qgis_sip.h:186
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_FACTORY
Definition: qgis_sip.h:76
#define SIP_END
Definition: qgis_sip.h:203