<!-- ##### SECTION Title ##### -->
MateComponentWidget

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

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

<para>
  Pure cane sugar.
</para>

<para>
  This purpose of MateComponentWidget is to make container-side use of MateComponent
  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 MateComponentWidget reduces the
        work from about 5 lines to 1.  To embed a given control, just
        do:
        <informalexample>
          <programlisting>
       bw = matecomponent_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
        matecomponent_widget_new_control() be CORBA_OBJECT_NIL.
      </para>
    </listitem>

    <listitem>
      <para>
        To provide an extremely simple wrapper for using Monikers. In
      fact all MateComponentWidget use uses the OAFIID: moniker to activate
      its sub-components. However monikers (#matecomponent-moniker-util) are
      far more powerful than this:
        <informalexample>
          <programlisting>
	         bw = matecomponent_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 Mate (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 matecomponent_get_object().
</para>

<para>
   #MateComponentControl, #MateComponentControlFrame, #MateComponentObject, #MateComponentView,
   #MateComponentEmbeddable, #MateComponentUIContainer, #MateComponentItemContainer. 
</para>

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


<!-- ##### SECTION Image ##### -->


<!-- ##### STRUCT MateComponentWidget ##### -->
<para>

</para>


<!-- ##### STRUCT MateComponentWidgetPrivate ##### -->
<para>

</para>


<!-- ##### STRUCT MateComponentWidgetClass ##### -->
<para>

</para>

@bin_class: 
@dummy: 

<!-- ##### FUNCTION matecomponent_widget_get_objref ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### FUNCTION matecomponent_widget_new_control ##### -->
<para>

</para>

@moniker: 
@uic: 
@Returns: 


<!-- ##### FUNCTION matecomponent_widget_new_control_from_objref ##### -->
<para>

</para>

@control: 
@uic: 
@Returns: 


<!-- ##### FUNCTION matecomponent_widget_get_control_frame ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### FUNCTION matecomponent_widget_get_ui_container ##### -->
<para>

</para>

@bw: 
@Returns: 


<!-- ##### USER_FUNCTION MateComponentWidgetAsyncFn ##### -->
<para>

</para>

@widget: 
@ev: 
@user_data: 


<!-- ##### FUNCTION matecomponent_widget_new_control_async ##### -->
<para>

</para>

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


<!-- ##### FUNCTION matecomponent_widget_construct_control_from_objref ##### -->
<para>

</para>

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


<!-- ##### FUNCTION matecomponent_widget_construct_control ##### -->
<para>

</para>

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


<!-- ##### FUNCTION matecomponent_widget_set_property ##### -->
<para>

</para>

@control: 
@first_prop: 
@Varargs: 


<!-- ##### FUNCTION matecomponent_widget_get_property ##### -->
<para>

</para>

@control: 
@first_prop: 
@Varargs: 


<!-- ##### MACRO matecomponent_widget_get_uih ##### -->
<para>

</para>

@w: 
@Returns: 


