[libpeas] Add Glade catalog for libpeas-gtk



commit a17121b13f30ffbca2df0b2a2239c3efe4a96b7e
Author: Garrett Regier <alias301 gmail com>
Date:   Tue Feb 8 18:22:01 2011 -0800

    Add Glade catalog for libpeas-gtk

 .gitignore                    |    1 +
 configure.ac                  |   40 ++++++++++++++++++++++++++++++++++++++--
 data/Makefile.am              |    4 ++++
 data/glade/Makefile.am        |   13 +++++++++++++
 data/glade/libpeas-gtk.xml.in |   37 +++++++++++++++++++++++++++++++++++++
 po/POTFILES.in                |    1 +
 6 files changed, 94 insertions(+), 2 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 607bacc..5a1ed21 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,6 +29,7 @@ Makefile.in
 /configure.lineno
 /data/libpeas-1.0.pc
 /data/libpeas-gtk-1.0.pc
+/data/glade/libpeas-gtk.xml
 /depcomp
 /libpeas-*.tar.bz2
 /libpeas/peas-marshal.h
diff --git a/configure.ac b/configure.ac
index fecfce3..b988228 100644
--- a/configure.ac
+++ b/configure.ac
@@ -142,6 +142,40 @@ if test "$os_osx" = "yes"; then
 fi
 
 dnl ================================================================
+dnl Glade
+dnl ================================================================
+
+AC_ARG_ENABLE([glade-catalog],
+	[AS_HELP_STRING([--enable-glade-catalog],
+		[Install a glade catalog file [default=auto]])],
+	[enable_glade_catalog=$enableval],
+	[enable_glade_catalog=auto])
+
+if test "x$enable_glade_catalog" = "xno"; then
+  found_glade_catalog="no (disabled, use --enable-glade-catalog to enable)"
+else
+  AC_MSG_CHECKING([for Glade.])
+
+  PKG_CHECK_EXISTS([gladeui-2.0],
+			 [found_glade_catalog=yes],
+			 [found_glade_catalog=no])
+fi
+
+if test "x$enable_glade_catalog" = "xyes" -a "x$found_glade_catalog" = "xno"; then
+  AC_MSG_ERROR([You need to have gladeui-2.0 installed to build libpeas])
+fi
+AC_MSG_RESULT([$found_glade_catalog])
+
+if test "x$found_glade_catalog" = "xyes"; then
+  AC_MSG_CHECKING([for Glade catalog dir])
+  GLADE_CATALOG_DIR=`$PKG_CONFIG --variable=catalogdir gladeui-2.0 2>&AS_MESSAGE_LOG_FD`
+  AC_MSG_RESULT([$GLADE_CATALOG_DIR])
+  AC_SUBST(GLADE_CATALOG_DIR)
+fi
+
+AM_CONDITIONAL([ENABLE_GLADE_CATALOG],[test "x$found_glade_catalog" = "xyes"])
+
+dnl ================================================================
 dnl Seed Javascript Engine
 dnl ================================================================
 
@@ -301,9 +335,10 @@ loaders/c/Makefile
 loaders/python/Makefile
 loaders/seed/Makefile
 data/Makefile
+data/glade/Makefile
+data/icons/Makefile
 data/libpeas-1.0.pc
 data/libpeas-gtk-1.0.pc
-data/icons/Makefile
 peas-demo/Makefile
 peas-demo/plugins/Makefile
 peas-demo/plugins/helloworld/Makefile
@@ -341,7 +376,8 @@ Configuration:
         Source code location          : ${srcdir}
         Compiler                      : ${CC}
         Installation prefix           : ${prefix}
-	Build libpeas-gtk             : ${enable_gtk}
+        Build libpeas-gtk             : ${enable_gtk}
+        Glade Catalog                 : ${found_glade_catalog}
         Seed JS support               : ${found_seed}
         Python support                : ${found_python}
 "
diff --git a/data/Makefile.am b/data/Makefile.am
index d4f8f30..9c407d1 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,5 +1,9 @@
 SUBDIRS=icons
 
+if ENABLE_GLADE_CATALOG
+SUBDIRS+=glade
+endif
+
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libpeas-1.0.pc
 
diff --git a/data/glade/Makefile.am b/data/glade/Makefile.am
new file mode 100644
index 0000000..e3df9fd
--- /dev/null
+++ b/data/glade/Makefile.am
@@ -0,0 +1,13 @@
+catalogdir = $(GLADE_CATALOG_DIR)
+catalog_in_files = libpeas-gtk.xml.in
+catalog_DATA = $(catalog_in_files:.xml.in=.xml)
+
+EXTRA_DIST = \
+	$(catalog_in_files)
+
+validate: $(catalog_DATA)
+	xmllint --dtdvalid $(GLADE_CATALOG_DIR)/glade-catalog.dtd --noout $<
+
+CLEANFILES = $(catalog_DATA)
+
+ INTLTOOL_XML_NOMERGE_RULE@
diff --git a/data/glade/libpeas-gtk.xml.in b/data/glade/libpeas-gtk.xml.in
new file mode 100644
index 0000000..a53d03e
--- /dev/null
+++ b/data/glade/libpeas-gtk.xml.in
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<glade-catalog version="1.0" supports="gtkbuilder" name="libpeas-gtk" library="libpeas-gtk-1.0" domain="libpeas" depends="gtk+" book="libpeas-gtk">
+  <glade-widget-classes>
+    <glade-widget-class name="PeasGtkPluginManager" _title="Plugin Manager" generic-name="pluginmanager">
+      <properties>
+        <property id="view" _name="View" create-type="PeasGtkPluginManagerView" query="False" />
+
+        <!-- Disable GtkBox properties that should never be modified -->
+        <property id="homogeneous" disabled="True" />
+        <property id="padding" disabled="True" />
+        <property id="size" disabled="True" query="False" />
+        <property id="spacing" disabled="True" />
+      </properties>
+
+    </glade-widget-class>
+  </glade-widget-classes>
+
+  <glade-widget-classes>
+    <glade-widget-class name="PeasGtkPluginManagerView" _title="Plugin Manager View" generic-name="pluginmanagerview">
+      <properties>
+        <property id="show-builtin" _name="Show Builtin" default="False" />
+
+        <!-- Disable GtkTreeView properties that should never be modified -->
+        <property id="model" disabled="True" query="False" />
+      </properties>
+
+      <signals>
+        <signal id="populate-popup" />
+      </signals>
+    </glade-widget-class>
+  </glade-widget-classes>
+
+  <glade-widget-group name="PeasGtk" _title="Peas Gtk">
+    <glade-widget-class-ref name="PeasGtkPluginManager" />
+    <glade-widget-class-ref name="PeasGtkPluginManagerView" />
+  </glade-widget-group>
+</glade-catalog>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index ab5c7db..210c932 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,6 +1,7 @@
 # List of source files containing translatable strings.
 # Please keep this file sorted alphabetically.
 [encoding: UTF-8]
+data/glade/libpeas-gtk.xml.in
 libpeas/peas-dirs.c
 libpeas/peas-engine.c
 libpeas/peas-object-module.c



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]