00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef QGISAPP_H
00020 #define QGISAPP_H
00021
00022 class QActionGroup;
00023 class QCheckBox;
00024 class QCursor;
00025 class QFileInfo;
00026 class QKeyEvent;
00027 class QLabel;
00028 class QLineEdit;
00029 class QMenu;
00030 class QPixmap;
00031 class QProgressBar;
00032 class QPushButton;
00033 class QRect;
00034 class QSettings;
00035 class QSplashScreen;
00036 class QStringList;
00037 class QToolButton;
00038 class QTcpSocket;
00039 class QValidator;
00040
00041 class QgisAppInterface;
00042 class QgsClipboard;
00043 class QgsComposer;
00044 class QgsHelpViewer;
00045 class QgsLegend;
00046 class QgsMapCanvas;
00047 class QgsMapLayer;
00048 class QgsMapTip;
00049 class QgsMapTool;
00050 class QgsPoint;
00051 class QgsProviderRegistry;
00052 class QgsPythonDialog;
00053 class QgsPythonUtils;
00054 class QgsRasterLayer;
00055 class QgsRect;
00056 class QgsVectorLayer;
00057
00058 #include <QMainWindow>
00059 #include <QToolBar>
00060 #include <QAbstractSocket>
00061 #include <QPointer>
00062
00063 #include "qgsconfig.h"
00064 #include "qgspoint.h"
00065
00069 class QgisApp : public QMainWindow
00070 {
00071 Q_OBJECT
00072 public:
00074 QgisApp( QSplashScreen *splash, QWidget * parent = 0, Qt::WFlags fl = Qt::Window );
00076 ~QgisApp();
00080 QgsVectorLayer* addVectorLayer( QString vectorLayerPath, QString baseName, QString providerKey );
00081
00087 bool addVectorLayers( QStringList const & theLayerQStringList, const QString& enc );
00088
00094 bool addRasterLayers( QStringList const & theLayerQStringList, bool guiWarning = true );
00095
00100 QgsRasterLayer* addRasterLayer( QString const & rasterLayerPath,
00101 QString const & baseName,
00102 QString const & providerKey,
00103 QStringList const & layers,
00104 QStringList const & styles,
00105 QString const & format,
00106 QString const & crs );
00107
00113 QgsRasterLayer* addRasterLayer( QString const & rasterFile, QString const & baseName, bool guiWarning = true );
00114
00116 void addMapLayer( QgsMapLayer *theMapLayer );
00117
00119 void setExtent( QgsRect theRect );
00121 void removeAllLayers();
00126 bool openLayer( const QString & fileName );
00130 void openProject( const QString & fileName );
00134 bool addProject( QString projectFile );
00136 void saveMapAsImage( QString, QPixmap * );
00138 QgsMapCanvas * mapCanvas() { return mMapCanvas; };
00140 void setTheme( QString themeName = "default" );
00142 void setupToolbarPopups( QString themeName );
00144 QgsClipboard * clipboard();
00145
00161 void setupProxy();
00162
00163 static QgisApp *instance() { return smInstance; }
00164
00166
00167
00168 static QIcon getThemeIcon( const QString theName );
00170
00171
00172 static QPixmap getThemePixmap( const QString theName );
00173
00177 void addDockWidget( Qt::DockWidgetArea area, QDockWidget * dockwidget );
00181 QToolBar *addToolBar( QString name );
00182
00185 void addWindow( QAction *action );
00188 void removeWindow( QAction *action );
00189
00191 QAction *actionNewProject() { return mActionNewProject; }
00192 QAction *actionOpenProject() { return mActionOpenProject; }
00193 QAction *actionFileSeparator1() { return mActionFileSeparator1; }
00194 QAction *actionSaveProject() { return mActionSaveProject; }
00195 QAction *actionSaveProjectAs() { return mActionSaveProjectAs; }
00196 QAction *actionSaveMapAsImage() { return mActionSaveMapAsImage; }
00197 QAction *actionFileSeparator2() { return mActionFileSeparator2; }
00198 QAction *actionProjectProperties() { return mActionProjectProperties; }
00199 QAction *actionFileSeparator3() { return mActionFileSeparator3; }
00200 QAction *actionPrintComposer() { return mActionPrintComposer; }
00201 QAction *actionFileSeparator4() { return mActionFileSeparator4; }
00202 QAction *actionExit() { return mActionExit; }
00203
00204 QAction *actionCutFeatures() { return mActionCutFeatures; }
00205 QAction *actionCopyFeatures() { return mActionCopyFeatures; }
00206 QAction *actionPasteFeatures() { return mActionPasteFeatures; }
00207 QAction *actionEditSeparator1() { return mActionEditSeparator1; }
00208 QAction *actionCapturePoint() { return mActionCapturePoint; }
00209 QAction *actionCaptureLine() { return mActionCaptureLine; }
00210 QAction *actionCapturePologon() { return mActionCapturePolygon; }
00211 QAction *actionDeleteSelected() { return mActionDeleteSelected; }
00212 QAction *actionMoveFeature() { return mActionMoveFeature; }
00213 QAction *actionSplitFeatures() { return mActionSplitFeatures; }
00214 QAction *actionAddVertex() { return mActionAddVertex; }
00215 QAction *actionDelerteVertex() { return mActionDeleteVertex; }
00216 QAction *actioMoveVertex() { return mActionMoveVertex; }
00217 QAction *actionAddRing() { return mActionAddRing; }
00218 QAction *actionAddIsland() { return mActionAddIsland; }
00219 QAction *actionEditSeparator2() { return mActionEditSeparator2; }
00220
00221 QAction *actionPan() { return mActionPan; }
00222 QAction *actionZoomIn() { return mActionZoomIn; }
00223 QAction *actionZoomOut() { return mActionZoomOut; }
00224 QAction *actionSelect() { return mActionSelect; }
00225 QAction *actionIdentify() { return mActionIdentify; }
00226 QAction *actionMeasure() { return mActionMeasure; }
00227 QAction *actionMeasureArea() { return mActionMeasureArea; }
00228 QAction *actionViewSeparator1() { return mActionViewSeparator1; }
00229 QAction *actionZoomFullExtent() { return mActionZoomFullExtent; }
00230 QAction *actionZoomToLayer() { return mActionZoomToLayer; }
00231 QAction *actionZoomToSelected() { return mActionZoomToSelected; }
00232 QAction *actionZoomLast() { return mActionZoomLast; }
00233 QAction *actionZoomActualSize() { return mActionZoomActualSize; }
00234 QAction *actionViewSeparator2() { return mActionViewSeparator2; }
00235 QAction *actionMapTips() { return mActionMapTips; }
00236 QAction *actionNewBookmark() { return mActionNewBookmark; }
00237 QAction *actionShowBookmarks() { return mActionShowBookmarks; }
00238 QAction *actionDraw() { return mActionDraw; }
00239 QAction *actionViewSeparator3() { return mActionViewSeparator3; }
00240
00241 QAction *actionNewVectorLayer() { return mActionNewVectorLayer; }
00242 QAction *actionAddOgrLayer() { return mActionAddOgrLayer; }
00243 QAction *actionAddRasterLayer() { return mActionAddRasterLayer; }
00244 QAction *actionAddPgLayer() { return mActionAddPgLayer; }
00245 QAction *actionAddWmsLayer() { return mActionAddWmsLayer; }
00246 QAction *actionLayerSeparator1() { return mActionLayerSeparator1; }
00247 QAction *actionOpenTable() { return mActionOpenTable; }
00248 QAction *actionToggleEditing() { return mActionToggleEditing; }
00249 QAction *actionLayerSaveAs() { return mActionLayerSaveAs; }
00250 QAction *actionLayerSelectionSaveAs() { return mActionLayerSelectionSaveAs; }
00251 QAction *actionRemoveLayer() { return mActionRemoveLayer; }
00252 QAction *actionLayerProperties() { return mActionLayerProperties; }
00253 QAction *actionLayerSeparator2() { return mActionLayerSeparator2; }
00254 QAction *actionAddToOverview() { return mActionAddToOverview; }
00255 QAction *actionAddAllToOverview() { return mActionAddAllToOverview; }
00256 QAction *actionRemoveAllFromOverview() { return mActionRemoveAllFromOverview; }
00257 QAction *actionLayerSeparator3() { return mActionLayerSeparator3; }
00258 QAction *actionHideAllLayers() { return mActionHideAllLayers; }
00259 QAction *actionShowAllLayers() { return mActionShowAllLayers; }
00260
00261 QAction *actionManagePlugins() { return mActionManagePlugins; }
00262 QAction *actionPluginSeparator1() { return mActionPluginSeparator1; }
00263 QAction *actionPluginListSeparator() { return mActionPluginSeparator1; }
00264 QAction *actionPluginSeparator2() { return mActionPluginSeparator2; }
00265 QAction *actionPluginPythonSeparator() { return mActionPluginSeparator2; }
00266 QAction *actionShowPythonDialog() { return mActionShowPythonDialog; }
00267
00268 QAction *actionToggleFullScreen() { return mActionToggleFullScreen; }
00269 QAction *actionSettingsSeparator1() { return mActionSettingsSeparator1; }
00270 QAction *actionOptions() { return mActionOptions; }
00271 QAction *actionCustomProjection() { return mActionCustomProjection; }
00272
00273 #ifdef Q_WS_MAC
00274 QAction *actionWindowMinimize() { return mActionWindowMinimize; }
00275 QAction *actionWindowZoom() { return mActionWindowZoom; }
00276 QAction *actionWindowSeparator1() { return mActionWindowSeparator1; }
00277 QAction *actionWindowAllToFront() { return mActionWindowAllToFront; }
00278 QAction *actionWindowSeparator2() { return mActionWindowSeparator2; }
00279 #endif
00280
00281 QAction *actionHelpContents() { return mActionHelpContents; }
00282 QAction *actionHelpSeparator1() { return mActionHelpSeparator1; }
00283 QAction *actionQgisHomePage() { return mActionQgisHomePage; }
00284 QAction *actionCheckQgisVersion() { return mActionCheckQgisVersion; }
00285 QAction *actionHelpSeparator2() { return mActionHelpSeparator2; }
00286 QAction *actionAbout() { return mActionAbout; }
00287
00289 QMenu *fileMenu() { return mFileMenu; }
00290 QMenu *editMenu() { return mEditMenu; }
00291 QMenu *viewMenu() { return mViewMenu; }
00292 QMenu *layerMenu() { return mLayerMenu; }
00293 QMenu *settingsMenu() { return mSettingsMenu; }
00294 QMenu *pluginMenu() { return mPluginMenu; }
00295 #ifdef Q_WS_MAC
00296 QMenu *firstRightStandardMenu() { return mWindowMenu; }
00297 QMenu *windowMenu() { return mWindowMenu; }
00298 #else
00299 QMenu *firstRightStandardMenu() { return mHelpMenu; }
00300 QMenu *windowMenu() { return NULL; }
00301 #endif
00302 QMenu *helpMenu() { return mHelpMenu; }
00303
00305
00310 QToolBar *fileToolBar() { return mFileToolBar; }
00311 QToolBar *layerToolBar() { return mLayerToolBar; }
00312 QToolBar *mapNavToolToolBar() { return mMapNavToolBar; }
00313 QToolBar *digitizeToolBar() { return mDigitizeToolBar; }
00314 QToolBar *attributesToolBar() { return mAttributesToolBar; }
00315 QToolBar *pluginToolBar() { return mPluginToolBar; }
00316 QToolBar *helpToolBar() { return mHelpToolBar; }
00317
00318 public slots:
00320 void zoomFull();
00322 void zoomToPrevious();
00324 void zoomToSelected();
00325
00327
00331 void editCut( QgsMapLayer * layerContainingSelection = 0 );
00333
00337 void editCopy( QgsMapLayer * layerContainingSelection = 0 );
00339
00343 void editPaste( QgsMapLayer * destinationLayer = 0 );
00344
00345 protected:
00346
00348 virtual void changeEvent( QEvent * event );
00350 virtual void closeEvent( QCloseEvent * event );
00351
00352 virtual void dragEnterEvent( QDragEnterEvent * event );
00353 virtual void dropEvent( QDropEvent * event );
00354
00356 virtual void keyPressEvent( QKeyEvent * event );
00357
00358 private slots:
00360 void about();
00362 void addRasterLayer();
00363
00365 void addDatabaseLayer();
00366
00368 void isInOverview();
00370 void showMouseCoordinate( QgsPoint & );
00372 void showScale( double theScale );
00374 void userScale();
00376 void removeLayer();
00378 void zoomToLayerExtent();
00380 void zoomActualSize();
00382 void restoreSessionPlugins( QString thePluginDirString );
00384 void showPluginManager();
00386 void loadPythonSupport();
00388 void loadPlugin( QString mFullPath, QString name );
00390 void loadPythonPlugin( QString packageName, QString pluginName );
00392 QMenu* getPluginMenu( QString menuName );
00394 void addPluginToMenu( QString name, QAction* action );
00396 void removePluginMenu( QString name, QAction* action );
00398 int addPluginToolBarIcon( QAction * qAction );
00400 void removePluginToolBarIcon( QAction *qAction );
00402 void saveWindowState();
00404 void restoreWindowState();
00406 bool fileSave();
00408 void fileSaveAs();
00411 void openProject( QAction *action );
00413 void saveMapAsImage();
00415 void fileOpen();
00417 void fileNew();
00419 void fileNew( bool thePromptToSaveFlag );
00421 void newVectorLayer();
00423 void filePrint();
00425 void addAllToOverview();
00427 void removeAllFromOverview();
00428
00429 void hideAllLayers();
00430
00431 void showAllLayers();
00432
00433
00434
00436
00437
00439 QgsMapLayer *activeLayer();
00441 void helpContents();
00443 void helpQgisHomePage();
00445 void openURL( QString url, bool useQgisDocDirectory = true );
00447 void checkQgisVersion();
00449 void customProjection();
00451 void options();
00453 void whatsThis();
00454 void socketConnected();
00455 void socketConnectionClosed();
00456 void socketReadyRead();
00457 void socketError( QAbstractSocket::SocketError e );
00459 void projectProperties();
00461 void projectPropertiesProjections();
00462
00464 void showBookmarks();
00466 void newBookmark();
00468 void capturePoint();
00470 void captureLine();
00472 void capturePolygon();
00474 void deleteSelected();
00476 void moveFeature();
00478 void splitFeatures();
00480 void addVertex();
00482 void moveVertex();
00484 void deleteVertex();
00486 void addRing();
00488 void addIsland();
00489
00491 void select();
00493 void refreshMapCanvas();
00495 QgsLegend *legend() { return mMapLegend; }
00496
00498 void toggleEditing();
00499
00501 void mapToolChanged( QgsMapTool *tool );
00502
00505 void activateDeactivateLayerRelatedActions( QgsMapLayer* layer );
00506
00507 void showProgress( int theProgress, int theTotalSteps );
00508 void extentsViewToggled( bool theFlag );
00509 void showExtents();
00510 void showStatusMessage( QString theMessage );
00511 void updateMouseCoordinatePrecision();
00512 void hasCrsTransformEnabled( bool theFlag );
00513 void destinationSrsChanged();
00514
00516 void addVectorLayer();
00518 void fileExit();
00520 void addWmsLayer();
00522 void zoomOut();
00524 void zoomIn();
00526 void pan();
00528 void identify();
00530 void measure();
00532 void measureArea();
00533
00535 void attributeTable();
00536
00538 void toggleEditing( QgsMapLayer *layer );
00539
00541 void saveAsShapefile();
00542 void saveSelectionAsShapefile();
00543
00545 void layerProperties();
00546
00548 void showPythonDialog();
00549
00551 void oldProjectVersionWarning( QString );
00552
00554 void toggleMapTips();
00555
00557 void showMapTip();
00558
00560 void toggleFullScreen();
00561
00563 void showActiveWindowMinimized();
00564
00566 void toggleActiveWindowMaximized();
00567
00569 void activate();
00570
00572 void bringAllToFront();
00573
00575 void stopRendering();
00576
00577 signals:
00580 void keyPressed( QKeyEvent *e );
00581
00588 void projectRead();
00597 void newProject();
00598
00600 void bookmarkAdded();
00601
00602 private:
00606 bool addRasterLayer( QgsRasterLayer * theRasterLayer );
00607
00609 bool isValidVectorFileName( QString theFileNameQString );
00611 bool isValidVectorFileName( QString * theFileNameQString );
00616 void saveRecentProjectPath( QString projectPath, QSettings & settings );
00618 void updateRecentProjectPaths();
00620
00622 void pasteTransformations();
00624 bool saveDirty();
00625
00627 QgisApp( QgisApp const & );
00629 QgisApp & operator=( QgisApp const & );
00630
00631 void readSettings();
00632 void writeSettings();
00633 void createActions();
00634 void createActionGroups();
00635 void createMenus();
00636 void createToolBars();
00637 void createStatusBar();
00638 void setupConnections();
00639 void createLegend();
00640 void createOverview();
00641 void createCanvas();
00642 bool createDB();
00643 void createMapTips();
00644
00645
00646 QToolBar *mFileToolBar;
00647 QToolBar *mLayerToolBar;
00648 QToolBar *mMapNavToolBar;
00649 QToolBar *mDigitizeToolBar;
00650 QToolBar *mAttributesToolBar;
00651 QToolBar *mPluginToolBar;
00652 QToolBar *mHelpToolBar;
00653
00654
00655
00656 QAction *mActionNewProject;
00657 QAction *mActionOpenProject;
00658 QAction *mActionFileSeparator1;
00659 QAction *mActionSaveProject;
00660 QAction *mActionSaveProjectAs;
00661 QAction *mActionSaveMapAsImage;
00662 QAction *mActionFileSeparator2;
00663 QAction *mActionProjectProperties;
00664 QAction *mActionFileSeparator3;
00665 QAction *mActionPrintComposer;
00666 QAction *mActionFileSeparator4;
00667 QAction *mActionExit;
00668
00669 QAction *mActionCutFeatures;
00670 QAction *mActionCopyFeatures;
00671 QAction *mActionPasteFeatures;
00672 QAction *mActionEditSeparator1;
00673 QAction *mActionCapturePoint;
00674 QAction *mActionCaptureLine;
00675 QAction *mActionCapturePolygon;
00676 QAction *mActionDeleteSelected;
00677 QAction *mActionMoveFeature;
00678 QAction *mActionSplitFeatures;
00679 QAction *mActionAddVertex;
00680 QAction *mActionDeleteVertex;
00681 QAction *mActionMoveVertex;
00682 QAction *mActionAddRing;
00683 QAction *mActionAddIsland;
00684 QAction *mActionEditSeparator2;
00685
00686 QAction *mActionPan;
00687 QAction *mActionZoomIn;
00688 QAction *mActionZoomOut;
00689 QAction *mActionSelect;
00690 QAction *mActionIdentify;
00691 QAction *mActionMeasure;
00692 QAction *mActionMeasureArea;
00693 QAction *mActionViewSeparator1;
00694 QAction *mActionZoomFullExtent;
00695 QAction *mActionZoomToLayer;
00696 QAction *mActionZoomToSelected;
00697 QAction *mActionZoomLast;
00698 QAction *mActionZoomActualSize;
00699 QAction *mActionViewSeparator2;
00700 QAction *mActionMapTips;
00701 QAction *mActionNewBookmark;
00702 QAction *mActionShowBookmarks;
00703 QAction *mActionDraw;
00704 QAction *mActionViewSeparator3;
00705
00706 QAction *mActionNewVectorLayer;
00707 QAction *mActionAddOgrLayer;
00708 QAction *mActionAddRasterLayer;
00709 QAction *mActionAddPgLayer;
00710 QAction *mActionAddWmsLayer;
00711 QAction *mActionLayerSeparator1;
00712 QAction *mActionOpenTable;
00713 QAction *mActionToggleEditing;
00714 QAction *mActionLayerSaveAs;
00715 QAction *mActionLayerSelectionSaveAs;
00716 QAction *mActionRemoveLayer;
00717 QAction *mActionLayerProperties;
00718 QAction *mActionLayerSeparator2;
00719 QAction *mActionAddToOverview;
00720 QAction *mActionAddAllToOverview;
00721 QAction *mActionRemoveAllFromOverview;
00722 QAction *mActionLayerSeparator3;
00723 QAction *mActionHideAllLayers;
00724 QAction *mActionShowAllLayers;
00725
00726 QAction *mActionManagePlugins;
00727 QAction *mActionPluginSeparator1;
00728 QAction *mActionPluginSeparator2;
00729 QAction *mActionShowPythonDialog;
00730
00731 QAction *mActionToggleFullScreen;
00732 QAction *mActionSettingsSeparator1;
00733 QAction *mActionOptions;
00734 QAction *mActionCustomProjection;
00735
00736 #ifdef Q_WS_MAC
00737 QAction *mActionWindowMinimize;
00738 QAction *mActionWindowZoom;
00739 QAction *mActionWindowSeparator1;
00740 QAction *mActionWindowAllToFront;
00741 QAction *mActionWindowSeparator2;
00742 QActionGroup *mWindowActions;
00743 #endif
00744
00745 QAction *mActionHelpContents;
00746 QAction *mActionHelpSeparator1;
00747 QAction *mActionQgisHomePage;
00748 QAction *mActionCheckQgisVersion;
00749 QAction *mActionHelpSeparator2;
00750 QAction *mActionAbout;
00751
00752
00753 QActionGroup *mMapToolGroup;
00754
00755
00756 QMenu *mFileMenu;
00757 QMenu *mEditMenu;
00758 QMenu *mRecentProjectsMenu;
00759 QMenu *mViewMenu;
00760 QMenu *mPanelMenu;
00761 QMenu *mToolbarMenu;
00762 QMenu *mLayerMenu;
00763 QMenu *mSettingsMenu;
00764 #ifdef Q_WS_MAC
00765 QMenu *mWindowMenu;
00766 #endif
00767 QMenu *mHelpMenu;
00768
00769
00770 QDockWidget *mLegendDock;
00771 QDockWidget *mOverviewDock;
00772
00773 #ifdef Q_WS_MAC
00775 QAction *mWindowAction;
00776 #endif
00777
00778 class Tools
00779 {
00780 public:
00781 QgsMapTool* mZoomIn;
00782 QgsMapTool* mZoomOut;
00783 QgsMapTool* mPan;
00784 QgsMapTool* mIdentify;
00785 QgsMapTool* mMeasureDist;
00786 QgsMapTool* mMeasureArea;
00787 QgsMapTool* mCapturePoint;
00788 QgsMapTool* mCaptureLine;
00789 QgsMapTool* mCapturePolygon;
00790 QgsMapTool* mMoveFeature;
00791 QgsMapTool* mSplitFeatures;
00792 QgsMapTool* mSelect;
00793 QgsMapTool* mVertexAdd;
00794 QgsMapTool* mVertexMove;
00795 QgsMapTool* mVertexDelete;
00796 QgsMapTool* mAddRing;
00797 QgsMapTool* mAddIsland;
00798 } mMapTools;
00799
00800 QgsMapTool *mNonEditMapTool;
00801
00803 QLabel * mScaleLabel;
00805 QLineEdit * mScaleEdit;
00807 QValidator * mScaleEditValidator;
00809 QLabel * mCoordsLabel;
00811 QProgressBar * mProgressBar;
00813 QCheckBox * mRenderSuppressionCBox;
00815 QToolButton * mToggleExtentsViewButton;
00817 QToolButton* mStopRenderButton;
00819 QToolButton * mOnTheFlyProjectionStatusButton;
00821 QMenu * mPopupMenu;
00823 QMenu *mPluginMenu;
00825 QMenu *toolPopupOverviews;
00827 QMenu *toolPopupDisplay;
00829 QMenu *toolPopupCapture;
00831 QgsMapCanvas *mMapCanvas;
00833 QgsLegend *mMapLegend;
00835 QCursor *mOverviewMapCursor;
00837 double mScaleFactor;
00839 QRect *mMapWindow;
00841 int mPreviousNonZoomMapTool;
00842
00843 QString mStartupPath;
00845 QString mFullPathName;
00846
00848 QgisAppInterface *mQgisInterface;
00849 friend class QgisAppInterface;
00850
00851 QTcpSocket *mSocket;
00852 QString mVersionMessage;
00853 QSplashScreen *mSplash;
00855 QgsHelpViewer *mHelpViewer;
00857 QStringList mRecentProjectPaths;
00859 QgsComposer *mComposer;
00862 bool mMousePrecisionAutomatic;
00864 unsigned int mMousePrecisionDecimalPlaces;
00866 QgsClipboard* mInternalClipboard;
00868 bool mShowProjectionTab;
00872 QString mVectorFileFilter;
00876 QString mRasterFileFilter;
00877
00880 QTimer *mpMapTipsTimer;
00881
00884 QgsPoint mLastMapPosition;
00885
00886
00887
00888 QgsMapTip * mpMaptip;
00889
00890
00891 bool mMapTipsVisible;
00892
00894 bool mFullScreenMode;
00895
00897 bool mPrevScreenModeMaximized;
00898
00899 QgsPythonDialog* mPythonConsole;
00900 QgsPythonUtils* mPythonUtils;
00901
00902 static QgisApp *smInstance;
00903 };
00904
00905 #endif