Skip to content

Commit 6b95072

Browse files
author
jef
committed
[FEATURE] layer menu function
- deprecated QgisInterface separator methods - add addAddLayer/removeAddLayer methods to QgisInterface to add entries to the layer menu - port plugins to use it git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@15461 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent 4bcb1a1 commit 6b95072

File tree

11 files changed

+187
-55
lines changed

11 files changed

+187
-55
lines changed

python/gui/qgisinterface.sip

+41-26
Original file line numberDiff line numberDiff line change
@@ -95,17 +95,33 @@ class QgisInterface : QObject
9595
/** Remove action from the plugins menu */
9696
virtual void removePluginMenu(QString name, QAction* action)=0;
9797

98+
/** Add "add layer" action to the layer menu
99+
* @note added in 1.7
100+
*/
101+
virtual void addAddLayer( QAction* action )=0;
102+
103+
/** Remove "add layer" action from the layer menu
104+
* @note added in 1.7
105+
*/
106+
virtual void removeAddLayer( QAction* action )=0;
107+
98108
/** Add action to the Database menu
99-
@note added in version 1.7 */
109+
* @note added in 1.7
110+
*/
100111
virtual void addPluginToDatabaseMenu(QString name, QAction* action)=0;
101-
/** Remove action from the Database menu */
112+
113+
/** Remove action from the Database menu
114+
* @note added in 1.7
115+
*/
102116
virtual void removePluginDatabaseMenu(QString name, QAction* action)=0;
103117

104118
/** Add a dock widget to the main window
105-
@note added in version 1.7 */
119+
@note added in 1.7 */
106120
virtual void addDockWidget ( Qt::DockWidgetArea area, QDockWidget * dockwidget )=0;
107121

108-
/** Remove specified dock widget from main window (doesn't delete it). Added in QGIS 1.1. */
122+
/** Remove specified dock widget from main window (doesn't delete it).
123+
* @note added in 1.1
124+
*/
109125
virtual void removeDockWidget ( QDockWidget * dockwidget )=0;
110126

