diff options
author | Jonathan Blandford <jrb@gnome.org> | 2004-06-22 01:50:50 +0000 |
---|---|---|
committer | Jonathan Blandford <jrb@src.gnome.org> | 2004-06-22 01:50:50 +0000 |
commit | 21dab40205f6263113c075ba23ea6d8c33170315 (patch) | |
tree | 188b084f54ed8d5694bb15d47f3bf1ce8665cdc8 /libwindow-settings | |
parent | fbd55c22a8a2530a85c4565841beb1e7532a7700 (diff) | |
download | gnome-control-center-21dab40205f6263113c075ba23ea6d8c33170315.tar.gz |
Set the radio group to be inconsistent if no matching modifier is found.
Mon Jun 21 15:52:57 2004 Jonathan Blandford <jrb@gnome.org>
* gnome-window-properties.c (set_alt_click_value): Set the radio
group to be inconsistent if no matching modifier is found.
* gnome-window-properties.c (reload_settings): Check for NULL,
141453
Mon Jun 21 17:41:23 2004 Jonathan Blandford <jrb@gnome.org>
* gnome-window-manager.c (gnome_wm_settings_copy|free): add copy
and free functions for the WM settings.
Diffstat (limited to 'libwindow-settings')
-rw-r--r-- | libwindow-settings/ChangeLog | 5 | ||||
-rw-r--r-- | libwindow-settings/gnome-window-manager.c | 37 | ||||
-rw-r--r-- | libwindow-settings/gnome-window-manager.h | 3 |
3 files changed, 45 insertions, 0 deletions
diff --git a/libwindow-settings/ChangeLog b/libwindow-settings/ChangeLog index 7724976c3..1f5239b74 100644 --- a/libwindow-settings/ChangeLog +++ b/libwindow-settings/ChangeLog @@ -1,3 +1,8 @@ +Mon Jun 21 17:41:23 2004 Jonathan Blandford <jrb@gnome.org> + + * gnome-window-manager.c (gnome_wm_settings_copy|free): add copy + and free functions for the WM settings. + 2004-04-15 Jody Goldberg <jody@gnome.org> * Release 2.6.1 diff --git a/libwindow-settings/gnome-window-manager.c b/libwindow-settings/gnome-window-manager.c index 840e1e976..4240c86e9 100644 --- a/libwindow-settings/gnome-window-manager.c +++ b/libwindow-settings/gnome-window-manager.c @@ -236,3 +236,40 @@ gnome_window_manager_settings_changed (GnomeWindowManager *wm) { g_signal_emit (wm, signals[SETTINGS_CHANGED], 0); } + +/* Helper functions for GnomeWMSettings */ +GnomeWMSettings * +gnome_wm_settings_copy (GnomeWMSettings *settings) +{ + GnomeWMSettings *retval; + + g_return_val_if_fail (settings != NULL, NULL); + + retval = g_new (GnomeWMSettings, 1); + *retval = *settings; + + if (retval->flags & GNOME_WM_SETTING_FONT) + retval->font = g_strdup (retval->font); + if (retval->flags & GNOME_WM_SETTING_MOUSE_MOVE_MODIFIER) + retval->mouse_move_modifier = g_strdup (retval->mouse_move_modifier); + if (retval->flags & GNOME_WM_SETTING_THEME) + retval->theme = g_strdup (retval->theme); + + return retval; +} + +void +gnome_wm_settings_free (GnomeWMSettings *settings) +{ + g_return_if_fail (settings != NULL); + + if (settings->flags & GNOME_WM_SETTING_FONT) + g_free ((void *) settings->font); + if (settings->flags & GNOME_WM_SETTING_MOUSE_MOVE_MODIFIER) + g_free ((void *) settings->mouse_move_modifier); + if (settings->flags & GNOME_WM_SETTING_THEME) + g_free ((void *)settings->theme); + + g_free (settings); +} + diff --git a/libwindow-settings/gnome-window-manager.h b/libwindow-settings/gnome-window-manager.h index 7c7d482d1..ea6d0d2e3 100644 --- a/libwindow-settings/gnome-window-manager.h +++ b/libwindow-settings/gnome-window-manager.h @@ -155,6 +155,9 @@ void gnome_window_manager_get_double_click_actions (GnomeWindowManager const GnomeWMDoubleClickAction **actions, int *n_actions); +/* Helper functions for GnomeWMSettings */ +GnomeWMSettings *gnome_wm_settings_copy (GnomeWMSettings *settings); +void gnome_wm_settings_free (GnomeWMSettings *settings); G_END_DECLS |