<!-- ##### SECTION Title ##### -->
BonoboWidget

<!-- ##### SECTION Short_Description ##### -->
Simplified embedding of widgets in Bonobo.

<!-- ##### SECTION Long_Description ##### -->
<para>
  Bonobo component embedding for hydrocephalic imbeciles.
</para>

<para>
  Pure cane sugar.
</para>

<para>
  This purpose of BonoboWidget is to make container-side use of Bonobo
  as easy as pie.  This widget has two functions:
  <orderedlist>
    <listitem>
      <para>
        Provide a simple wrapper for embedding Controls.  Embedding
        controls is already really easy, but BonoboWidget reduces the
        work from about 5 lines to 1.  To embed a given control, just
        do:
        <informalexample>
          <programlisting>
       bw = bonobo_widget_new_control ("id for control", toplevel_ui_handler);
       gtk_container_add (some_container, bw);
          </programlisting>
        </informalexample>
      </para>

      <para>
        You are free to make the 2nd (UIContainer) argument to
        bonobo_widget_new_control() be CORBA_OBJECT_NIL.
      </para>
    </listitem>

    <listitem>
      <para>
        To provide an extremely simple wrapper for using Monikers. In
      fact all BonoboWidget use uses the OAFIID: moniker to activate
      its sub-components. However monikers (#bonobo-moniker-util) are
      far more powerful than this:
        <informalexample>
          <programlisting>
	         bw = bonobo_widget_new_control ("file:/demo/a.jpeg", toplevel_ui_handler);
          </programlisting>
        </informalexample>
	will launch an application that can render a jpeg as a control,
      usualy the Eye Of Gnome (EOG), and embed it as a control.
      </para>
    </listitem>
  </orderedlist>
</para>

<para>
   There are also functions for fetching and setting values in the
   Control PropertyBag, but the use of these functions is
   discouraged. 
</para>

<!-- ##### SECTION See_Also ##### -->
<para>
   Object activation happens with bonobo_get_object().
</para>

<para>
   #BonoboControl, #BonoboControlFrame, #BonoboObject, #BonoboView,
   #BonoboEmbeddable, #BonoboUIContainer, #BonoboItemContainer. 
</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### STRUCT BonoboWidget ##### -->
<para>

</para>


<!-- ##### STRUCT BonoboWidgetPrivate ##### -->
<para>

</para>


<!-- ##### STRUCT BonoboWidgetClass ##### -->
<para>

</para>

@bin_class: 
@dummy: 

<!-- ##### FUNCTION bonobo_widget_get_objref ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_new_control ##### -->
<para>

</para>

@moniker: 
@uic: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_new_control_from_objref ##### -->
<para>

</para>

@control: 
@uic: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_get_control_frame ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_get_ui_container ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### USER_FUNCTION BonoboWidgetAsyncFn ##### -->
<para>

</para>

@widget: 
@ev: 
@user_data: 


<!-- ##### FUNCTION bonobo_widget_new_control_async ##### -->
<para>

</para>

@moniker: 
@uic: 
@fn: 
@user_data: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_construct_control_from_objref ##### -->
<para>

</para>

@bw: 
@control: 
@uic: 
@ev: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_construct_control ##### -->
<para>

</para>

@bw: 
@moniker: 
@uic: 
@ev: 
@Returns: 


<!-- ##### FUNCTION bonobo_widget_set_property ##### -->
<para>

</para>

@control: 
@first_prop: 
@Varargs: 


<!-- ##### FUNCTION bonobo_widget_get_property ##### -->
<para>

</para>

@control: 
@first_prop: 
@Varargs: 


<!-- ##### MACRO bonobo_widget_get_uih ##### -->
<para>

</para>

@w: 
@Returns: 


