[gnome-shell] Create GTypes for Shell namespace
- From: Colin Walters <walters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] Create GTypes for Shell namespace
- Date: Mon, 12 Apr 2010 20:31:58 +0000 (UTC)
commit 43925167135c08a6d7962e1007d15ed6ce5c4a64
Author: Colin Walters <walters verbum org>
Date: Sat Apr 3 12:48:19 2010 -0400
Create GTypes for Shell namespace
https://bugzilla.gnome.org/show_bug.cgi?id=614755
src/Makefile.am | 114 +++++++++++++++++++++++++++-----------------
src/shell-enum-types.c.in | 30 ++++++++++++
src/shell-enum-types.h.in | 25 ++++++++++
3 files changed, 125 insertions(+), 44 deletions(-)
---
diff --git a/src/Makefile.am b/src/Makefile.am
index a02768c..99a1d89 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,7 +42,9 @@ plugin_LTLIBRARIES = libgnome-shell.la
shell_built_sources = \
shell-marshal.h \
- shell-marshal.c
+ shell-marshal.c \
+ shell-enum-types.h \
+ shell-enum-types.c
BUILT_SOURCES += $(shell_built_sources)
EXTRA_DIST += shell-marshal.list
@@ -50,53 +52,57 @@ EXTRA_DIST += shell-marshal.list
SHELL_STAMP_FILES = stamp-shell-marshal.h
CLEANFILES += $(SHELL_STAMP_FILES)
-libgnome_shell_la_SOURCES = \
- $(shell_built_sources) \
- gnome-shell-plugin.c \
- shell-app.c \
- shell-app.h \
- shell-app-private.h \
- shell-app-system.c \
- shell-app-system.h \
- shell-app-usage.c \
- shell-app-usage.h \
- shell-arrow.c \
+shell_public_headers_h = \
+ shell-app.h \
+ shell-app-system.h \
+ shell-app-usage.h \
shell-arrow.h \
- shell-doc-system.c \
- shell-doc-system.h \
- shell-drawing.c \
- shell-drawing.h \
- shell-embedded-window.c \
- shell-embedded-window.h \
- shell-embedded-window-private.h \
- shell-gconf.c \
- shell-gconf.h \
- shell-generic-container.c \
- shell-generic-container.h \
- shell-gtk-embed.c \
- shell-gtk-embed.h \
- shell-menu.c \
- shell-menu.h \
- shell-overflow-list.c \
+ shell-doc-system.h \
+ shell-drawing.h \
+ shell-embedded-window.h \
+ shell-gconf.h \
+ shell-generic-container.h \
+ shell-gtk-embed.h \
+ shell-menu.h \
shell-overflow-list.h \
- shell-process.c \
- shell-process.h \
- shell-global.c \
- shell-global.h \
- shell-global-private.h \
- shell-slicer.c \
- shell-slicer.h \
- shell-stack.c \
- shell-stack.h \
- shell-tray-manager.c \
- shell-tray-manager.h \
- shell-uri-util.c \
- shell-uri-util.h \
- shell-window-tracker.c \
- shell-window-tracker.h \
- shell-wm.c \
+ shell-process.h \
+ shell-global.h \
+ shell-slicer.h \
+ shell-stack.h \
+ shell-tray-manager.h \
+ shell-uri-util.h \
+ shell-window-tracker.h \
shell-wm.h
+libgnome_shell_la_SOURCES = \
+ $(shell_built_sources) \
+ $(shell_public_headers_h) \
+ gnome-shell-plugin.c \
+ shell-app.c \
+ shell-app-private.h \
+ shell-app-system.c \
+ shell-app-usage.c \
+ shell-arrow.c \
+ shell-doc-system.c \
+ shell-drawing.c \
+ shell-embedded-window.c \
+ shell-embedded-window-private.h \
+ shell-gconf.c \
+ shell-generic-container.c \
+ shell-gtk-embed.c \
+ shell-menu.c \
+ shell-overflow-list.c \
+ shell-process.c \
+ shell-global.c \
+ shell-global-private.h \
+ shell-slicer.c \
+ shell-stack.c \
+ shell-tray-manager.c \
+ shell-uri-util.c \
+ shell-window-tracker.c \
+ shell-wm.c
+
+
non_gir_sources = \
shell-embedded-window-private.h \
shell-global-private.h
@@ -149,6 +155,26 @@ shell-marshal.c: Makefile shell-marshal.list
cp -f xgen-smc shell-marshal.c && \
rm -f xgen-smc
+
+shell-enum-types.h: stamp-shell-enum-types.h Makefile
+ @true
+stamp-shell-enum-types.h: $(srcdir)/shell-enum-types.h.in $(shell_public_headers_h)
+ $(AM_V_GEN) ( cd $(srcdir) && \
+ $(GLIB_MKENUMS) \
+ --template $< \
+ $(shell_public_headers_h) ) > $ tmp && \
+ (cmp -s $ tmp shell-enum-types.h || mv $ tmp shell-enum-types.h) && \
+ rm -f $ tmp && \
+ echo timestamp > $(@F)
+
+shell-enum-types.c: shell-enum-types.c.in stamp-shell-enum-types.h
+ $(AM_V_GEN) ( cd $(srcdir) && \
+ $(GLIB_MKENUMS) \
+ --template $< \
+ $(shell_public_headers_h) ) > $ tmp && \
+ mv $ tmp $@ && \
+ rm -f $ tmp
+
libgnome_shell_la_LDFLAGS = -avoid-version -module
libgnome_shell_la_LIBADD =-lm \
$(MUTTER_PLUGIN_LIBS) \
diff --git a/src/shell-enum-types.c.in b/src/shell-enum-types.c.in
new file mode 100644
index 0000000..b350d00
--- /dev/null
+++ b/src/shell-enum-types.c.in
@@ -0,0 +1,30 @@
+/*** BEGIN file-header ***/
+#include "shell-enum-types.h"
+/*** END file-header ***/
+
+/*** BEGIN file-production ***/
+/* enumerations from "@filename@" */
+#include "@filename@"
+/*** END file-production ***/
+
+/*** BEGIN value-header ***/
+GType
+ enum_name@_get_type(void) {
+ static GType enum_type_id = 0;
+ if (G_UNLIKELY (!enum_type_id))
+ {
+ static const G Type@Value values[] = {
+/*** END value-header ***/
+
+/*** BEGIN value-production ***/
+ { @VALUENAME@, "@VALUENAME@", "@valuenick@" },
+/*** END value-production ***/
+
+/*** BEGIN value-tail ***/
+ { 0, NULL, NULL }
+ };
+ enum_type_id = g_ type@_register_static("@EnumName@", values);
+ }
+ return enum_type_id;
+}
+/*** END value-tail ***/
diff --git a/src/shell-enum-types.h.in b/src/shell-enum-types.h.in
new file mode 100644
index 0000000..a6aea7d
--- /dev/null
+++ b/src/shell-enum-types.h.in
@@ -0,0 +1,25 @@
+/*** BEGIN file-header ***/
+#ifndef __SHELL_ENUM_TYPES_H__
+#define __SHELL_ENUM_TYPES_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/*** END file-header ***/
+
+/*** BEGIN file-production ***/
+/* enumerations from "@filename@" */
+/*** END file-production ***/
+
+/*** BEGIN file-tail ***/
+G_END_DECLS
+
+#endif /* !__SHELL_ENUM_TYPES_H__ */
+/*** END file-tail ***/
+
+/*** BEGIN value-header ***/
+GType @enum_name _get_type (void) G_GNUC_CONST;
+#define SHELL_TYPE_ ENUMSHORT@ (@enum_name _get_type())
+
+/*** END value-header ***/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]