diff options
author | Sergey V. Udaltsov <svu@gnome.org> | 2011-01-03 14:40:53 +0000 |
---|---|---|
committer | Sergey V. Udaltsov <svu@gnome.org> | 2011-01-03 22:54:30 +0000 |
commit | bacfeb4afe34b69cf182ae5b9be16b10116ee566 (patch) | |
tree | 0b220ac7a3cee8b9ddf48b97ddb5fd8e6dcd89d0 /libgnomekbd/gkbd-configuration.h | |
parent | 38ae081c4614b3aaffb4c03703b197f92f9163c5 (diff) | |
download | libgnomekbd-bacfeb4afe34b69cf182ae5b9be16b10116ee566.tar.gz |
Refactor widget_instances into GkbdConfiguration
Reducing the amount of repeated code.
Additionally, signal handling fixed in GkbdStatus
Diffstat (limited to 'libgnomekbd/gkbd-configuration.h')
-rw-r--r-- | libgnomekbd/gkbd-configuration.h | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/libgnomekbd/gkbd-configuration.h b/libgnomekbd/gkbd-configuration.h index 3caa1f8..ababc93 100644 --- a/libgnomekbd/gkbd-configuration.h +++ b/libgnomekbd/gkbd-configuration.h @@ -1,10 +1,10 @@ /* * Copyright (C) 2010 Canonical Ltd. + * Copyright (C) 2010-2011 Sergey V. Udaltsov <svu@gnome.org> * * Authors: Jan Arne Petersen <jpetersen@openismus.com> + * Sergey V. Udaltsov <svu@gnome.org> * - * Based on gkbd-status.h by Sergey V. Udaltsov <svu@gnome.org> - * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either @@ -78,8 +78,31 @@ extern GkbdIndicatorConfig * gkbd_configuration_get_indicator_config (GkbdConfiguration * configuration); extern GkbdKeyboardConfig - *gkbd_configuration_get_keyboard_config (GkbdConfiguration * - configuration); + * gkbd_configuration_get_keyboard_config (GkbdConfiguration * + configuration); + +extern GSList *gkbd_configuration_get_all_objects (GkbdConfiguration * + configuration); + +extern gboolean gkbd_configuration_if_any_object_exists (GkbdConfiguration + * configuration); + +extern void gkbd_configuration_append_object (GkbdConfiguration * + configuration, + GObject * obj); + +extern void gkbd_configuration_remove_object (GkbdConfiguration * + configuration, + GObject * obj); + +#define ForAllObjects(config) \ + { \ + GSList* cur; \ + for (cur = gkbd_configuration_get_all_objects (config); cur != NULL; cur = cur->next) { \ + GObject* gki = (GObject*)cur->data; +#define NextObject() \ + } \ + } extern GSList *gkbd_configuration_load_images (GkbdConfiguration * configuration); @@ -88,5 +111,10 @@ extern void gkbd_configuration_free_images (GkbdConfiguration * configuration, GSList * images); +extern gchar *gkbd_configuration_create_label_title (int group, + GHashTable ** + ln2cnt_map, + gchar * layout_name); + G_END_DECLS #endif |