Sophie

Sophie

distrib > PLD > ac > amd64 > media > dist > by-pkgid > fd2761970a77896f276e13daf3a9620f > files > 136

bonobo-devel-1.0.22-7.amd64.rpm

<HTML
><HEAD
><TITLE
>BonoboUISync</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.64
"><LINK
REL="HOME"
TITLE="Bonobo API Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Bonobo UI"
HREF="bonobo-ui.html"><LINK
REL="PREVIOUS"
TITLE="BonoboUIEngine"
HREF="bonobo-bonobo-ui-engine.html"><LINK
REL="NEXT"
TITLE="Writing Monikers"
HREF="bonobo-moniker-handlers.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Bonobo API Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="bonobo-bonobo-ui-engine.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="bonobo-ui.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="bonobo-moniker-handlers.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
></TABLE
></DIV
><H1
><A
NAME="BONOBO-BONOBO-UI-SYNC"
>BonoboUISync</A
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN16649"
></A
><H2
>Name</H2
>BonoboUISync&nbsp;--&nbsp;A Synchronizer object to keep a widget tree in sync with an XML tree.</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN16652"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;

void        (<A
HREF="bonobo-bonobo-ui-sync.html#BONOBOUISYNCSTATEFN"
>*BonoboUISyncStateFn</A
>)          (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
<GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  (<A
HREF="bonobo-bonobo-ui-sync.html#BONOBOUISYNCBUILDFN"
>*BonoboUISyncBuildFn</A
>)          (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
>* <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-CONSTRUCT"
>bonobo_ui_sync_construct</A
>      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="BONOBOUIENGINE"
>BonoboUIEngine</GTKDOCLINK
> *engine,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> is_recursive,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> has_widgets);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-IS-RECURSIVE"
>bonobo_ui_sync_is_recursive</A
>     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-HAS-WIDGETS"
>bonobo_ui_sync_has_widgets</A
>      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-REMOVE-ROOT"
>bonobo_ui_sync_remove_root</A
>      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *root);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-UPDATE-ROOT"
>bonobo_ui_sync_update_root</A
>      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *root);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-STATE"
>bonobo_ui_sync_state</A
>            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-STATE-PLACEHOLDER"
>bonobo_ui_sync_state_placeholder</A
>
                                            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
<GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-BUILD"
>bonobo_ui_sync_build</A
>            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
<GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-BUILD-PLACEHOLDER"
>bonobo_ui_sync_build_placeholder</A
>
                                            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-IGNORE-WIDGET"
