diff --git a/python/gui/qgisinterface.sip b/python/gui/qgisinterface.sip index 5c4f7ebe32c..31485a0f385 100644 --- a/python/gui/qgisinterface.sip +++ b/python/gui/qgisinterface.sip @@ -398,6 +398,10 @@ class QgisInterface : QObject * @note added in 1.9 */ virtual QList editableLayers( bool modified = false ) const = 0; + /** Get timeout for timed messages: default of 5 seconds + * @note added in 1.9 */ + virtual int messageTimeout() = 0; + signals: /** Emited whenever current (selected) layer changes. * The pointer to layer can be null if no layer is selected diff --git a/src/app/qgisapp.cpp b/src/app/qgisapp.cpp index c60699eba8c..215bebcbd51 100644 --- a/src/app/qgisapp.cpp +++ b/src/app/qgisapp.cpp @@ -488,7 +488,6 @@ QgisApp::QgisApp( QSplashScreen *splash, bool restorePlugins, QWidget * parent, mInfoBar = new QgsMessageBar( centralWidget ); mInfoBar->setSizePolicy( QSizePolicy::Minimum, QSizePolicy::Fixed ); centralLayout->addWidget( mInfoBar, 0, 0, 1, 1 ); - mMessageTimeout = settings.value( "/qgis/messageTimeout", 5 ).toInt(); //set the focus to the map canvas mMapCanvas->setFocus(); @@ -1218,6 +1217,12 @@ void QgisApp::setAppStyleSheet() } } +int QgisApp::messageTimeout() +{ + QSettings settings; + return settings.value( "/qgis/messageTimeout", 5 ).toInt(); +} + void QgisApp::createMenus() { /* diff --git a/src/app/qgisapp.h b/src/app/qgisapp.h index 58d547f15f8..9df93dbcfee 100644 --- a/src/app/qgisapp.h +++ b/src/app/qgisapp.h @@ -400,7 +400,7 @@ class QgisApp : public QMainWindow, private Ui::MainWindow /** Get timeout for timed messages: default of 5 seconds * @note added in 1.9 */ - int messageTimeout() { return mMessageTimeout; } + int messageTimeout(); #ifdef Q_OS_WIN //! ugly hack @@ -543,11 +543,6 @@ class QgisApp : public QMainWindow, private Ui::MainWindow //! layer selection changed void legendLayerSelectionChanged( void ); - /** Set timeout for timed messages - * @param t timeout in seconds - * @note added in 1.9 */ - void setMessageTimeout( int t ) { mMessageTimeout = t; } - //! Watch for QFileOpenEvent. virtual bool event( QEvent * event ); @@ -1342,9 +1337,6 @@ class QgisApp : public QMainWindow, private Ui::MainWindow QgsMessageBar *mInfoBar; QWidget *mMacrosWarn; - //! timeout for timed messages - int mMessageTimeout; - #ifdef HAVE_TOUCH bool gestureEvent( QGestureEvent *event ); void tapAndHoldTriggered( QTapAndHoldGesture *gesture ); diff --git a/src/app/qgisappinterface.cpp b/src/app/qgisappinterface.cpp index feeb51596c3..cd992f284b4 100644 --- a/src/app/qgisappinterface.cpp +++ b/src/app/qgisappinterface.cpp @@ -485,3 +485,8 @@ QList QgisAppInterface::editableLayers( bool modified ) const { return qgis->editableLayers( modified ); } + +int QgisAppInterface::messageTimeout() +{ + return qgis->messageTimeout(); +} diff --git a/src/app/qgisappinterface.h b/src/app/qgisappinterface.h index 83b0665cbd9..b7fe4bb4d0b 100644 --- a/src/app/qgisappinterface.h +++ b/src/app/qgisappinterface.h @@ -353,6 +353,10 @@ class QgisAppInterface : public QgisInterface * @note added in 1.9 */ virtual QList editableLayers( bool modified = false ) const; + /** Get timeout for timed messages: default of 5 seconds + * @note added in 1.9 */ + virtual int messageTimeout(); + signals: void currentThemeChanged( QString ); diff --git a/src/app/qgsoptions.cpp b/src/app/qgsoptions.cpp index 3728681f5d3..00b7d3cd581 100644 --- a/src/app/qgsoptions.cpp +++ b/src/app/qgsoptions.cpp @@ -1081,7 +1081,6 @@ void QgsOptions::saveOptions() QgisApp::instance()->setAppStyleSheet(); settings.setValue( "/qgis/messageTimeout", mMessageTimeoutSpnBx->value() ); - QgisApp::instance()->setMessageTimeout( mMessageTimeoutSpnBx->value() ); // rasters settings settings.setValue( "/Raster/defaultRedBand", spnRed->value() ); diff --git a/src/gui/qgisinterface.h b/src/gui/qgisinterface.h index 74de83e1e35..1b349942c8e 100644 --- a/src/gui/qgisinterface.h +++ b/src/gui/qgisinterface.h @@ -446,6 +446,10 @@ class GUI_EXPORT QgisInterface : public QObject * @note added in 1.9 */ virtual QList editableLayers( bool modified = false ) const = 0; + /** Get timeout for timed messages: default of 5 seconds + * @note added in 1.9 */ + virtual int messageTimeout() = 0; + signals: /** Emited whenever current (selected) layer changes. * The pointer to layer can be null if no layer is selected