diff options
author | Christian Persch <chpe@cvs.gnome.org> | 2005-01-07 02:14:42 +0800 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2005-01-07 02:14:42 +0800 |
commit | 35ad841aceed89072e2cc6f589405a6feb411f74 (patch) | |
tree | 2fdf16ad0c9c630733841728c9bd0e3406bae4ba /lib/egg | |
parent | 58a62ea3932ab6bdb599a0c519460a56622fe884 (diff) | |
download | gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar.gz gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar.bz2 gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar.lz gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar.xz gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.tar.zst gsoc2013-epiphany-35ad841aceed89072e2cc6f589405a6feb411f74.zip |
Use glib-mkenums to generate the enum and flags get_type functions.
2005-01-06 Christian Persch <chpe@cvs.gnome.org>
* configure.ac:
* embed/Makefile.am:
* embed/ephy-embed-event.c:
* embed/ephy-embed-event.h:
* embed/ephy-embed-persist.c:
* embed/ephy-embed-persist.h:
* embed/ephy-embed.c:
* embed/ephy-embed.h:
* embed/ephy-permission-manager.c:
* embed/ephy-permission-manager.h:
* lib/egg/Makefile.am:
* lib/egg/egg-toolbars-model.c:
* lib/egg/egg-toolbars-model.h:
* src/Makefile.am:
* src/ephy-link.c:
* src/ephy-link.h:
* src/ephy-navigation-action.c:
* src/ephy-shell.c: (ephy_shell_error_quark):
* src/ephy-shell.h:
* src/ephy-tab.c:
* src/ephy-tab.h:
* src/ephy-window.c:
Use glib-mkenums to generate the enum and flags get_type functions.
Diffstat (limited to 'lib/egg')
-rw-r--r-- | lib/egg/Makefile.am | 41 | ||||
-rwxr-xr-x | lib/egg/egg-toolbars-model.c | 25 | ||||
-rwxr-xr-x | lib/egg/egg-toolbars-model.h | 2 |
3 files changed, 40 insertions, 28 deletions
diff --git a/lib/egg/Makefile.am b/lib/egg/Makefile.am index dc2f0c6e3..1de926360 100644 --- a/lib/egg/Makefile.am +++ b/lib/egg/Makefile.am @@ -25,7 +25,8 @@ noinst_LTLIBRARIES = libegg.la libegg_la_SOURCES = \ $(EGGSOURCES) \ - eggmarshalers.c + $(EGGHEADERS) \ + $(BUILT_SOURCES) libegg_la_CPPFLAGS = \ -I$(top_builddir)/lib/egg \ @@ -36,7 +37,11 @@ libegg_la_CFLAGS = \ $(EPIPHANY_DEPENDENCY_CFLAGS) \ $(AM_CFLAGS) -BUILT_SOURCES = eggmarshalers.h eggmarshalers.c +BUILT_SOURCES = \ + eggmarshalers.c \ + eggmarshalers.h \ + eggtypebuiltins.c \ + eggtypebuiltins.h eggmarshalers.h: eggmarshalers.list $(GLIB_GENMARSHAL) --prefix=_egg_marshal $(srcdir)/eggmarshalers.list --header > eggmarshalers.h @@ -44,6 +49,38 @@ eggmarshalers.h: eggmarshalers.list eggmarshalers.c: eggmarshalers.list $(GLIB_GENMARSHAL) --prefix=_egg_marshal $(srcdir)/eggmarshalers.list --header --body > eggmarshalers.c +eggtypebuiltins.c: $(EGGHEADERS) + ( cd $(srcdir) && $(GLIB_MKENUMS) \ + --fhead "#include \"eggtypebuiltins.h\"\n\n" \ + --fprod "\n/* enumerations from \"@filename@\" */" \ + --fprod "\n#include \"@filename@\"" \ + --vhead "static const G@Type@Value _@enum_name@_values[] = {" \ + --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ + --vtail " { 0, NULL, NULL }\n};\n\n" \ + --vtail "GType\n@enum_name@_get_type (void)\n{\n" \ + --vtail " static GType type = 0;\n\n" \ + --vtail " if (G_UNLIKELY (type == 0))\n" \ + --vtail " type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n\n" \ + --vtail " return type;\n}\n\n" \ + $(EGGHEADERS) ) > xgen-$(@F) \ + && ( cmp -s xgen-$(@F) $(@F) || cp xgen-$(@F) $(@F) ) \ + && rm -f xgen-$(@F) + +eggtypebuiltins.h: $(EGGHEADERS) + ( cd $(srcdir) && $(GLIB_MKENUMS) \ + --fhead "#ifndef __EGGTYPEBUILTINS_H__\n" \ + --fhead "#define __EGGTYPEBUILTINS_H__ 1\n\n" \ + --fhead "#include <glib-object.h>\n\n" \ + --fhead "G_BEGIN_DECLS\n\n" \ + --ftail "G_END_DECLS\n\n" \ + --ftail "#endif /* __EGGTYPEBUILTINS_H__ */\n" \ + --fprod "\n/* --- @filename@ --- */" \ + --eprod "#define EGG_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n" \ + --eprod "GType @enum_name@_get_type (void);\n" \ + $(EGGHEADERS) ) > xgen-$(@F) \ + && ( cmp -s xgen-$(@F) $(@F) || cp xgen-$(@F) $(@F) ) \ + && rm -f xgen-$(@F) + EXTRA_DIST= \ eggmarshalers.list diff --git a/lib/egg/egg-toolbars-model.c b/lib/egg/egg-toolbars-model.c index 0b4bc93ff..a92617f92 100755 --- a/lib/egg/egg-toolbars-model.c +++ b/lib/egg/egg-toolbars-model.c @@ -22,6 +22,7 @@ #include "config.h" #include "egg-toolbars-model.h" +#include "eggtypebuiltins.h" #include "eggmarshalers.h" #include <unistd.h> @@ -71,30 +72,6 @@ struct EggToolbarsModelPrivate }; GType -egg_toolbars_model_flags_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) - { - static const GFlagsValue values[] = - { - { EGG_TB_MODEL_NOT_REMOVABLE, "EGG_TB_MODEL_NOT_REMOVABLE", "not-removable" }, - { EGG_TB_MODEL_ICONS_ONLY, "EGG_TB_MODEL_ICONS_ONLY", "icons-only" }, - { EGG_TB_MODEL_TEXT_ONLY, "EGG_TB_MODEL_TEXT_ONLY", "text-only" }, - { EGG_TB_MODEL_ICONS_TEXT, "EGG_TB_MODEL_ICONS_TEXT", "text" }, - { EGG_TB_MODEL_ICONS_TEXT_HORIZ, "EGG_TB_MODEL_ICONS_TEXT_HORIZ", "text-horiz" }, - { EGG_TB_MODEL_ACCEPT_ITEMS_ONLY, "EGG_TB_MODEL_ACCEPT_ITEMS_ONLY", "accept-items-only" }, - { 0, NULL, NULL } - }; - - type = g_flags_register_static ("EggToolbarsModelFlags", values); - } - -return type; -} - -GType egg_toolbars_model_get_type (void) { static GType type = 0; diff --git a/lib/egg/egg-toolbars-model.h b/lib/egg/egg-toolbars-model.h index 551f46edb..276c4730d 100755 --- a/lib/egg/egg-toolbars-model.h +++ b/lib/egg/egg-toolbars-model.h @@ -34,8 +34,6 @@ G_BEGIN_DECLS #define EGG_IS_TOOLBARS_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EGG_TYPE_TOOLBARS_MODEL)) #define EGG_TOOLBARS_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EGG_TYPE_TOOLBARS_MODEL, EggToolbarsModelClass)) -#define EGG_TYPE_TOOLBARS_MODEL_FLAGS (egg_toolbars_model_flags_get_type ()) - typedef struct EggToolbarsModel EggToolbarsModel; typedef struct EggToolbarsModelPrivate EggToolbarsModelPrivate; typedef struct EggToolbarsModelClass EggToolbarsModelClass; |