>bonobo_ui_sync_ignore_widget</A
>    (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget);
<GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
>*      <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-GET-WIDGETS"
>bonobo_ui_sync_get_widgets</A
>      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-STAMP-ROOT"
>bonobo_ui_sync_stamp_root</A
>       (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-CAN-HANDLE"
>bonobo_ui_sync_can_handle</A
>       (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);
<GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-GET-ATTACHED"
>bonobo_ui_sync_get_attached</A
>     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);
void        <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-STATE-UPDATE"
>bonobo_ui_sync_state_update</A
>     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             const char *new_state);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-DO-SHOW-HIDE"
>bonobo_ui_sync_do_show_hide</A
>     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget);&#13;</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN16737"
></A
><H2
>Description</H2
><P
>The BonoboUISynchronizer is used internaly by the <GTKDOCLINK
HREF="BONOBOUIENGINE"
>BonoboUIEngine</GTKDOCLINK
>. Writing
one is a very advanced topic, and should only be attempted by carefuly study
of the code. No normal user should need to write his own synchronizer.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN16741"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN16743"
></A
><H3
><A
NAME="BONOBOUISYNCSTATEFN"
></A
>BonoboUISyncStateFn ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        (*BonoboUISyncStateFn)          (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16754"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16759"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16764"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16769"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16774"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
>&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16779"
></A
><H3
><A
NAME="BONOBOUISYNCBUILDFN"
></A
>BonoboUISyncBuildFn ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  (*BonoboUISyncBuildFn)          (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16790"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16795"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16800"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16805"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>pos</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16810"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
></P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16815"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
>&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16820"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-CONSTRUCT"
></A
>bonobo_ui_sync_construct ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
>* bonobo_ui_sync_construct      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="BONOBOUIENGINE"
>BonoboUIEngine</GTKDOCLINK
> *engine,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> is_recursive,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> has_widgets);</PRE
></TD
></TR
></TABLE
><P
>Used to construct a new synchronizer object</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16832"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16837"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>engine</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated engine</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16842"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>is_recursive</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> whether it deals with its children recursively</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16847"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>has_widgets</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> whether it has associated widgets.</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16852"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the new object.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16857"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-IS-RECURSIVE"
></A
>bonobo_ui_sync_is_recursive ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    bonobo_ui_sync_is_recursive     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);</PRE
></TD
></TR
></TABLE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16866"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16871"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> whether this deals with its children recursively</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16876"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-HAS-WIDGETS"
></A
>bonobo_ui_sync_has_widgets ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    bonobo_ui_sync_has_widgets      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);</PRE
></TD
></TR
></TABLE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16885"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16890"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> whether this deals with widgets</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16895"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-REMOVE-ROOT"
></A
>bonobo_ui_sync_remove_root ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_remove_root      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *root);</PRE
></TD
></TR
></TABLE
><P
>This is called when a 'root' or toplevel node is
removed that this synchronizer deals with. eg. in
the toolbar case, this might trigger hiding an
associated dock item.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16904"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16909"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>root</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the toplevel node to be removed.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16914"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-UPDATE-ROOT"
></A
>bonobo_ui_sync_update_root ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_update_root      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *root);</PRE
></TD
></TR
></TABLE
><P
>This flags the fact that a toplevel node has changed
and is used primarily by non-recursive handlers, such
as the keybinding sync method.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16923"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16928"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>root</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the toplevel node</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16933"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-STATE"
></A
>bonobo_ui_sync_state ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_state            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
>This method is used to synchronize the state of a <TT
CLASS="PARAMETER"
><I
>node</I
></TT
>
with that of a <TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>, by ensuring the pertainant
attributes are reflected in the widget view.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16947"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16952"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16957"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated command node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16962"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16967"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the parent of <TT
CLASS="PARAMETER"
><I
>node</I
></TT
></P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN16973"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-STATE-PLACEHOLDER"
></A
>bonobo_ui_sync_state_placeholder ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_state_placeholder
                                            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
>This synchronizes the state of a placeholder, there is
a default implementation for this method.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16985"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16990"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN16995"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated command node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17000"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17005"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the parent of <TT
CLASS="PARAMETER"
><I
>node</I
></TT
></P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17011"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-BUILD"
></A
>bonobo_ui_sync_build ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  bonobo_ui_sync_build            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
>This function causes a child widget to be build that matches
<TT
CLASS="PARAMETER"
><I
>node</I
></TT
>'s attributes. This should then be inserted by into
<TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>'s associated widget at position <TT
CLASS="PARAMETER"
><I
>pos</I
></TT
> in the container.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17026"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17031"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17036"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated command node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17041"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>pos</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the position in the parent container to insert at</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17046"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the parent of <TT
CLASS="PARAMETER"
><I
>node</I
></TT
> </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17052"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the freshly built widget.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17057"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-BUILD-PLACEHOLDER"
></A
>bonobo_ui_sync_build_placeholder ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  bonobo_ui_sync_build_placeholder
                                            (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             int *pos,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *parent);</PRE
