aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/enum-types.c.in
diff options
context:
space:
mode:
authorKen VanDine <ken.vandine@canonical.com>2011-02-24 22:42:58 -0500
committerKen VanDine <ken.vandine@canonical.com>2011-02-24 22:42:58 -0500
commitf40abc3f546c829edb4d059b2a4c1cfe1aa9eb81 (patch)
tree4d1246b94fd64432e727cc1c2e8b07cb531f4a14 /libdbusmenu-glib/enum-types.c.in
parent5d4e1c63e3e0fc2bcce9e1217e6565b8d16a83b4 (diff)
parent9e20f80e0b1b0e804c6b9d37c8faaf719ace90ff (diff)
downloadlibdbusmenu-f40abc3f546c829edb4d059b2a4c1cfe1aa9eb81.tar.gz
libdbusmenu-f40abc3f546c829edb4d059b2a4c1cfe1aa9eb81.tar.bz2
libdbusmenu-f40abc3f546c829edb4d059b2a4c1cfe1aa9eb81.zip
* New upstream release.
* Add a signal on the menuitem for generic event support * Handle the case of a single NULL entry as well. * Not checking defaults when value is NULL * Add the 'type' variable first when processing new menuitems * Protection from unref'ing NULL variants * Only send the requested properties and request fewer * Add in a defaults database * Only send property updates if the menu item has been seen on the bus. * Add a property for text direction. * Add a property for needing attention. * Documentation fixes * Making menuitems track their own parents * Resolving property changes by looking at the properties directly.
Diffstat (limited to 'libdbusmenu-glib/enum-types.c.in')
-rw-r--r--libdbusmenu-glib/enum-types.c.in116
1 files changed, 116 insertions, 0 deletions
diff --git a/libdbusmenu-glib/enum-types.c.in b/libdbusmenu-glib/enum-types.c.in
new file mode 100644
index 0000000..9395f5f
--- /dev/null
+++ b/libdbusmenu-glib/enum-types.c.in
@@ -0,0 +1,116 @@
+/*** BEGIN file-header ***/
+/*
+Enums from the dbusmenu headers
+
+Copyright 2011 Canonical Ltd.
+
+Authors:
+ Ted Gould <ted@canonical.com>
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of either or both of the following licenses:
+
+1) the GNU Lesser General Public License version 3, as published by the
+ Free Software Foundation; and/or
+2) the GNU Lesser General Public License version 2.1, as published by
+ the Free Software Foundation.
+
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranties of
+MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+PURPOSE. See the applicable version of the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of both the GNU Lesser General Public
+License version 3 and version 2.1 along with this program. If not, see
+<http://www.gnu.org/licenses/>
+*/
+
+#include "enum-types.h"
+
+/*** END file-header ***/
+
+/*** BEGIN file-production ***/
+#include "@filename@"
+/*** END file-production ***/
+
+/*** BEGIN value-header ***/
+/**
+ @enum_name@_get_type:
+
+ Builds a GLib type for the #@EnumName@ enumeration.
+
+ Return value: A unique #GType for the #@EnumName@ enum.
+*/
+GType
+@enum_name@_get_type (void)
+{
+ static GType etype = 0;
+ if (G_UNLIKELY(etype == 0)) {
+ static const G@Type@Value values[] = {
+/*** END value-header ***/
+
+/*** BEGIN value-production ***/
+ { @VALUENAME@, "@VALUENAME@", "@valuenick@" },
+/*** END value-production ***/
+
+/*** BEGIN value-tail ***/
+ { 0, NULL, NULL}
+ };
+
+ etype = g_@type@_register_static (g_intern_static_string("@EnumName@"), values);
+ }
+
+ return etype;
+}
+
+/**
+ @enum_name@_get_nick:
+ @value: The value of @EnumName@ to get the nick of
+
+ Looks up in the enum table for the nick of @value.
+
+ Return value: The nick for the given value or #NULL on error
+*/
+const gchar *
+@enum_name@_get_nick (@EnumName@ value)
+{
+ GEnumClass * class = G_ENUM_CLASS(g_type_class_ref(@enum_name@_get_type()));
+ g_return_val_if_fail(class != NULL, NULL);
+
+ const gchar * ret = NULL;
+ GEnumValue * val = g_enum_get_value(class, value);
+ if (val != NULL) {
+ ret = val->value_nick;
+ }
+
+ g_type_class_unref(class);
+ return ret;
+}
+
+/**
+ @enum_name@_get_value_from_nick:
+ @nick: The enum nick to lookup
+
+ Looks up in the enum table for the value of @nick.
+
+ Return value: The value for the given @nick
+*/
+@EnumName@
+@enum_name@_get_value_from_nick (const gchar * nick)
+{
+ GEnumClass * class = G_ENUM_CLASS(g_type_class_ref(@enum_name@_get_type()));
+ g_return_val_if_fail(class != NULL, 0);
+
+ @EnumName@ ret = 0;
+ GEnumValue * val = g_enum_get_value_by_nick(class, nick);
+ if (val != NULL) {
+ ret = val->value;
+ }
+
+ g_type_class_unref(class);
+ return ret;
+}
+
+
+/*** END value-tail ***/