From aa4e04a76a2a7c68aa2965410bc104fdb667f4d5 Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Mon, 9 Dec 2019 13:39:15 -0300 Subject: [PATCH] Splitting UI settings based on OS. Toolbar is now configurable. --- Makefile.in | 4 ++-- configure.ac | 5 ++++- pw3270.cbp | 1 + schemas/application.gschema.xml.in | 79 ------------------------------------------------------------------------------- schemas/linux/application.gschema.xml.in | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ schemas/windows/application.gschema.xml.in | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/objects/toolbar/toolbar.c | 2 ++ src/objects/window/window.c | 4 ---- 8 files changed, 167 insertions(+), 86 deletions(-) delete mode 100644 schemas/application.gschema.xml.in create mode 100644 schemas/linux/application.gschema.xml.in create mode 100644 schemas/windows/application.gschema.xml.in diff --git a/Makefile.in b/Makefile.in index fa3f59d..b4e45d4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -134,11 +134,11 @@ $(OBJDBG)/%.o: \ @$(WINDRES) $< -O coff -o $@ gschemas.compiled: \ - schemas/*.gschema.xml + schemas/@OSNAME@/*.gschema.xml @glib-compile-schemas \ --targetdir=$(@D) \ - $(BASEDIR)/schemas + $(BASEDIR)/schemas/@OSNAME@ #---[ Release Rules ]-------------------------------------------------------------------- diff --git a/configure.ac b/configure.ac index f49c807..5beed63 100644 --- a/configure.ac +++ b/configure.ac @@ -79,6 +79,8 @@ case "$host" in AC_SUBST(WIN32_FILE_VERSION,$app_win32_file_version) AC_CONFIG_FILES(src/main/windows/resources.rc) + AC_CONFIG_FILES(schemas/windows/application.gschema.xml) + ;; *) @@ -90,6 +92,8 @@ case "$host" in INSTALL_PACKAGES="linux-lib ${INSTALL_PACKAGES}" app_cv_static='no' + AC_CONFIG_FILES(schemas/linux/application.gschema.xml) + esac @@ -194,7 +198,6 @@ dnl --------------------------------------------------------------------------- AC_SUBST(INSTALL_PACKAGES) AC_CONFIG_FILES(Makefile) -AC_CONFIG_FILES(schemas/application.gschema.xml) dnl --------------------------------------------------------------------------- dnl Output the generated config.status script. diff --git a/pw3270.cbp b/pw3270.cbp index 963918b..4f1d510 100644 --- a/pw3270.cbp +++ b/pw3270.cbp @@ -42,6 +42,7 @@ + diff --git a/schemas/application.gschema.xml.in b/schemas/application.gschema.xml.in deleted file mode 100644 index ec244a8..0000000 --- a/schemas/application.gschema.xml.in +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - 1 - UI Style - The ID of the current user interface style - - - - true - Enable top window subtitle - If TRUE, reserve space for a subtitle, even if none is currently set. - - - - -1 - How to draw the toolbar. - - - - - 0 - The size of the icons in a toolbar - - - - - true - The toolbar visible state - - - - - true - The menubar visible state - - - - - 'win.copy,win.paste,win.select-all,separator,win.connect,win.disconnect,separator,win.session.properties,win.file.transfer,win.print,app.quit' - The toolbar action list - - - - - - diff --git a/schemas/linux/application.gschema.xml.in b/schemas/linux/application.gschema.xml.in new file mode 100644 index 0000000..ec244a8 --- /dev/null +++ b/schemas/linux/application.gschema.xml.in @@ -0,0 +1,79 @@ + + + + + + + + + 1 + UI Style + The ID of the current user interface style + + + + true + Enable top window subtitle + If TRUE, reserve space for a subtitle, even if none is currently set. + + + + -1 + How to draw the toolbar. + + + + + 0 + The size of the icons in a toolbar + + + + + true + The toolbar visible state + + + + + true + The menubar visible state + + + + + 'win.copy,win.paste,win.select-all,separator,win.connect,win.disconnect,separator,win.session.properties,win.file.transfer,win.print,app.quit' + The toolbar action list + + + + + + diff --git a/schemas/windows/application.gschema.xml.in b/schemas/windows/application.gschema.xml.in new file mode 100644 index 0000000..ec244a8 --- /dev/null +++ b/schemas/windows/application.gschema.xml.in @@ -0,0 +1,79 @@ + + + + + + + + + 1 + UI Style + The ID of the current user interface style + + + + true + Enable top window subtitle + If TRUE, reserve space for a subtitle, even if none is currently set. + + + + -1 + How to draw the toolbar. + + + + + 0 + The size of the icons in a toolbar + + + + + true + The toolbar visible state + + + + + true + The menubar visible state + + + + + 'win.copy,win.paste,win.select-all,separator,win.connect,win.disconnect,separator,win.session.properties,win.file.transfer,win.print,app.quit' + The toolbar action list + + + + + + diff --git a/src/objects/toolbar/toolbar.c b/src/objects/toolbar/toolbar.c index c218ecb..525c76b 100644 --- a/src/objects/toolbar/toolbar.c +++ b/src/objects/toolbar/toolbar.c @@ -400,6 +400,8 @@ g_strfreev(actions); + g_object_notify(G_OBJECT(toolbar), "action-names"); + } gchar * pw3270_toolbar_get_actions(GtkWidget *toolbar) { diff --git a/src/objects/window/window.c b/src/objects/window/window.c index 6f33e7a..396045e 100644 --- a/src/objects/window/window.c +++ b/src/objects/window/window.c @@ -185,8 +185,6 @@ g_autoptr(GSettings) settings = pw3270_application_get_settings(G_APPLICATION(application)); - debug("*************** settings=%p",settings); - g_return_val_if_fail(GTK_IS_APPLICATION(application), NULL); pw3270ApplicationWindow * window = g_object_new( @@ -262,8 +260,6 @@ } // Setup and show main window - //gtk_application_window_set_show_menubar(GTK_APPLICATION_WINDOW(window),TRUE); - g_settings_bind( settings, "menubar-visible", -- libgit2 0.21.2