></TD
></TR
></TABLE
><P
>As for <A
HREF="bonobo-bonobo-ui-sync.html#BONOBO-UI-SYNC-BUILD"
>bonobo_ui_sync_build</A
> but for placeholders</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17070"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17075"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17080"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated command node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17085"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>pos</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> position in the parent to insert the built widget</P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17090"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>parent</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the parent of <TT
CLASS="PARAMETER"
><I
>node</I
></TT
> </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17096"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the freshly built widget.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17101"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-IGNORE-WIDGET"
></A
>bonobo_ui_sync_ignore_widget ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    bonobo_ui_sync_ignore_widget    (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget);</PRE
></TD
></TR
></TABLE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17111"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17116"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17121"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> TRUE if this widget should be ignored in a container
this is the case for eg. menu tearoffs items, and toolbar popout items.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17126"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-GET-WIDGETS"
></A
>bonobo_ui_sync_get_widgets ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
>*      bonobo_ui_sync_get_widgets      (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);</PRE
></TD
></TR
></TABLE
><P
>This method is used to obtain a sensibly ordered list
of child widgets of the container associated with <TT
CLASS="PARAMETER"
><I
>node</I
></TT
>.
Essentialy this does something like gtk_container_children
but preserving the visible order of the widgets in the list.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17137"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17142"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17147"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> An ordered list of child widgets of <TT
CLASS="PARAMETER"
><I
>node</I
></TT
></P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17153"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-STAMP-ROOT"
></A
>bonobo_ui_sync_stamp_root ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_stamp_root       (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync);</PRE
></TD
></TR
></TABLE
><P
>This asks the synchronizer to stamp all its associated
root widget containers into the XML tree.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17161"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17166"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-CAN-HANDLE"
></A
>bonobo_ui_sync_can_handle ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    bonobo_ui_sync_can_handle       (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);</PRE
></TD
></TR
></TABLE
><P
>This is used to determine which, of multiple synchronizers
can be used to deal with a specific node type. Each synchronizer
deals with different types of node.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17176"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17181"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17186"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> TRUE if the synchronizer can deal with this node type</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17191"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-GET-ATTACHED"
></A
>bonobo_ui_sync_get_attached ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
>*  bonobo_ui_sync_get_attached     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node);</PRE
></TD
></TR
></TABLE
><P
>This is used to get an 'attached' widget - some
widgets have associated widgets that are coupled
in strange ways - eg. GtkMenuItem &lt;-&gt; GtkMenuShell
It is neccessary to store the GtkContainer item of
these couples in the XML tree, since then we can
do things more genericaly and cleanly.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17202"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17207"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17212"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17217"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> an assoicated widget or NULL if none exists.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17222"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-STATE-UPDATE"
></A
>bonobo_ui_sync_state_update ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        bonobo_ui_sync_state_update     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget,
                                             const char *new_state);</PRE
></TD
></TR
></TABLE
><P
>This is used to synchronize state with a stateful widget,
eg. when a "state" attribute is set, this is not reflected
in the normal 'state-sync' process, but occurs later with
a set of state_updates to avoid re-enterancy problems.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17231"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17236"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17241"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>new_state</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the new state</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN17246"
></A
><H3
><A
NAME="BONOBO-UI-SYNC-DO-SHOW-HIDE"
></A
>bonobo_ui_sync_do_show_hide ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    bonobo_ui_sync_do_show_hide     (<GTKDOCLINK
HREF="BONOBOUISYNC"
>BonoboUISync</GTKDOCLINK
> *sync,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *node,
                                             <A
HREF="bonobo-bonobo-ui-node.html#BONOBOUINODE"
>BonoboUINode</A
> *cmd_node,
                                             <GTKDOCLINK
HREF="GTKWIDGET"
>GtkWidget</GTKDOCLINK
> *widget);</PRE
></TD
></TR
></TABLE
><P
>This is a helper function that applies the hidden attribute
from either the <TT
CLASS="PARAMETER"
><I
>node</I
></TT
> or fallback to the <TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
> to the
<TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>.</P
><P
></P
><P
></P
><TABLE
CLASS="VARIABLELIST"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
WIDTH="100%"
BGCOLOR="#FFD0D0"
><TBODY
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17261"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>sync</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the synchronizer </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17266"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17271"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>cmd_node</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the associated command node </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17276"><SPAN
STYLE="white-space: nowrap"
><TT
CLASS="PARAMETER"
><I
>widget</I
></TT
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> the widget </P
></TD
></TR
><TR
><TD
ALIGN="RIGHT"
VALIGN="TOP"
WIDTH="20%"
><A
NAME="AEN17281"><SPAN
STYLE="white-space: nowrap"
><I
CLASS="EMPHASIS"
>Returns</I
> :</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
WIDTH="80%"
><P
> TRUE if the widget's hidden / shown state changed,
this is needed to work around some nasty dock sizing bugs.</P
></TD
></TR
></TBODY
></TABLE
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="bonobo-bonobo-ui-engine.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="bonobo-ui.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="bonobo-moniker-handlers.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>BonoboUIEngine</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Writing Monikers</B
></FONT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>