111127
/** refresh legend of a layer
@@ -168,38 +184,38 @@ class QgisInterface : QObject
168184
//! File menu actions
169185
virtual QAction *actionNewProject() = 0;
170186
virtual QAction *actionOpenProject() = 0;
171-
virtual QAction *actionFileSeparator1() = 0;
187+
virtual QAction *actionFileSeparator1() = 0 /Deprecated/;
172188
virtual QAction *actionSaveProject() = 0;
173189
virtual QAction *actionSaveProjectAs() = 0;
174190
virtual QAction *actionSaveMapAsImage() = 0;
175-
virtual QAction *actionFileSeparator2() = 0;
191+
virtual QAction *actionFileSeparator2() = 0 /Deprecated/;
176192
virtual QAction *actionProjectProperties() = 0;
177-
virtual QAction *actionFileSeparator3() = 0;
193+
virtual QAction *actionFileSeparator3() = 0 /Deprecated/;
178194
virtual QAction *actionPrintComposer() = 0;
179-
virtual QAction *actionFileSeparator4() = 0;
195+
virtual QAction *actionFileSeparator4() = 0 /Deprecated/;
180196
virtual QAction *actionExit() = 0;
181197

182198
//! Edit menu actions
183199
virtual QAction *actionCutFeatures() = 0;
184200
virtual QAction *actionCopyFeatures() = 0;
185201
virtual QAction *actionPasteFeatures() = 0;
186-
virtual QAction *actionEditSeparator1() = 0;
202+
virtual QAction *actionEditSeparator1() = 0 /Deprecated/;
187203
virtual QAction *actionCapturePoint() = 0;
188204
virtual QAction *actionCaptureLine() = 0;
189205
virtual QAction *actionCapturePolygon() = 0;
190206
virtual QAction *actionDeleteSelected() = 0;
191207
virtual QAction *actionMoveFeature() = 0;
192208
virtual QAction *actionSplitFeatures() = 0;
193-
virtual QAction *actionAddVertex() = 0;
194-
virtual QAction *actionDeleteVertex() = 0;
195-
virtual QAction *actionMoveVertex() = 0;
209+
virtual QAction *actionAddVertex() = 0 /Deprecated/;
210+
virtual QAction *actionDeleteVertex() = 0 /Deprecated/;
211+
virtual QAction *actionMoveVertex() = 0 /Deprecated/;
196212
virtual QAction *actionAddRing() = 0;
197213
virtual QAction *actionAddIsland() = 0;
198214
virtual QAction *actionSimplifyFeature() = 0;
199215
virtual QAction *actionDeleteRing() = 0;
200216
virtual QAction *actionDeletePart() = 0;
201217
virtual QAction *actionNodeTool() = 0;
202-
virtual QAction *actionEditSeparator2() = 0;
218+
virtual QAction *actionEditSeparator2() = 0 /Deprecated/;
203219

204220
//! View menu actions
205221
virtual QAction *actionPan() = 0;
@@ -213,60 +229,60 @@ class QgisInterface : QObject
213229
virtual QAction *actionIdentify() = 0;
214230
virtual QAction *actionMeasure() = 0;
215231
virtual QAction *actionMeasureArea() = 0;
216-
virtual QAction *actionViewSeparator1() = 0;
232+
virtual QAction *actionViewSeparator1() = 0 /Deprecated/;
217233
virtual QAction *actionZoomFullExtent() = 0;
218234
virtual QAction *actionZoomToLayer() = 0;
219235
virtual QAction *actionZoomToSelected() = 0;
220236
virtual QAction *actionZoomLast() = 0;
221237
virtual QAction *actionZoomActualSize() = 0;
222-
virtual QAction *actionViewSeparator2() = 0;
238+
virtual QAction *actionViewSeparator2() = 0 /Deprecated/;
223239
virtual QAction *actionMapTips() = 0;
224240
virtual QAction *actionNewBookmark() = 0;
225241
virtual QAction *actionShowBookmarks() = 0;
226242
virtual QAction *actionDraw() = 0;
227-
virtual QAction *actionViewSeparator3() = 0;
243+
virtual QAction *actionViewSeparator3() = 0 /Deprecated/;
228244

229245
//! Layer menu actions
230246
virtual QAction *actionNewVectorLayer() = 0;
231247
virtual QAction *actionAddOgrLayer() = 0;
232248
virtual QAction *actionAddRasterLayer() = 0;
233249
virtual QAction *actionAddPgLayer() = 0;
234250
virtual QAction *actionAddWmsLayer() = 0;
235-
virtual QAction *actionLayerSeparator1() = 0;
251+
virtual QAction *actionLayerSeparator1() = 0 /Deprecated/;
236252
virtual QAction *actionOpenTable() = 0;
237253
virtual QAction *actionToggleEditing() = 0;
238254
virtual QAction *actionLayerSaveAs() = 0;
239255
virtual QAction *actionLayerSelectionSaveAs() = 0;
240256
virtual QAction *actionRemoveLayer() = 0;
241257
virtual QAction *actionLayerProperties() = 0;
242-
virtual QAction *actionLayerSeparator2() = 0;
258+
virtual QAction *actionLayerSeparator2() = 0 /Deprecated/;
243259
virtual QAction *actionAddToOverview() = 0;
244260
virtual QAction *actionAddAllToOverview() = 0;
245261
virtual QAction *actionRemoveAllFromOverview() = 0;
246-
virtual QAction *actionLayerSeparator3() = 0;
262+
virtual QAction *actionLayerSeparator3() = 0 /Deprecated/;
247263
virtual QAction *actionHideAllLayers() = 0;
248264
virtual QAction *actionShowAllLayers() = 0;
249265

250266
//! Plugin menu actions
251267
virtual QAction *actionManagePlugins() = 0;
252-
virtual QAction *actionPluginSeparator1() = 0;
268+
virtual QAction *actionPluginSeparator1() = 0 /Deprecated/;
253269
virtual QAction *actionPluginListSeparator() = 0;
254-
virtual QAction *actionPluginSeparator2() = 0;
255-
virtual QAction *actionPluginPythonSeparator() = 0;
270+
virtual QAction *actionPluginSeparator2() = 0 /Deprecated/;
271+
virtual QAction *actionPluginPythonSeparator() = 0 /Deprecated/;
256272
virtual QAction *actionShowPythonDialog() = 0;
257273

258274
//! Settings menu actions
259275
virtual QAction *actionToggleFullScreen() = 0;
260-
virtual QAction *actionSettingsSeparator1() = 0;
276+
virtual QAction *actionSettingsSeparator1() = 0 /Deprecated/;
261277
virtual QAction *actionOptions() = 0;
262278
virtual QAction *actionCustomProjection() = 0;
263279

264280
//! Help menu actions
265281
virtual QAction *actionHelpContents() = 0;
266-
virtual QAction *actionHelpSeparator1() = 0;
282+
virtual QAction *actionHelpSeparator1() = 0 /Deprecated/;
267283
virtual QAction *actionQgisHomePage() = 0;
268284
virtual QAction *actionCheckQgisVersion() = 0;
269-
virtual QAction *actionHelpSeparator2() = 0;
285+
virtual QAction *actionHelpSeparator2() = 0 /Deprecated/;
270286
virtual QAction *actionAbout() = 0;
271287

272288
//! open feature form
@@ -312,4 +328,3 @@ class QgisInterface : QObject
312328
*/
313329
void newProjectCreated();
314330
};
315-

