glade3 r1775 - in trunk: . doc doc/tmpl gladeui
- From: tvb svn gnome org
- To: svn-commits-list gnome org
- Subject: glade3 r1775 - in trunk: . doc doc/tmpl gladeui
- Date: Mon, 7 Apr 2008 13:23:11 +0100 (BST)
Author: tvb
Date: Mon Apr 7 13:23:11 2008
New Revision: 1775
URL: http://svn.gnome.org/viewvc/glade3?rev=1775&view=rev
Log:
* autogen.sh: Run gtkdocize with --flavour=no-tmpl
* configure.ac: Require gtk-doc 1.9 and bump to 3.5.0 dev version.
* doc/gladeui-overrides.txt, doc/children.sgml, doc/tmpl/*: Removed unneeded.
* doc/gladeui-docs.sgml, doc/widgetclasses.sgml,
doc/catalogintro.sgml, doc/Makefile.am: Mega docs update, added new
files and completely rediscribed the catalog in its new form.
* gladeui/glade-design-view.c, gladeui/glade-widget.c,
gladeui/glade-widget-adaptor.c, gladeui/glade-command.c,
gladeui/glade-widget-adaptor.h, gladeui/glade-base-editor.c,
gladeui/glade-widget-action.c, gladeui/glade-xml-utils.c,
gladeui/glade-utils.c, gladeui/glade-catalog.c, gladeui/glade-property.c,
gladeui/glade-project.c: Added some description statements to newly
documented files, fixed some warnings in other sources.
M ChangeLog
M configure.ac
M doc/gladeui-docs.sgml
M doc/widgetclasses.sgml
M doc/catalogintro.sgml
D doc/gladeui-overrides.txt
M doc/Makefile.am
D doc/children.sgml
D doc/tmpl
M doc/gladeui-sections.txt
M doc/gladeui.types
M doc/properties.sgml
M gladeui/glade-design-view.c
M gladeui/glade-widget.c
M gladeui/glade-widget-adaptor.c
M gladeui/glade-command.c
M gladeui/glade-widget-adaptor.h
M gladeui/glade-base-editor.c
M gladeui/glade-widget-action.c
M gladeui/glade-xml-utils.c
M gladeui/glade-utils.c
M gladeui/glade-catalog.c
M gladeui/glade-property.c
M gladeui/glade-project.c
M autogen.sh
Removed:
trunk/doc/children.sgml
trunk/doc/gladeui-overrides.txt
trunk/doc/tmpl/
Modified:
trunk/ChangeLog
trunk/autogen.sh
trunk/configure.ac
trunk/doc/Makefile.am
trunk/doc/catalogintro.sgml
trunk/doc/gladeui-docs.sgml
trunk/doc/gladeui-sections.txt
trunk/doc/gladeui.types
trunk/doc/properties.sgml
trunk/doc/widgetclasses.sgml
trunk/gladeui/glade-base-editor.c
trunk/gladeui/glade-catalog.c
trunk/gladeui/glade-command.c
trunk/gladeui/glade-design-view.c
trunk/gladeui/glade-project.c
trunk/gladeui/glade-property.c
trunk/gladeui/glade-utils.c
trunk/gladeui/glade-widget-action.c
trunk/gladeui/glade-widget-adaptor.c
trunk/gladeui/glade-widget-adaptor.h
trunk/gladeui/glade-widget.c
trunk/gladeui/glade-xml-utils.c
Modified: trunk/autogen.sh
==============================================================================
--- trunk/autogen.sh (original)
+++ trunk/autogen.sh Mon Apr 7 13:23:11 2008
@@ -6,7 +6,6 @@
PKG_NAME="glade"
-
(test -f $srcdir/configure.ac \
&& test -f $srcdir/autogen.sh) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
@@ -50,4 +49,4 @@
# ;;
#esac
-REQUIRED_GNOME_DOC_UTILS_VERSION=0.9.0 REQUIRED_AUTOMAKE_VERSION="$automake_version" GNOME_DATADIR="$gnome_datadir" USE_GNOME2_MACROS=1 . $gnome_autogen
+GTKDOCIZE="gtkdocize --flavour no-tmpl" REQUIRED_GNOME_DOC_UTILS_VERSION=0.9.0 REQUIRED_AUTOMAKE_VERSION="$automake_version" GNOME_DATADIR="$gnome_datadir" USE_GNOME2_MACROS=1 . $gnome_autogen
Modified: trunk/configure.ac
==============================================================================
--- trunk/configure.ac (original)
+++ trunk/configure.ac Mon Apr 7 13:23:11 2008
@@ -3,8 +3,8 @@
AC_PREREQ(2.52)
m4_define(glade_major_version, 3)
-m4_define(glade_minor_version, 4)
-m4_define(glade_micro_version, 3)
+m4_define(glade_minor_version, 5)
+m4_define(glade_micro_version, 0)
m4_define(glade_version, glade_major_version.glade_minor_version.glade_micro_version)
AC_INIT([glade3], [glade_version],
@@ -111,7 +111,7 @@
dnl ================================================================
dnl Check for gtk-doc
dnl ================================================================
-GTK_DOC_CHECK(1.4)
+GTK_DOC_CHECK(1.9)
dnl ================================================================
dnl Check for gtk+
Modified: trunk/doc/Makefile.am
==============================================================================
--- trunk/doc/Makefile.am (original)
+++ trunk/doc/Makefile.am Mon Apr 7 13:23:11 2008
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
# We require automake 1.6 at least.
-AUTOMAKE_OPTIONS = 1.9
+AUTOMAKE_OPTIONS = 1.6
# This is a blank Makefile.am for using gtk-doc.
# Copy this to your project's API docs directory and modify the variables to
@@ -58,9 +58,8 @@
glade-id-allocator.h \
glade-catalog.h \
glade.h \
- glade-xml-utils.h \
+ glade-design-layout.h \
glade-popup.h \
- glade-devhelp.h \
glade-gtk.h \
glade-palette-expander.h \
glade-palette-item.h \
@@ -77,8 +76,7 @@
version.xml \
catalogintro.sgml \
widgetclasses.sgml \
- properties.sgml \
- children.sgml
+ properties.sgml
# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
# These files must be listed here *and* in content_files
@@ -86,8 +84,7 @@
expand_content_files=\
catalogintro.sgml \
widgetclasses.sgml \
- properties.sgml \
- children.sgml
+ properties.sgml
# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
# Only needed if you are using gtkdoc-scangobj to dynamically query widget
@@ -100,7 +97,7 @@
-I$(top_srcdir) \
-I$(top_builddir) \
`pkg-config --cflags gtk+-2.0`
-
+
GTKDOC_LIBS=${top_builddir}/gladeui/libgladeui-1.la
# This includes the standard gtk-doc make rules, copied by gtkdocize.
@@ -110,10 +107,12 @@
# e.g. EXTRA_DIST += version.xml.in
EXTRA_DIST += version.xml.in
-GTK_HOME = http://developer.gnome.org/doc/API/2.0/gtk
-GDK_HOME = http://developer.gnome.org/doc/API/2.0/gdk
-GOBJECT_HOME = http://developer.gnome.org/doc/API/2.0/gobject
-GLIB_HOME = http://developer.gnome.org/doc/API/2.0/glib
+
+# XXX Seems this is no longer working with gtkdoc 1.9 :(
+GTK_HOME = http://library.gnome.org/devel/gtk/stable
+GDK_HOME = http://library.gnome.org/devel/gdk/stable
+GOBJECT_HOME = http://library.gnome.org/devel/gobject/stable
+GLIB_HOME = http://library.gnome.org/devel/glib/stable
webdocs: all
rm -rf html-web
Modified: trunk/doc/catalogintro.sgml
==============================================================================
--- trunk/doc/catalogintro.sgml (original)
+++ trunk/doc/catalogintro.sgml Mon Apr 7 13:23:11 2008
@@ -12,51 +12,52 @@
<refsect1>
<title>Introduction</title>
+
<para>
-The widgets that are available in the Glade UI builder are handled in a
-dynamic way and additional widgets can be added, for example from other
-libraries, by installing a widget plugin.
- </para>
- <para>
-A widget plugin consists of a catalog file and a shared library and
-icons for the widgets to use in the widget palette and widget tree.
- </para>
- <para>
-The catalog file is written in an XML format that will be described
-below. There is also a DTD for the format which can be found in the widgets
-directory of the glade-3 package.
- </para>
- <para>
-Many properties of widgets can be handled automatically by the GObject
-introspection features. Not all of them can though, and advanced widgets
-often also need additional support from code. This is specified in the
-catalog file, where you can override default values, hide properties,
-specify functions to call in the installed plugin, etc.
+You can provide support for your custom widgets in a few ways, you can
+make a package and install it to the system directories, load additional
+catalogs in user directories, project directories for example, and
+you can optionally provide code support and/or icons, if you dont provide
+icons for the inspector and palette Glade will simply print a warning
+and use a default icon. The catalog file is written in an XML format and
+a DTD for the format can be found in the plugins/ directory of the Glade
+tarball.
</para>
+
<para>
-The catalog file is also used to group the widgets in groups that
-correspond to the groups in the Glade widget palette.
+In most cases gtk+ derived widgets can be added with little effort and it
+is enough to simply specify the widget's type; glade will introspect
+its properties and signals - but due to the organic nature of a widget
+toolkit there are always exceptions. In this document we'll try to provide
+some basic examples and describe a wealth of options that can be used to
+enhance UI editing and workaround exceptions.
</para>
+
<para>
-In theory, the catalog file should be enough, but many widgets also need
-supporting code to be usable in Glade, which is where the plugin library
-comes in. An example of both a catalog file and plugin library can be
-found in the Glade sources, since the GTK+ widget set that is supported
-by default in Glade also is implemented this way. The catalog file is
-located in widgets/gtk+.xml, and the source code in src/glade-gtk.c. The
-catalog file starts by specifying the name of the catalog and the plugin
-library to use:
+The catalog file starts by specifying the name of the catalog and the plugin
+library to use, the following examples assume you have a namespace "Foo" and
+are integrating an object "Frobnicator":
<programlisting>
-<![CDATA[<glade-catalog name="gtk+" library="gladegtk">
+<![CDATA[<glade-catalog name="foo" library="foo" depends="gtk+">
<init-function>my_catalog_init</init-function>
<glade-widget-classes>
+ <glade-widget-class name="FooFrobnicator" generic-name="frobnicator" title="Frobnicator"/>
+
... widget classes go here
</glade-widget-classes>
+ <glade-widget-group name="foo" title="Foo">
+
+ <glade-widget-class-ref name="FooFrobnicator"/>
+
+ ... widget class references go here
+
+ </glade-widget-group>
+
... widget groups go here
</glade-catalog>]]></programlisting>
@@ -97,8 +98,13 @@
<term>library</term>
<listitem>
<para>
-The 'library' property is a shorthand name for the plugin library which shall
-be dlopen'd from <literal>$prefix/lib/glade-3/modules/</literal>
+The 'library' property is used to load the types and introspect properties, unless
+you are faking your widget classes (which will be described later on), glade will
+need to load this library, it can either be the name of the library containing the
+widgets or the plugin library which is assumed to implicitly link to your widget
+library. The library will be loaded either by a user specified path, the system
+plugin directory: <literal>$prefix/lib/glade-3/modules/</literal>, or from
+the default system library paths in the afore mentioned order of precedence.
</para>
</listitem>
</varlistentry>
@@ -120,11 +126,10 @@
<term>domain</term>
<listitem>
<para>
-The 'domain' property is the domain in which to search for translatable
-strings from the catalog file (such as glade-widget-group `title's and such; translatable
-values will be marked in this document as we go along and should be any strings
-that are displayed in the glade UI). If the 'domain' property is not specified,
-the library property will be used in it's stead.
+The 'domain' property is the domain in which to search for translatable strings from the
+catalog file; please note that all strings from the catalog that will apear in the UI are
+translated using this domain. If the 'domain' is not specified, the library property will
+be used in it's stead.
</para>
</listitem>
</varlistentry>
@@ -140,16 +145,6 @@
</varlistentry>
<varlistentry>
- <term>fixed</term>
- <listitem>
- <para>
-The 'fixed' property is used to mark a #GladeWidgetClass for free form placement capacities
-to be handled with a #GladeFixed.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
<term>init-function</term>
<listitem>
<para>
@@ -181,5 +176,20 @@
The plugin library should be installed into the modules directory:
<programlisting>pkg-config --variable=moduledir gladeui-1.0</programlisting>
</para>
+ <para>
+You can also load your catalog from a user directory by specifying
+additional load path(s) in the environment, for instance:
+ <programlisting>GLADE_CATALOG_PATH=~/mycatalogs:~/work/foo/glade</programlisting>
+ </para>
+
+ <para>
+Same goes for optional plugin libraries, for instance:
+ <programlisting>GLADE_MODULE_PATH=~/work/foo/src</programlisting>
+ </para>
+
+ <para>
+Currently loading icons without installing them is unsupported.
+ </para>
+
</refsect1>
</refentry>
Modified: trunk/doc/gladeui-docs.sgml
==============================================================================
--- trunk/doc/gladeui-docs.sgml (original)
+++ trunk/doc/gladeui-docs.sgml Mon Apr 7 13:23:11 2008
@@ -4,7 +4,6 @@
<!ENTITY CatalogIntro SYSTEM "xml/catalogintro.sgml">
<!ENTITY WidgetClasses SYSTEM "xml/widgetclasses.sgml">
<!ENTITY Properties SYSTEM "xml/properties.sgml">
-<!ENTITY Children SYSTEM "xml/children.sgml">
<!ENTITY GladeCommand SYSTEM "xml/glade-command.xml">
<!ENTITY GladeApp SYSTEM "xml/glade-app.xml">
<!ENTITY GladeClipboardView SYSTEM "xml/glade-clipboard-view.xml">
@@ -24,17 +23,22 @@
<!ENTITY GladeWidget SYSTEM "xml/glade-widget.xml">
<!ENTITY GladeFixed SYSTEM "xml/glade-fixed.xml">
<!ENTITY GladeBaseEditor SYSTEM "xml/glade-base-editor.xml">
+<!ENTITY GladeDesignView SYSTEM "xml/glade-design-view.xml">
+<!ENTITY GladeXmlUtils SYSTEM "xml/glade-xml-utils.xml">
+<!ENTITY GladeWidgetAction SYSTEM "xml/glade-widget-action.xml">
<!ENTITY version SYSTEM "version.xml">
]>
<book id="index">
<bookinfo>
- <title>Glade UI Builder Reference Manual</title>
+ <title>Glade User Interface Designer Reference Manual</title>
<abstract>
- <para>This document attempts to describe how to use the Glade UI Builder core
- library to integrate Glade into your application and how to integrate your
- custom (GTK+ based) widget toolkit into the Glade UI Builder.</para>
+ <para>
+This document attempts to describe how to use the Glade UI Designer core
+library to integrate Glade into your application and how to integrate your
+custom GTK+ derived widgets into the Glade UI Builder.
+ </para>
- <para>You can always get the latest version of this document here (XXX linkme)
+ <para>You can always get the latest version of this document <ulink url="http://glade.gnome.org/docs/index.html">here</ulink>
and you should have received a copy with the glade-3 tarball.</para>
</abstract>
<releaseinfo>for &version;</releaseinfo>
@@ -52,7 +56,6 @@
&CatalogIntro;
&WidgetClasses;
&Properties;
- &Children;
</part>
<part id="core">
@@ -64,10 +67,12 @@
&GladeProperty;
&GladeWidgetAdaptor;
&GladePropertyClass;
+ &GladeWidgetAction;
&GladeCommand;
&GladeClipboard;
&GladeBaseEditor;
&GladePlaceholder;
+ &GladeXmlUtils;
</part>
<part id="dockables">
@@ -78,6 +83,7 @@
&GladeClipboardView;
&GladeInspector;
&GladeSignalEditor;
+ &GladeDesignView;
</part>
<part id="misc">
Modified: trunk/doc/gladeui-sections.txt
==============================================================================
--- trunk/doc/gladeui-sections.txt (original)
+++ trunk/doc/gladeui-sections.txt Mon Apr 7 13:23:11 2008
@@ -244,24 +244,6 @@
</SECTION>
<SECTION>
-<FILE>glade-design-layout</FILE>
-<TITLE>GladeDesignLayout</TITLE>
-GladeDesignLayout
-glade_design_layout_new
-glade_design_layout_widget_event
-<SUBSECTION Standard>
-GLADE_DESIGN_LAYOUT
-GLADE_IS_DESIGN_LAYOUT
-GLADE_TYPE_DESIGN_LAYOUT
-glade_design_layout_get_type
-GLADE_DESIGN_LAYOUT_CLASS
-GLADE_IS_DESIGN_LAYOUT_CLASS
-GLADE_DESIGN_LAYOUT_GET_CLASS
-GladeDesignLayoutClass
-GladeDesignLayoutPrivate
-</SECTION>
-
-<SECTION>
<FILE>glade-signal</FILE>
GladeSignal
glade_signal_new
@@ -775,3 +757,192 @@
glade_util_draw_selection_nodes
</SECTION>
+<SECTION>
+<FILE>glade-xml-utils</FILE>
+glade_xml_search_child
+glade_xml_search_child_required
+glade_xml_get_content
+glade_xml_set_content
+glade_xml_get_value_int
+glade_xml_get_value_int_required
+glade_xml_get_value_string
+glade_xml_get_value_string_required
+glade_xml_get_boolean
+glade_xml_set_value
+glade_xml_get_property_string_required
+glade_xml_get_property_string
+glade_xml_get_property_boolean
+glade_xml_get_property_double
+glade_xml_get_property_int
+glade_xml_node_set_property_string
+glade_xml_node_set_property_boolean
+glade_xml_node_new
+glade_xml_node_new_comment
+glade_xml_node_delete
+glade_xml_node_get_children
+glade_xml_node_next
+glade_xml_node_verify
+glade_xml_node_verify_silent
+glade_xml_node_get_name
+glade_xml_node_append_child
+glade_xml_node_remove
+glade_xml_node_is_comment
+glade_xml_node_next_with_comments
+glade_xml_node_get_children_with_comments
+glade_xml_doc_get_root
+glade_xml_doc_new
+glade_xml_doc_set_root
+glade_xml_doc_free
+glade_xml_doc_save
+glade_xml_context_new
+glade_xml_context_destroy
+glade_xml_context_free
+glade_xml_context_new_from_path
+glade_xml_context_get_doc
+glade_xml_load_sym_from_node
+<SUBSECTION Standard>
+GLADE_XML_CONTEXT
+GLADE_XML_IS_CONTEXT
+CAST_BAD
+GladeXmlContext
+GladeXmlNode
+GladeXmlDoc
+GLADE_XML_TAG_PROJECT
+GLADE_XML_TAG_WIDGET
+GLADE_XML_TAG_LIBGLADE_PROJECT
+GLADE_XML_TAG_BUILDER_PROJECT
+GLADE_XML_TAG_LIBGLADE_WIDGET
+GLADE_XML_TAG_BUILDER_WIDGET
+GLADE_XML_TAG_REQUIRES
+GLADE_XML_TAG_LIB
+GLADE_XML_TAG_PROPERTY
+GLADE_XML_TAG_CLASS
+GLADE_XML_TAG_ID
+GLADE_XML_TAG_SIGNAL
+GLADE_XML_TAG_HANDLER
+GLADE_XML_TAG_AFTER
+GLADE_XML_TAG_OBJECT
+GLADE_XML_TAG_NAME
+GLADE_XML_TAG_CHILD
+GLADE_XML_TAG_PACKING
+GLADE_XML_TAG_PLACEHOLDER
+GLADE_XML_TAG_INTERNAL_CHILD
+GLADE_XML_TAG_I18N_TRUE
+GLADE_XML_TAG_SIGNAL_TRUE
+GLADE_XML_TAG_TYPE
+GLADE_TAG_GLADE_CATALOG
+GLADE_TAG_GLADE_WIDGET_CLASSES
+GLADE_TAG_GLADE_WIDGET_CLASS
+GLADE_TAG_GLADE_WIDGET_GROUP
+GLADE_TAG_GLADE_WIDGET_CLASS_REF
+GLADE_TAG_ADAPTOR
+GLADE_TAG_LIBRARY
+GLADE_TAG_DEPENDS
+GLADE_TAG_DOMAIN
+GLADE_TAG_BOOK
+GLADE_TAG_SIGNAL_NAME
+GLADE_TAG_DEFAULT
+GLADE_TAG_DISABLED
+GLADE_TAG_DEFAULT_PALETTE_STATE
+GLADE_TAG_REPLACE_CHILD_FUNCTION
+GLADE_TAG_DEEP_POST_CREATE_FUNCTION
+GLADE_TAG_POST_CREATE_FUNCTION
+GLADE_TAG_GET_INTERNAL_CHILD_FUNCTION
+GLADE_TAG_ADD_CHILD_FUNCTION
+GLADE_TAG_REMOVE_CHILD_FUNCTION
+GLADE_TAG_GET_CHILDREN_FUNCTION
+GLADE_TAG_CHILD_SET_PROP_FUNCTION
+GLADE_TAG_CHILD_GET_PROP_FUNCTION
+GLADE_TAG_CHILD_VERIFY_FUNCTION
+GLADE_TAG_CONSTRUCTOR_FUNCTION
+GLADE_TAG_ACTION_ACTIVATE_FUNCTION
+GLADE_TAG_CHILD_ACTION_ACTIVATE_FUNCTION
+GLADE_TAG_READ_WIDGET_FUNCTION
+GLADE_TAG_WRITE_WIDGET_FUNCTION
+GLADE_TAG_READ_CHILD_FUNCTION
+GLADE_TAG_WRITE_CHILD_FUNCTION
+GLADE_TAG_CREATE_EPROP_FUNCTION
+GLADE_TAG_STRING_FROM_VALUE_FUNCTION
+GLADE_TAG_PROPERTIES
+GLADE_TAG_PACKING_PROPERTIES
+GLADE_TAG_PROPERTY
+GLADE_TAG_ACTIONS
+GLADE_TAG_PACKING_ACTIONS
+GLADE_TAG_ACTION
+GLADE_TAG_TYPE
+GLADE_TAG_SPEC
+GLADE_TAG_TOOLTIP
+GLADE_TAG_PARAMETERS
+GLADE_TAG_PARAMETER
+GLADE_TAG_SET_FUNCTION
+GLADE_TAG_GET_FUNCTION
+GLADE_TAG_VERIFY_FUNCTION
+GLADE_TAG_QUERY
+GLADE_TAG_COMMON
+GLADE_TAG_OPTIONAL
+GLADE_TAG_OPTIONAL_DEFAULT
+GLADE_TAG_VISIBLE
+GLADE_TAG_EXPANDED
+GLADE_TAG_GENERIC_NAME
+GLADE_TAG_NAME
+GLADE_TAG_PARENT
+GLADE_TAG_TITLE
+GLADE_TAG_ID
+GLADE_TAG_KEY
+GLADE_TAG_VALUE
+GLADE_TAG_TRANSLATABLE
+GLADE_TAG_HAS_CONTEXT
+GLADE_TAG_COMMENT
+GLADE_TAG_PACKING_DEFAULTS
+GLADE_TAG_PARENT_CLASS
+GLADE_TAG_CHILD_PROPERTY
+GLADE_TAG_DISPLAYABLE_VALUES
+GLADE_TAG_NICK
+GLADE_TAG_SPECIAL_CHILD_TYPE
+GLADE_TAG_SAVE
+GLADE_TAG_SAVE_ALWAYS
+GLADE_TAG_EDITABLE
+GLADE_TAG_IGNORE
+GLADE_TAG_VISIBLE_LINES
+GLADE_TAG_RESOURCE
+GLADE_TAG_THEMED_ICON
+GLADE_TAG_INIT_FUNCTION
+GLADE_TAG_ATK_PROPERTY
+GLADE_TAG_FIXED
+GLADE_TAG_TRANSFER_ON_PASTE
+GLADE_TAG_WEIGHT
+GLADE_TAG_STOCK
+GLADE_TAG_GET_TYPE_FUNCTION
+GLADE_TAG_TOPLEVEL
+GLADE_TAG_USE_PLACEHOLDERS
+GLADE_TAG_DEFAULT_WIDTH
+GLADE_TAG_DEFAULT_HEIGHT
+GLADE_TAG_EVENT_HANDLER_CONNECTED
+GLADE_TAG_FALSE
+GLADE_TAG_TRUE
+GLADE_TAG_YES
+GLADE_TAG_NO
+GLADE_TAG_ICON_PREFIX
+GLADE_TAG_ICON_NAME
+GLADE_TAG_IMPORTANT
+GLADE_ENUM_DATA_TAG
+</SECTION>
+
+<SECTION>
+<FILE>glade-widget-action</FILE>
+<TITLE>GladeWidgetAction</TITLE>
+GWActionClass
+GladeWidgetAction
+glade_widget_action_class_free
+glade_widget_action_class_clone
+glade_widget_action_remove
+glade_widget_action_set_sensitive
+<SUBSECTION Standard>
+GLADE_WIDGET_ACTION
+GLADE_IS_WIDGET_ACTION
+GLADE_TYPE_WIDGET_ACTION
+glade_widget_action_get_type
+GLADE_WIDGET_ACTION_CLASS
+GLADE_IS_WIDGET_ACTION_CLASS
+GLADE_WIDGET_ACTION_GET_CLASS
+</SECTION>
Modified: trunk/doc/gladeui.types
==============================================================================
--- trunk/doc/gladeui.types (original)
+++ trunk/doc/gladeui.types Mon Apr 7 13:23:11 2008
@@ -14,3 +14,7 @@
glade_property_get_type
glade_widget_get_type
glade_widget_adaptor_get_type
+glade_design_view_get_type
+glade_design_layout_get_type
+glade_base_editor_get_type
+glade_widget_action_get_type
Modified: trunk/doc/properties.sgml
==============================================================================
--- trunk/doc/properties.sgml (original)
+++ trunk/doc/properties.sgml Mon Apr 7 13:23:11 2008
@@ -11,30 +11,50 @@
</refnamediv>
<refsect1>
- <title>Property Class Parameters</title>
+ <title>Property Class Configuration</title>
<para>
-There are alot of things that can be done with properties in glade; properties
-can be added and removed from widget classes, lets list all the different
-things you can do with properties.
+Properties are introspected at load time and loaded into #GladePropertyClass structures.
+The behaviour of properties can be modified by the catalog and fake properties can be added
+for editing purposes. Here is an example of the xml form:
+ <programlisting><![CDATA[...
+
+<property id="frobnicate-mode" default="FOO_FROBNICATE_RED">
+
+ ... spec, tooltip etc
+
+ <displayable-values>
+
+ <value id="FOO_FROBNICATE_RED" name="Red"/>
+ <value id="FOO_FROBNICATE_BLUE" name="Blue"/>
+
+ ... values here
+
+ </displayable-values>
+
+</property>
+
+...]]></programlisting>
+
+
</para>
<para>
Properties of the 'property' tag:
<variablelist>
<varlistentry>
- <term>name</term>
+ <term>id</term>
<listitem>
<para>
-The name to be used in the interface, this string is translated.
-(if name is not specified; it defaults to the nickname of the #GParamSpec)
+This is manditory and specifies the property that we are modifying (or adding)
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>id</term>
+ <term>name</term>
<listitem>
<para>
-This is manditory and specifies the property that we are modifying (or adding)
+The name to be used in the interface.
+(if name is not specified; it defaults to the nickname of the #GParamSpec)
</para>
</listitem>
</varlistentry>
@@ -140,140 +160,103 @@
<term>resource</term>
<listitem>
<para>
-This is for string properties that represent filenames that are packaged with
+Depicts string properties that represent filenames that are packaged with
the glade file (like pixbufs); you can set this to "True" and the string
property will be treated like a resource.
</para>
</listitem>
</varlistentry>
- </variablelist>
- </para>
-
- <para>
-Child tags of the 'property' tag:
- <variablelist>
<varlistentry>
- <term>spec</term>
+ <term>themed-icon</term>
<listitem>
<para>
-Specifies a function to be used to return a #GParamSpec for this property;
-this is used to add virtual properties to an object (like the "size" property
-on #GtkBox).
+Depicts a string property that is used for an icon from the theme. These will
+the appropriate editor.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>tooltip</term>
+ <term>weight</term>
<listitem>
<para>
-The tooltip to be displayed in the property editor for this property, this
-is also translated. The tooltip defaults to the blurb of the associated
-#GParamSpec.
+A numerical value to specify this properties position in the property editor.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>visible-lines</term>
+ <term>transfer-on-paste</term>
<listitem>
<para>
-An integer value to specify how many lines will be shown for text properties
-in the editor (this doesnt really work because of the complexity of calculating
-size of rendered text; instead, just set this to 2 if you want the text property
-to be edited in a textview with a scrolled window as opposed to a simple text entry).
+Used for packing properties; depicts packing properties that should follow
+the widget when pasted to a new container that supports the same properties.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>set-function</term>
+ <term>save-always</term>
<listitem>
<para>
-A #GladeSetPropertyFunc used to set the property instead of g_object_set()
+Specifies that the property should be saved regardless of its value (properties at thier
+default values are normally not saved).
</para>
</listitem>
</varlistentry>
+ </variablelist>
+ </para>
+
+ <para>
+Child tags of the 'property' tag:
+ <variablelist>
<varlistentry>
- <term>get-function</term>
+ <term>spec</term>
<listitem>
<para>
-A #GladeSetPropertyFunc function used to set the property instead of g_object_get()
+Specifies a function to be used to return a #GParamSpec for this property;
+this is used to add virtual properties to an object (like the "size" property
+on #GtkBox).
</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>tooltip</term>
+ <listitem>
<para>
-Technical note: that the get-function is hardly ever used, the only
-time glade-3 will actually ask the object what a property's value should be;
-is when adding a widget to a container and introspecting the values that
-the container assigned the child as packing properties.
+The tooltip to be displayed in the property editor for this property.
+The tooltip defaults to the blurb of the associated #GParamSpec.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>verify-function</term>
+ <term>visible-lines</term>
<listitem>
<para>
-A #GladeVerifyPropertyFunc function to verify whether the requested value is valid.
-If specified; the editor will not allow the user to commit a value that this
-function returns False for.
+An integer value to specify how many lines will be shown for text properties
+in the editor (this doesnt really work because of the complexity of calculating
+size of rendered text; instead, just set this to 2 if you want the text property
+to be edited in a textview with a scrolled window as opposed to a simple text entry).
</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>displayable-values</term>
+ <listitem>
<para>
-Technical note: verify functions are nescisary in glade-3 because of
-the abstraction between the value maintained in the glade-3 core and
-the value that is actually on the said GObject's property. In other words,
-if verify-function returns false; glade's value won't change and set-function
-won't be called, if set-function decides not commit the said value, thats
-its own rotten business (hehe) and if the property is set to ignore="True",
-verify functions will still function properly even if set-functions are not
-called for that property.
+Allows you to specify user friendly strings for enum and flag values as shown in the
+example above, use the `id' property in the value tag to depict the real value name
+and the `name' property for the human readable one.
</para>
</listitem>
</varlistentry>
+
</variablelist>
</para>
</refsect1>
- <refsect2>
- <title>Displayable Values, Packing defaults and such</title>
- <para>
-Enum and Flag type properties tend to have long complicated names unsuited for the glade
-environment, glade will allow you to substitute these names using the displayable-values
-child tag; the form looks like this:
- <programlisting>
-<![CDATA[<property id="pack-type">
- <displayable-values>
- <value id="GTK_PACK_START" name="Start"></value>
- <value id="GTK_PACK_END" name="End"></value>
- </displayable-values>
-</property>]]></programlisting>
-Note that the "name" (which will be the resulting name for each `id') is a translated
-string.
- </para>
-
- <para>
-A widget class may have default packing properties for each type of container that
-it can be added to; a short example should suffice as a description of how this works:
- <programlisting>
-<![CDATA[<packing-defaults>
- <parent-class name="GtkVBox">
- <child-property id="expand" default="false"/>
- </parent-class>
-</packing-defaults>]]></programlisting>
-Note that you can list any number of 'packing-defaults' in a row.
- </para>
-
- <para>
-Properties can have additional parameters; these are completely unused by glade
-but may be usefull for a plugin writer who may want to use the GladeParameter
-api to find parameters on property classes; the form looks like this:
- <programlisting>
-<![CDATA[<property id="foo">
- <parameters>
- <parameter key="Min" value="1"/>
- <parameter key="Max" value="10000"/>
- </parameters>
-</property>]]></programlisting>
- </para>
- </refsect2>
</refentry>
Modified: trunk/doc/widgetclasses.sgml
==============================================================================
--- trunk/doc/widgetclasses.sgml (original)
+++ trunk/doc/widgetclasses.sgml Mon Apr 7 13:23:11 2008
@@ -1,6 +1,6 @@
<refentry id="widgetclasses" revision="8 Feb 2006">
<refmeta>
- <refentrytitle>Widget Class Definitions</refentrytitle>
+ <refentrytitle>Widget Adaptor Definitions</refentrytitle>
<refmiscinfo>Glade UI</refmiscinfo>
</refmeta>
<refnamediv>
@@ -14,54 +14,85 @@
<title>Forward</title>
<para>
-#GladeWidgetClass stuctures are added to a global pool using the `glade-widget-class' tag
-and then later added to the palette through the `glade-widget-group' section; class-wide
-parameters can be set on non-instantiatable classes; for example, parameters for
-#GtkBox are valid for #GtkHBox and #GtkVBox.
+Widget support in Glade is provided by the #GladeWidgetAdaptor object, each
+`glade-widget-class' definition in the catalog will result in the creation
+of an adaptor, which inherits the funcionality of the adaptor created for its
+parent, or the closest adaptor available in the ancestry. Adaptor methods can
+be overridden by functions in the plugin by specifying them in the catalog.
+There is also a wealth of options you can use in the `glade-widget-class' without
+writing code.
</para>
<para>
-Note that there are alot of features to support alot of special-cases from
-toolkits; but assuming that a widget is completely configurable via properties
-and does not implement any special container relationships (which we will
-explain in further detail later on) the catalog entry should really just be
-a one liner like this:
+A typical basic example of a widget class definition is as follows:
<programlisting>
-<![CDATA[<glade-widget-class name="GtkLabel" get-type-function="gtk_label_get_type" generic-name="label" title="Label"/>]]></programlisting>
+<![CDATA[<glade-widget-class name="FooFrobnicator" generic-name="frobnicator" title="Frobnicator"/>]]></programlisting>
</para>
<para>
-To delve further into details; the complex layout looks like this:
+Here is the complete example of the form of the `glade-widget-class' definition:
<programlisting>
-<![CDATA[<glade-widget-class name="GtkLabel" get-type-function="gtk_label_get_type" generic-name="label" title="Label">
+<![CDATA[<glade-widget-class name="FooFrobnicator" generic-name="frobnicator" title="Frobnicator"/>
+
+ <post-create-function>foo_frobnicator_plugin_post_create</post-create-function>
... widget class support functions go here
<properties>
+ <property id="frobnicated" default="False"/>
+
... property definitions go here
</properties>
- <children>
+ <packing-properties>
+
+ ... child packing property definitions go here
+
+ </packing-properties>
+
+ <actions>
+
+ <action id="launch_editor" name="Edit Frob" stock="gtk-edit"/>
+
+ ... context menu action definitions go here
+
+ </actions>
- ... child specific parameters go here
+ <packing-actions>
+
+ ... context menu action definitions for child objects go here
+
+ </packing-actions>
+
+ <packing-defaults>
+
+ <parent-class name="GtkVBox">
+ <child-property id="expand" default="false"/>
+ </parent-class>
+
+ ... packing default definitions go here
+
+ </packing-defaults>
- </children>
</glade-widget-class>]]></programlisting>
</para>
</refsect1>
<refsect1>
- <title>Widget Class Parameters</title>
+ <title>Widget Class Properties</title>
+ <para>
+The following are all properies of the `glade-widget-class' tag
+ </para>
<variablelist>
<varlistentry>
<term>name</term>
<listitem>
<para>
-The 'name' property is the class name of the widget; unless the 'get-type-function'
-property is present, this will essentially be used to instantiate the actual class
-by deriving 'gtk_label_get_type' from 'GtkLabel' and searching for 'gtk_label_get_type'
-in the support library.
+The class name of the widget; unless the 'get-type-function' property is present,
+this will essentially be used to instantiate the actual class by deriving
+'gtk_label_get_type' from 'GtkLabel' and searching for 'gtk_label_get_type' in the
+support library.
</para>
</listitem>
</varlistentry>
@@ -70,10 +101,9 @@
<term>get-type-function</term>
<listitem>
<para>
-The 'get-type-function' property is used to explicitly specify the name of the
-function used to get the type of the widget. It is optional, but if it is not
-present, the 'name' property will be used to guess the name of the function,
-a process that could lead to unexpected results.
+Used to explicitly specify the name of the function used to get the type of the widget.
+It is optional, but if it is not present, the 'name' property will be used to guess the
+name of the function, a process that could lead to unexpected results.
</para>
</listitem>
</varlistentry>
@@ -82,18 +112,18 @@
<term>generic-name</term>
<listitem>
<para>
-The 'generic-name' is used to generate a default name for instances of the
+Used to generate a default name for instances of the
widget in the UI editor. It is also used in conjunction with the 'icon-prefix'
to form an icon name for the widget.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>icon-name</term>
<listitem>
<para>
-The 'icon-name' property is used to explicitly set an icon name for this widget.
+Used to explicitly set an icon name for this widget.
These icon names are looked up in the current icon theme to retrieve an icon for
the widget.
</para>
@@ -104,7 +134,7 @@
<term>title</term>
<listitem>
<para>
-The'title' property is used to display the name of the class in the palette and widget
+Used to display the name of the class in the palette and widget
tree and will be translated before use in the interface.
</para>
</listitem>
@@ -114,8 +144,67 @@
<term>toplevel</term>
<listitem>
<para>
-The'toplevel' property is used to know whether this widget class is toplevel or not
-in Glade context.
+Used to know whether this widget class is toplevel or not
+in Glade context. This property will be inherited from the adaptors parent.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>fixed</term>
+ <listitem>
+ <para>
+Used to mark a #GladeWidgetClass for free form placement capacities
+to be handled with a #GladeFixed. This property will be inherited from the adaptors parent.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>use-placeholders</term>
+ <listitem>
+ <para>
+Used to inform the core about adaptors that implement
+#GtkContainer editing, and whether or not they use #GladePlaceholder. This property will
+be inherited from the adaptors parent.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>default-width</term>
+ <listitem>
+ <para>
+The default width to load a #GtkWindow derived widget in the #GladeDesignView.
+This property will be inherited from the adaptors parent.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>default-height</term>
+ <listitem>
+ <para>
+The default height to load a #GtkWindow derived widget in the #GladeDesignView.
+This property will be inherited from the adaptors parent.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>Adapter Methods</title>
+ <para>
+The following are all child tags of the `glade-widget-class' tag
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term>constructor-function</term>
+ <listitem>
+ <para>
+Used to override the actual #GObject constructor of the said #GladeWidgetAdaptor
</para>
</listitem>
</varlistentry>
@@ -124,20 +213,110 @@
<term>post-create-function</term>
<listitem>
<para>
-The 'post-create-function' tag is a #GladePostCreateFunc support function that
-gets called whenever a widget of 'this class' (or a widget derived from 'this class'
-that didn't provide its own post-create-function) is instantiated.
+A #GladePostCreateFunc support function that gets called whenever a widget of the said class is instantiated.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>deep-post-create-function</term>
+ <listitem>
+ <para>
+Same as `post-create-function' except in that you must always chain up
+to the super class definition as a rule.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>get-property-function</term>
+ <listitem>
+ <para>
+A #GladeGetPropertyFunc to get values of properties on an instance in the
+runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>set-property-function</term>
+ <listitem>
+ <para>
+A #GladeSetPropertyFunc to set values of properties on an instance in the
+runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>verify-function</term>
+ <listitem>
+ <para>
+A #GladeVerifyPropertyFunc to set values of properties on an instance in the
+runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>add-child-function</term>
+ <listitem>
+ <para>
+A #GladeAddChildFunc to add children to instances in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>remove-child-function</term>
+ <listitem>
+ <para>
+A #GladeRemoveChildFunc to remove children from instances in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>replace-child-function</term>
+ <listitem>
+ <para>
+A #GladeReplaceChildFunc to replace children inside instances in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>get-children-function</term>
+ <listitem>
+ <para>
+A #GladeGetChildrenFunc to get a list of children inside instances in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>child-get-property-function</term>
+ <listitem>
+ <para>
+A #GladeChildGetPropertyFunc to get packing properties from instances in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>child-set-property-function</term>
+ <listitem>
+ <para>
+A #GladeChildSetPropertyFunc to set packing properties on instances in the runtime.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term>launch-editor-function</term>
+ <term>child-verify-function</term>
<listitem>
<para>
-The 'launch-editor-function' tag is a #GladeEditorLaunchFunc support function used to
-launch a custom editor for this class; a good example for this is the #GtkMenuBar
-which needs a special editor in order to be easier to use.
+A #GladeChildVerifyPropertyFunc to verify packing properties on instances in the runtime.
</para>
</listitem>
</varlistentry>
@@ -146,54 +325,187 @@
<term>get-internal-child-function</term>
<listitem>
<para>
-The 'get-internal-child-function' tag is a #GladeGetInternalFunc support function
-used to retrieve an internal child of a composite object (like a button in a
-filechooser or something); support for internal children must also be added to
-your application via libglade.
+A #GladeGetInternalFunc to retrieve an internal child of a composite object in the runtime.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>action-activate-function</term>
+ <listitem>
+ <para>
+A #GladeActionActivateFunc to run a routine for a plugin defined #GladeWidgetAction.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>child-action-activate-function</term>
+ <listitem>
+ <para>
+A #GladeChildActionActivateFunc to run a routine for a plugin defined packing #GladeWidgetAction.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>read-widget-function</term>
+ <listitem>
+ <para>
+A #GladeReadWidgetFunc to load a widget from the xml.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>write-widget-function</term>
+ <listitem>
+ <para>
+A #GladeWriteWidgetFunc to write a widget from the xml.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>read-child-function</term>
+ <listitem>
+ <para>
+A #GladeReadWidgetFunc to read a child to the xml.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>write-child-function</term>
+ <listitem>
+ <para>
+A #GladeWriteWidgetFunc to write a child to the xml.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>create-editor-property-function</term>
+ <listitem>
+ <para>
+A #GladeCreateEPropFunc to create widgets to be used in Glade's property editor.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>string-from-value-function</term>
+ <listitem>
+ <para>
+A #GladeStringFromValueFunc to create a string from a #GValue.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
-
+
+ <refsect1>
+ <title>Action Definitions</title>
+ <para>
+Actions are added under the `actions' and `packing-actions' tags, actions can also
+be nested so as to allow grouping in context menus, example:
+ <programlisting>
+<![CDATA[...
+
+<action id="manage_frobs" name="Manage Frobs">
+ <action id="add_frob" name="Add" stock="gtk-add"/>
+ <action id="remove_frob" name="Remove" stock="gtk-remove"/>
+</action>
+
+...]]></programlisting>
+ </para>
+ <para>
+Here are the meanings of the `action' tag's properties:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term>id</term>
+ <listitem>
+ <para>
+The string identifier for this action, the action_path argument to your #GladeActionActivateFunc
+will be a combination if this id and any parents, for the above example:
+<literal>"manage_frobs/add_frob"</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>name</term>
+ <listitem>
+ <para>
+A string to be displayed in the UI for this action.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>stock</term>
+ <listitem>
+ <para>
+An optional Gtk stock icon to represent this action.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>important</term>
+ <listitem>
+ <para>
+A boolean option to add emphasis to this action; currently actions marked as `important'
+are added to the toolbar.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>Packing Defaults</title>
+ <para>
+Default values can be specified for packing properties on your widget when added
+to a said type of parent, as the example shows above; use the `parent-class' to
+specify what parent (or derivative of that parent) you are targetting and fill
+in any `child-property' tags you need for that parent using `id' property to
+specify the property name and the `default' property for the value.
+ </para>
+ </refsect1>
+
<refsect1>
- <title>Icons</title>
- <para>The Glade palette and other components use icons to represent the various widget classes.
- It is a good idea to provide icons for your widget classes, as this
- enhances the user interface.</para>
+ <title>Icons</title>
+ <para>
+The Glade palette and other components use icons to represent the various widget classes.
+It is a good idea to provide icons for your widget classes, as this
+enhances the user interface.
+ </para>
- <para>Glade uses the GTK+ GtkIconTheme facility to provide icons for widget classes. Any icon
- available in the current icon theme can be used as an icon for a widget class.</para>
-
- <para>By default, an icon name of the format "widget-CATALOG_NAME-GENERIC_NAME"
- is assigned to every widget class. CATALOG_NAME is the value of catalog name attribute, and GENERIC_NAME is
- the value of an widget class's generic name attribute.</para>
-
- <para>To explicity set an icon name for a widget class, the "icon-name" attribute of the "glade-widget-class"
- element can be specified. This will override the default icon name assigned to the widget class.</para>
+ <para>
+Glade uses the GTK+ GtkIconTheme facility to provide icons for widget classes. Any icon
+available in the current icon theme can be used as an icon for a widget class.
+ </para>
- <para>Icon files can be installed under any system icon theme folder, but we recommend
- that you install them in glade's private icon theme folder:</para>
+ <para>
+By default, an icon name of the format "widget-CATALOG_NAME-GENERIC_NAME"
+is assigned to every widget class. CATALOG_NAME is the value of catalog name attribute,
+and GENERIC_NAME is the value of an widget class's generic name attribute.
+ </para>
- <programlisting>pkg-config --variable=pixmapdir gladeui-1.0</programlisting>
+ <para>
+To explicity set an icon name for a widget class, the "icon-name" attribute of the
+"glade-widget-class" element can be specified. This will override the default icon
+name assigned to the widget class.
+ </para>
- </refsect1>
- <refsect1>
- <title>Grouping widget classes in the catalog</title>
<para>
-The widgets are groups in different groups in the Glade UI. Those groups
-are defined in the catalog file as follows:
- <programlisting>
-<![CDATA[
-<glade-widget-group name="my-widgets" title="My widgets">
- <glade-widget-class-ref name="MyFirstWidget"/>
- <glade-widget-class-ref name="MysecondWidget"/>
-
- ...
-
-</glade-widget-group>]]></programlisting>
-The file should contain one or more widget groups.
+Icon files can be installed under any system icon theme folder, but we recommend
+that you install them in Glade's icon theme as previosly described.
</para>
</refsect1>
+
</refentry>
Modified: trunk/gladeui/glade-base-editor.c
==============================================================================
--- trunk/gladeui/glade-base-editor.c (original)
+++ trunk/gladeui/glade-base-editor.c Mon Apr 7 13:23:11 2008
@@ -1250,7 +1250,7 @@
* @child: the #GObject being changed.
* @type: the new type for @child.
*
- * Returns TRUE to stop signal emision.
+ * Returns: TRUE to stop signal emision.
*/
glade_base_editor_signals [SIGNAL_CHANGE_TYPE] =
g_signal_new ("change-type",
@@ -1269,7 +1269,7 @@
* @gchild: the child to get display name string to show in @gladebaseeditor
* treeview.
*
- * Returns a newly allocated string.
+ * Returns: a newly allocated string.
*/
glade_base_editor_signals [SIGNAL_GET_DISPLAY_NAME] =
g_signal_new ("get-display-name",
@@ -1290,7 +1290,8 @@
*
* Create a child widget here if something else must be done other than
* calling glade_command_create() such as creating an intermediate parent.
- * Returns the newly created #GladeWidget or NULL if child cant be created
+ *
+ * Returns: the newly created #GladeWidget or NULL if child cant be created
*/
glade_base_editor_signals [SIGNAL_BUILD_CHILD] =
g_signal_new ("build-child",
@@ -1327,7 +1328,8 @@
* @gchild: the #GladeWidget to move
*
* Move child here if something else must be done other than cut & paste.
- * Returns wheater child has been sucessfully moved or not.
+ *
+ * Returns: wheater child has been sucessfully moved or not.
*/
glade_base_editor_signals [SIGNAL_MOVE_CHILD] =
g_signal_new ("move-child",
@@ -1531,7 +1533,7 @@
* o The type name
* o The GType the editor will support
*
- * Returns a new GladeBaseEditor.
+ * Returns: a new GladeBaseEditor.
*/
GladeBaseEditor *
glade_base_editor_new (GObject *container, gboolean tree_like, ...)
@@ -1827,7 +1829,8 @@
* @help_markup: the help text
*
* This convenience function create a new modal window and packs @editor in it.
- * Returns the newly created window
+ *
+ * Returns: the newly created window
*/
GtkWidget *
glade_base_editor_pack_new_window (GladeBaseEditor *editor,
Modified: trunk/gladeui/glade-catalog.c
==============================================================================
--- trunk/gladeui/glade-catalog.c (original)
+++ trunk/gladeui/glade-catalog.c Mon Apr 7 13:23:11 2008
@@ -37,7 +37,6 @@
struct _GladeCatalog
{
- gchar *language; /* Library language, NULL means language is C */
gchar *library; /* Library name for backend support */
gchar *name; /* Symbolic catalog name */
@@ -123,7 +122,6 @@
catalog = g_slice_new0 (GladeCatalog);
- catalog->language = NULL;
catalog->library = NULL;
catalog->name = NULL;
catalog->dep_catalog = NULL;
@@ -191,7 +189,7 @@
if (!catalog->icon_prefix)
catalog->icon_prefix = g_strdup (catalog->name);
- if (catalog->init_function_name && catalog->language == NULL)
+ if (catalog->init_function_name)
catalog_get_function (catalog, catalog->init_function_name,
(gpointer) &catalog->init_function);
@@ -577,7 +575,6 @@
g_return_if_fail (GLADE_IS_CATALOG (catalog));
g_free (catalog->name);
- g_free (catalog->language);
g_free (catalog->library);
g_free (catalog->dep_catalog);
g_free (catalog->domain);
Modified: trunk/gladeui/glade-command.c
==============================================================================
--- trunk/gladeui/glade-command.c (original)
+++ trunk/gladeui/glade-command.c Mon Apr 7 13:23:11 2008
@@ -205,7 +205,7 @@
*
* Undo the effects of @command
*
- * Returns whether the command was successfully reversed
+ * Returns: whether the command was successfully reversed
*/
gboolean
glade_command_undo (GladeCommand *command)
@@ -1550,7 +1550,7 @@
* Creates a new widget using @adaptor and put in place of the @placeholder
* in the @project
*
- * Returns the newly created widget.
+ * Returns: the newly created widget.
*/
GladeWidget*
glade_command_create(GladeWidgetAdaptor *adaptor, GladeWidget *parent, GladePlaceholder *placeholder, GladeProject *project)
Modified: trunk/gladeui/glade-design-view.c
==============================================================================
--- trunk/gladeui/glade-design-view.c (original)
+++ trunk/gladeui/glade-design-view.c Mon Apr 7 13:23:11 2008
@@ -22,6 +22,15 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
+
+/**
+ * SECTION:glade-design-view
+ * @Title: GladeDesignView
+ * @Short_Description: A widget to embed the workspace.
+ *
+ * Use this widget to embed the currently active #GtkWindow
+ * in a given #GladeProject.
+ */
#include "config.h"
Modified: trunk/gladeui/glade-project.c
==============================================================================
--- trunk/gladeui/glade-project.c (original)
+++ trunk/gladeui/glade-project.c Mon Apr 7 13:23:11 2008
@@ -1146,7 +1146,7 @@
* @project: the #GladeProject the widget is added to
* @object: the #GObject to search
*
- * Returns whether this object is in this project.
+ * Returns: whether this object is in this project.
*/
gboolean
glade_project_has_object (GladeProject *project, GObject *object)
Modified: trunk/gladeui/glade-property.c
==============================================================================
--- trunk/gladeui/glade-property.c (original)
+++ trunk/gladeui/glade-property.c Mon Apr 7 13:23:11 2008
@@ -1330,7 +1330,7 @@
* glade_property_get_save_always:
* @property: A #GladeProperty
*
- * Returns whether this property is special cased
+ * Returns: whether this property is special cased
* to always be saved regardless of its default value.
*/
gboolean
Modified: trunk/gladeui/glade-utils.c
==============================================================================
--- trunk/gladeui/glade-utils.c (original)
+++ trunk/gladeui/glade-utils.c Mon Apr 7 13:23:11 2008
@@ -939,7 +939,7 @@
* glade_util_count_placeholders:
* @parent: a #GladeWidget
*
- * Returns the amount of #GladePlaceholders parented by @parent
+ * Returns: the amount of #GladePlaceholders parented by @parent
*/
gint
glade_util_count_placeholders (GladeWidget *parent)
Modified: trunk/gladeui/glade-widget-action.c
==============================================================================
--- trunk/gladeui/glade-widget-action.c (original)
+++ trunk/gladeui/glade-widget-action.c Mon Apr 7 13:23:11 2008
@@ -20,6 +20,16 @@
* Juan Pablo Ugarte <juanpablougarte gmail com>
*/
+/**
+ * SECTION:glade-widget-action
+ * @Title: GladeWidgetAction
+ * @Short_Description: Context menu and toolbar actions.
+ *
+ * Use #GladeWidgetAction to create custom routines to operate
+ * on widgets you add to glade, when running #GladeActionActivateFunc functions
+ * you should make sure to use #GladeCommand.
+ */
+
#include "glade-widget-action.h"
#include "config.h"
#include <glib/gi18n-lib.h>
Modified: trunk/gladeui/glade-widget-adaptor.c
==============================================================================
--- trunk/gladeui/glade-widget-adaptor.c (original)
+++ trunk/gladeui/glade-widget-adaptor.c Mon Apr 7 13:23:11 2008
@@ -1278,12 +1278,7 @@
GLADE_TAG_POST_CREATE_FUNCTION,
&symbol))
klass->post_create = symbol;
-
- if (glade_xml_load_sym_from_node (node, module,
- GLADE_TAG_GET_INTERNAL_CHILD_FUNCTION,
- &symbol))
- klass->get_internal_child = symbol;
-
+
if (glade_xml_load_sym_from_node (node, module,
GLADE_TAG_SET_FUNCTION,
&symbol))
@@ -1308,6 +1303,11 @@
GLADE_TAG_REMOVE_CHILD_FUNCTION,
&symbol))
klass->remove = symbol;
+
+ if (glade_xml_load_sym_from_node (node, module,
+ GLADE_TAG_REPLACE_CHILD_FUNCTION,
+ &symbol))
+ klass->replace_child = symbol;
if (glade_xml_load_sym_from_node (node, module,
GLADE_TAG_GET_CHILDREN_FUNCTION,
@@ -1320,8 +1320,8 @@
klass->child_set_property = symbol;
if (glade_xml_load_sym_from_node (node, module,
- GLADE_TAG_CHILD_GET_PROP_FUNCTION,
- &symbol))
+ GLADE_TAG_CHILD_GET_PROP_FUNCTION,
+ &symbol))
klass->child_get_property = symbol;
if (glade_xml_load_sym_from_node (node, module,
@@ -1330,9 +1330,9 @@
klass->child_verify_property = symbol;
if (glade_xml_load_sym_from_node (node, module,
- GLADE_TAG_REPLACE_CHILD_FUNCTION,
+ GLADE_TAG_GET_INTERNAL_CHILD_FUNCTION,
&symbol))
- klass->replace_child = symbol;
+ klass->get_internal_child = symbol;
if (glade_xml_load_sym_from_node (node, module,
GLADE_TAG_ACTION_ACTIVATE_FUNCTION,
@@ -2592,7 +2592,7 @@
* @container: The #GObject container
* @child: The #GObject child
*
- * Returns whether @child is infact inside @container.
+ * Returns: whether @child is infact inside @container.
*/
gboolean
glade_widget_adaptor_has_child (GladeWidgetAdaptor *adaptor,
@@ -2820,7 +2820,7 @@
* Checks whether or not this adaptor has support
* to interface with child objects.
*
- * Returns whether or not @adaptor is a container
+ * Returns: whether or not @adaptor is a container
*/
gboolean
glade_widget_adaptor_is_container (GladeWidgetAdaptor *adaptor)
Modified: trunk/gladeui/glade-widget-adaptor.h
==============================================================================
--- trunk/gladeui/glade-widget-adaptor.h (original)
+++ trunk/gladeui/glade-widget-adaptor.h Mon Apr 7 13:23:11 2008
@@ -57,7 +57,7 @@
* GWA_DEFAULT_WIDTH:
* @obj: A #GladeWidgetAdaptor
*
- * Returns the default width to be used when this widget
+ * Returns: the default width to be used when this widget
* is toplevel in the GladeDesignLayout
*/
#define GWA_DEFAULT_WIDTH(obj) \
@@ -68,7 +68,7 @@
* GWA_DEFAULT_HEIGHT:
* @obj: A #GladeWidgetAdaptor
*
- * Returns the default width to be used when this widget
+ * Returns: the default width to be used when this widget
* is toplevel in the GladeDesignLayout
*/
#define GWA_DEFAULT_HEIGHT(obj) \
@@ -307,7 +307,7 @@
const gchar *name);
/**
- * GladeActionActivatedFunc:
+ * GladeActionActivateFunc:
* @adaptor: A #GladeWidgetAdaptor
* @object: The #GObject
* @action_path: The action path
@@ -320,7 +320,7 @@
const gchar *action_path);
/**
- * GladeChildActionActivatedFunc:
+ * GladeChildActionActivateFunc:
* @adaptor: A #GladeWidgetAdaptor
* @container: The #GtkContainer
* @object: The #GObject
Modified: trunk/gladeui/glade-widget.c
==============================================================================
--- trunk/gladeui/glade-widget.c (original)
+++ trunk/gladeui/glade-widget.c Mon Apr 7 13:23:11 2008
@@ -379,7 +379,7 @@
* Feed an event to be handled on the project GladeWidget
* hierarchy.
*
- * Returns whether the event was handled or not.
+ * Returns: whether the event was handled or not.
*/
gboolean
glade_widget_event (GladeWidget *gwidget,
Modified: trunk/gladeui/glade-xml-utils.c
==============================================================================
--- trunk/gladeui/glade-xml-utils.c (original)
+++ trunk/gladeui/glade-xml-utils.c Mon Apr 7 13:23:11 2008
@@ -8,6 +8,17 @@
* Chema Celorio <chema gnome org>
*/
+/**
+ * SECTION:glade-xml-utils
+ * @Title: Xml Utils
+ * @Short_Description: An api to read and write xml.
+ *
+ * You may need these tools if you are implementing #GladeReadWidgetFunc
+ * and/or #GladeWriteWidgetFunc on your #GladeWidgetAdaptor to read
+ * and write widgets in custom ways
+ */
+
+
#include "config.h"
#include <string.h>
@@ -86,9 +97,9 @@
* glade_xml_get_content:
* @node_in: a #GladeXmlNode
*
- * Returns a string containing the content of @node_in.
- * Note: It is the caller's responsibility to free the memory used by this
- * string.
+ * Gets a string containing the content of @node_in.
+ *
+ * Returns: A newly allocated string
*/
gchar *
glade_xml_get_content (GladeXmlNode *node_in)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]