gnome-terminal r2726 - trunk/src
- From: chpe svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-terminal r2726 - trunk/src
- Date: Thu, 29 May 2008 19:48:39 +0000 (UTC)
Author: chpe
Date: Thu May 29 19:48:39 2008
New Revision: 2726
URL: http://svn.gnome.org/viewvc/gnome-terminal?rev=2726&view=rev
Log:
Use the object/widget binding routine for the keybindings dialogue.
Modified:
trunk/src/terminal-accels.c
trunk/src/terminal-app.c
Modified: trunk/src/terminal-accels.c
==============================================================================
--- trunk/src/terminal-accels.c (original)
+++ trunk/src/terminal-accels.c Thu May 29 19:48:39 2008
@@ -221,8 +221,6 @@
static int inside_gconf_notify = 0;
static GtkWidget *edit_keys_dialog = NULL;
static GtkWidget *edit_keys_dialog_treeview = NULL;
-static GtkWidget *edit_keys_dialog_mnemonics_checkbutton = NULL;
-static GtkWidget *edit_keys_dialog_menu_accel_checkbutton = NULL;
void
terminal_accels_init (void)
@@ -440,71 +438,6 @@
}
}
-#if 0
-static void
-mnemonics_change_notify (GConfClient *client,
- guint cnxn_id,
- GConfEntry *entry,
- gpointer user_data)
-{
- GConfValue *val;
-
- val = gconf_entry_get_value (entry);
-
- if (strcmp (gconf_entry_get_key (entry),
- CONF_GLOBAL_PREFIX"/use_mnemonics") == 0)
- {
- if (val && val->type == GCONF_VALUE_BOOL)
- {
- if (using_mnemonics != gconf_value_get_bool (val))
- {
- using_mnemonics = !using_mnemonics;
-
- /* Reset the checkbuttons */
- if (edit_keys_dialog_mnemonics_checkbutton)
- {
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (edit_keys_dialog_mnemonics_checkbutton),
- !using_mnemonics);
- }
- }
- }
- }
-}
-
-static void
-menu_accels_change_notify (GConfClient *client,
- guint cnxn_id,
- GConfEntry *entry,
- gpointer user_data)
-{
- GConfValue *val;
-
- val = gconf_entry_get_value (entry);
-
- if (strcmp (gconf_entry_get_key (entry),
- CONF_GLOBAL_PREFIX"/use_menu_accelerators") == 0)
- {
- if (val && val->type == GCONF_VALUE_BOOL)
- {
- if (using_menu_accels != gconf_value_get_bool (val))
- {
- using_menu_accels = !using_menu_accels;
-
- /* Reset the checkbuttons */
- if (edit_keys_dialog_menu_accel_checkbutton)
- {
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (edit_keys_dialog_menu_accel_checkbutton),
- !using_menu_accels);
- }
-
- /* Reset the actual feature; super broken hack alert */
- update_menu_accel_state ();
- }
- }
- }
-}
-#endif
-
static gboolean
binding_from_string (const char *str,
guint *accelerator_key,
@@ -887,59 +820,10 @@
g_free (str);
}
-static void
-disable_mnemonics_toggled (GtkWidget *button,
- gpointer data)
-{
-#if 0
- gboolean active;
-
- active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button));
-
- /* I confused myself by making the visible button opposite
- * the gconf key
- */
- if (active != (!using_mnemonics))
- {
- GConfClient *conf;
-
- conf = gconf_client_get_default ();
- gconf_client_set_bool (conf,
- CONF_GLOBAL_PREFIX"/use_mnemonics",
- !active, NULL);
- g_object_unref (conf);
- }
-#endif
-}
-
-static void
-disable_menu_accels_toggled (GtkWidget *button,
- gpointer data)
-{
-#if 0
- gboolean active;
-
- active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button));
-
- /* I confused myself by making the visible button opposite
- * the gconf key
- */
- if (active != (!using_menu_accels))
- {
- GConfClient *conf;
-
- conf = gconf_client_get_default ();
- gconf_client_set_bool (conf,
- CONF_GLOBAL_PREFIX"/use_menu_accelerators",
- !active, NULL);
- g_object_unref (conf);
- }
-#endif
-}
-
void
terminal_edit_keys_dialog_show (GtkWindow *transient_parent)
{
+ TerminalApp *app;
GtkWidget *dialog, *tree_view, *disable_mnemonics_button, *disable_menu_accel_button;
GtkTreeViewColumn *column;
GtkCellRenderer *cell_renderer;
@@ -961,30 +845,12 @@
NULL))
return;
- edit_keys_dialog_mnemonics_checkbutton = disable_mnemonics_button;
- g_signal_connect (disable_mnemonics_button, "destroy",
- G_CALLBACK (gtk_widget_destroyed),
- &edit_keys_dialog_mnemonics_checkbutton);
-
-#if 0
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (disable_mnemonics_button), !using_mnemonics);
-#endif
- g_signal_connect (disable_mnemonics_button, "toggled",
- G_CALLBACK (disable_mnemonics_toggled),
- NULL);
-
- edit_keys_dialog_menu_accel_checkbutton = disable_menu_accel_button;
- g_signal_connect (disable_menu_accel_button, "destroy",
- G_CALLBACK (gtk_widget_destroyed),
- &edit_keys_dialog_menu_accel_checkbutton);
+ app = terminal_app_get ();
+ terminal_util_bind_object_property_to_widget (G_OBJECT (app), TERMINAL_APP_ENABLE_MNEMONICS,
+ disable_mnemonics_button, FLAG_INVERT_BOOL);
+ terminal_util_bind_object_property_to_widget (G_OBJECT (app), TERMINAL_APP_ENABLE_MENU_ACCELS,
+ disable_menu_accel_button, FLAG_INVERT_BOOL);
-#if 0
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (disable_menu_accel_button), !using_menu_accels);
-#endif
- g_signal_connect (disable_menu_accel_button, "toggled",
- G_CALLBACK (disable_menu_accels_toggled),
- NULL);
-
edit_keys_dialog_treeview = tree_view;
g_signal_connect (tree_view, "destroy",
G_CALLBACK (gtk_widget_destroyed),
Modified: trunk/src/terminal-app.c
==============================================================================
--- trunk/src/terminal-app.c (original)
+++ trunk/src/terminal-app.c Thu May 29 19:48:39 2008
@@ -938,6 +938,7 @@
{
TerminalApp *app = TERMINAL_APP (user_data);
GConfValue *gconf_value;
+ gboolean enable;
if (strcmp (gconf_entry_get_key (entry), ENABLE_MNEMONICS_KEY) != 0)
return;
@@ -946,7 +947,11 @@
if (!gconf_value || gconf_value->type != GCONF_VALUE_BOOL)
return;
- app->enable_mnemonics = gconf_value_get_bool (gconf_value);
+ enable = gconf_value_get_bool (gconf_value);
+ if (enable == app->enable_mnemonics)
+ return;
+
+ app->enable_mnemonics = enable;
g_object_notify (G_OBJECT (app), TERMINAL_APP_ENABLE_MNEMONICS);
}
@@ -958,6 +963,7 @@
{
TerminalApp *app = TERMINAL_APP (user_data);
GConfValue *gconf_value;
+ gboolean enable;
if (strcmp (gconf_entry_get_key (entry), ENABLE_MENU_ACCELS_KEY) != 0)
return;
@@ -966,7 +972,11 @@
if (!gconf_value || gconf_value->type != GCONF_VALUE_BOOL)
return;
- app->enable_menu_accels = gconf_value_get_bool (gconf_value);
+ enable = gconf_value_get_bool (gconf_value);
+ if (enable == app->enable_menu_accels)
+ return;
+
+ app->enable_menu_accels = enable;
g_object_notify (G_OBJECT (app), TERMINAL_APP_ENABLE_MENU_ACCELS);
}
@@ -1538,9 +1548,9 @@
static void
terminal_app_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
{
TerminalApp *app = TERMINAL_APP (object);
@@ -1568,12 +1578,40 @@
}
static void
+terminal_app_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ TerminalApp *app = TERMINAL_APP (object);
+
+ switch (prop_id)
+ {
+ case PROP_ENABLE_MENU_ACCELS:
+ app->enable_menu_accels = g_value_get_boolean (value);
+ gconf_client_set_bool (app->conf, ENABLE_MENU_ACCELS_KEY, app->enable_menu_accels, NULL);
+ break;
+ case PROP_ENABLE_MNEMONICS:
+ app->enable_mnemonics = g_value_get_boolean (value);
+ gconf_client_set_bool (app->conf, ENABLE_MNEMONICS_KEY, app->enable_mnemonics, NULL);
+ break;
+ case PROP_DEFAULT_PROFILE:
+ case PROP_SYSTEM_FONT:
+ /* not writable */
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
terminal_app_class_init (TerminalAppClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->finalize = terminal_app_finalize;
object_class->get_property = terminal_app_get_property;
+ object_class->set_property = terminal_app_set_property;
signals[QUIT] =
g_signal_new (I_("quit"),
@@ -1598,14 +1636,14 @@
PROP_ENABLE_MENU_ACCELS,
g_param_spec_boolean (TERMINAL_APP_ENABLE_MENU_ACCELS, NULL, NULL,
DEFAULT_ENABLE_MENU_ACCELS,
- G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
+ G_PARAM_READWRITE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
g_object_class_install_property
(object_class,
PROP_ENABLE_MNEMONICS,
g_param_spec_boolean (TERMINAL_APP_ENABLE_MNEMONICS, NULL, NULL,
DEFAULT_ENABLE_MNEMONICS,
- G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
+ G_PARAM_READWRITE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
g_object_class_install_property
(object_class,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]