src/app/qgisapp.cpp

+11-1
Original file line numberDiff line numberDiff line change
@@ -4862,7 +4862,7 @@ void QgisApp::fullHistogramStretch()
48624862
}
48634863
if ( rlayer->providerKey() == "wms" )
48644864
{
4865-
return;
4865+
return;
48664866
}
48674867
if ( rlayer->drawingStyle() == QgsRasterLayer::SingleBandGray ||
48684868
rlayer->drawingStyle() == QgsRasterLayer::MultiBandSingleBandGray ||
@@ -5299,6 +5299,16 @@ QMenu* QgisApp::getDatabaseMenu( QString menuName )
52995299
return menu;
53005300
}
53015301

5302+
void QgisApp::addAddLayer( QAction *action )
5303+
{
5304+
mLayerMenu->insertAction( mActionAddLayerSeparator, action );
5305+
}
5306+
5307+
void QgisApp::removeAddLayer( QAction *action )
5308+
{
5309+
mLayerMenu->removeAction( action );
5310+
}
5311+
53025312
void QgisApp::addPluginToDatabaseMenu( QString name, QAction* action )
53035313
{
53045314
QMenu* menu = getDatabaseMenu( name );

src/app/qgisapp.h

+5-1
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ class QgisApp : public QMainWindow, private Ui::MainWindow
493493
void zoomToLayerExtent();
494494
//! zoom to actual size of raster layer
495495
void zoomActualSize();
496-
/** Perform a local histogram stretch on the active raster layer
496+
/** Perform a local histogram stretch on the active raster layer
497497
* (stretch based on pixel values in view extent).
498498
* Valid for non wms raster layers only.
499499
* @note Added in QGIS 1.7 */
@@ -519,6 +519,10 @@ class QgisApp : public QMainWindow, private Ui::MainWindow
519519
void addPluginToDatabaseMenu( QString name, QAction* action );
520520
//! Remove the action to the submenu with the given name under the Database menu
521521
void removePluginDatabaseMenu( QString name, QAction* action );
522+
//! Add "add layer" action to layer menu
523+
void addAddLayer( QAction* action );
524+
//! Remove "add layer" action to layer menu
525+
void removeAddLayer( QAction* action );
522526
//! Add an icon to the plugin toolbar
523527
int addPluginToolBarIcon( QAction * qAction );
524528
//! Remove an icon from the plugin toolbar

src/app/qgisappinterface.cpp

+10
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,16 @@ void QgisAppInterface::addPluginToMenu( QString name, QAction* action )
140140
qgis->addPluginToMenu( name, action );
141141
}
142142

143+
void QgisAppInterface::addAddLayer( QAction *action )
144+
{
145+
qgis->addAddLayer( action );
146+
}
147+
148+
void QgisAppInterface::removeAddLayer( QAction *action )
149+
{
150+
qgis->removeAddLayer( action );
151+
}
152+
143153
void QgisAppInterface::removePluginMenu( QString name, QAction* action )
144154
{
145155
qgis->removePluginMenu( name, action );

src/app/qgisappinterface.h

+5
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,11 @@ class QgisAppInterface : public QgisInterface
117117
/** Remove action from the Database menu */
118118
void removePluginDatabaseMenu( QString name, QAction* action );
119119

120+
/** Add "add layer" action to the layer menu */
121+
void addAddLayer( QAction *action );
122+
/** remove "add layer" action from the layer menu */
123+
void removeAddLayer( QAction *action );
124+
120125
/** Add a dock widget to the main window */
121126
void addDockWidget( Qt::DockWidgetArea area, QDockWidget * dockwidget );
122127

0 commit comments

Comments
 (0)