Skip to content

Commit

Permalink
[addlayerbutton] Data Source Manager toolbar and menu
Browse files Browse the repository at this point in the history
This implements the proposal from @srneto:

- new toolbar with the new dialog button and
  all the "new" data soource buttons
- old layer toolbar hidden by default
- new dialog open from first item in layer menu
  • Loading branch information
elpaso committed Jun 2, 2017
1 parent e761395 commit 23ae508
Show file tree
Hide file tree
Showing 6 changed files with 160 additions and 84 deletions.
31 changes: 18 additions & 13 deletions scripts/mkuidefaults.py
Expand Up @@ -37,35 +37,40 @@ def chunks(l, n):


s = QSettings() s = QSettings()


ba = s.value("/UI/geometry").toByteArray() ba = bytes(s.value("/UI/geometry"))


f = open("src/app/ui_defaults.h", "w") f = open("src/app/ui_defaults.h", "w")


f.write("#ifndef UI_DEFAULTS_H\n#define UI_DEFAULTS_H\n\nstatic const unsigned char defaultUIgeometry[] =\n{\n") f.write("#ifndef UI_DEFAULTS_H\n#define UI_DEFAULTS_H\n\nstatic const unsigned char defaultUIgeometry[] =\n{\n")


for chunk in chunks(ba, 16): for chunk in chunks(ba, 16):
f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % ord(x), chunk))) f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % x, chunk)))


f.write("};\n\nstatic const unsigned char defaultUIstate[] =\n{\n") f.write("};\n\nstatic const unsigned char defaultUIstate[] =\n{\n")


ba = s.value("/UI/state").toByteArray() ba = bytes(s.value("/UI/state"))


for chunk in chunks(ba, 16): for chunk in chunks(ba, 16):
f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % ord(x), chunk))) f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % x, chunk)))


ba = s.value("/Composer/geometry").toByteArray() try:
ba = bytes(s.value("/Composer/geometry"))


f.write("};\n\nstatic const unsigned char defaultComposerUIgeometry[] =\n{\n") f.write("};\n\nstatic const unsigned char defaultComposerUIgeometry[] =\n{\n")


for chunk in chunks(ba, 16): for chunk in chunks(ba, 16):
f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % ord(x), chunk))) f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % x, chunk)))

except TypeError as ex:
f.write("};\n\nstatic const unsigned char defaultComposerUIstate[] =\n{\n") pass


ba = s.value("/ComposerUI/state").toByteArray() try:
ba = bytes(s.value("/ComposerUI/state"))
f.write("};\n\nstatic const unsigned char defaultComposerUIstate[] =\n{\n")


for chunk in chunks(ba, 16): for chunk in chunks(ba, 16):
f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % ord(x), chunk))) f.write(" %s,\n" % ", ".join(map(lambda x: "0x%02x" % x, chunk)))
except TypeError as ex:
pass


f.write("};\n\n#endif // UI_DEFAULTS_H\n") f.write("};\n\n#endif // UI_DEFAULTS_H\n")


Expand Down
2 changes: 2 additions & 0 deletions src/app/qgisapp.cpp
Expand Up @@ -2239,6 +2239,7 @@ void QgisApp::createToolBars()


QList<QToolBar *> toolbarMenuToolBars; QList<QToolBar *> toolbarMenuToolBars;
toolbarMenuToolBars << mFileToolBar toolbarMenuToolBars << mFileToolBar
<< mDataSourceManagerToolBar
<< mLayerToolBar << mLayerToolBar
<< mDigitizeToolBar << mDigitizeToolBar
<< mAdvancedDigitizeToolBar << mAdvancedDigitizeToolBar
Expand Down Expand Up @@ -2703,6 +2704,7 @@ void QgisApp::createStatusBar()
actionObjects << menuBar() actionObjects << menuBar()
<< mAdvancedDigitizeToolBar << mAdvancedDigitizeToolBar
<< mFileToolBar << mFileToolBar
<< mDataSourceManagerToolBar
<< mLayerToolBar << mLayerToolBar
<< mDigitizeToolBar << mDigitizeToolBar
<< mMapNavToolBar << mMapNavToolBar
Expand Down
1 change: 1 addition & 0 deletions src/app/qgisapp.h
Expand Up @@ -522,6 +522,7 @@ class APP_EXPORT QgisApp : public QMainWindow, private Ui::MainWindow
*/ */
QToolBar *fileToolBar() { return mFileToolBar; } QToolBar *fileToolBar() { return mFileToolBar; }
QToolBar *layerToolBar() { return mLayerToolBar; } QToolBar *layerToolBar() { return mLayerToolBar; }
QToolBar *dataSourceManagerToolBar() { return mDataSourceManagerToolBar; }
QToolBar *mapNavToolToolBar() { return mMapNavToolBar; } QToolBar *mapNavToolToolBar() { return mMapNavToolBar; }
QToolBar *digitizeToolBar() { return mDigitizeToolBar; } QToolBar *digitizeToolBar() { return mDigitizeToolBar; }
QToolBar *advancedDigitizeToolBar() { return mAdvancedDigitizeToolBar; } QToolBar *advancedDigitizeToolBar() { return mAdvancedDigitizeToolBar; }
Expand Down
4 changes: 4 additions & 0 deletions src/app/qgsdatasourcemanagerdialog.cpp
Expand Up @@ -72,6 +72,10 @@ QgsDataSourceManagerDialog::QgsDataSourceManagerDialog( QgsMapCanvas *mapCanvas,
addDbProviderDialog( QStringLiteral( "postgres" ), tr( "PostgreSQL" ), QStringLiteral( "/mActionAddPostgisLayer.svg" ) ); addDbProviderDialog( QStringLiteral( "postgres" ), tr( "PostgreSQL" ), QStringLiteral( "/mActionAddPostgisLayer.svg" ) );
#endif #endif


#ifdef HAVE_ORACLE
addDbProviderDialog( QStringLiteral( "oracle" ), tr( "Oracle" ), QStringLiteral( "/mActionAddOracleLayer.svg" ) );
#endif

addDbProviderDialog( QStringLiteral( "spatialite" ), tr( "Spatialite" ), QStringLiteral( "/mActionAddSpatiaLiteLayer.svg" ) ); addDbProviderDialog( QStringLiteral( "spatialite" ), tr( "Spatialite" ), QStringLiteral( "/mActionAddSpatiaLiteLayer.svg" ) );


addDbProviderDialog( QStringLiteral( "mssql" ), tr( "MSSQL" ), QStringLiteral( "/mActionAddMssqlLayer.svg" ) ); addDbProviderDialog( QStringLiteral( "mssql" ), tr( "MSSQL" ), QStringLiteral( "/mActionAddMssqlLayer.svg" ) );
Expand Down

0 comments on commit 23ae508

Please sign in to comment.