## MateComponentUIContainer MateComponentUIContainer — The container interface as implemented for MateComponentWindow |

## Synopsis

    struct              MateComponentUIContainer;
                        MateComponentUIContainerPrivate;
                        MateComponentUIContainerClass;
    MateComponentUIContainer * matecomponent_ui_container_new             (void);
    void                matecomponent_ui_container_set_engine      (MateComponentUIContainer *container,
                                                             MateComponentUIEngine *engine);
    MateComponentUIEngine *    matecomponent_ui_container_get_engine      (MateComponentUIContainer *container);

## Object Hierarchy

      GObject
       +----MateComponentObject
             +----MateComponentUIContainer

## Description

A MateComponentUIContainer is a very thin object, it implements the CORBA interface for doing UI merging, but none of the logic. In order to achieve the effect it is associated with a MateComponentUIEngine object. Traditionaly the UI container was associated with a MateComponentWindow however, this is now strongly deprecated, since the MateComponentUIContainer can be used with any MateComponentUIEngine, not just that used by MateComponentWindow.

Here is how your code should interact with the MateComponentUIContainer

Example 6. How to setup a MateComponentUIContainer

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    {
            MateComponentWindow      *window;
            MateComponentUIEngine    *engine;
            MateComponentUIContainer *container;
            window = MATECOMPONENT_WINDOW (
                    matecomponent_window_new ("Window", "My Test Application"));
            container = matecomponent_ui_container_new ();
            engine = matecomponent_window_get_ui_engine (window);
            matecomponent_ui_container_set_engine (container, engine);
            return window;
    }

## Details

### struct MateComponentUIContainer

    struct MateComponentUIContainer;

### MateComponentUIContainerPrivate

    typedef struct _MateComponentUIContainerPrivate MateComponentUIContainerPrivate;

### MateComponentUIContainerClass

    typedef struct {
    	MateComponentObjectClass parent;

    	POA_MateComponent_UIContainer__epv epv;

    	gpointer dummy[2];
    } MateComponentUIContainerClass;

### matecomponent_ui_container_new ()

    MateComponentUIContainer * matecomponent_ui_container_new             (void);

Returns : | a newly created MateComponentUIContainer

### matecomponent_ui_container_set_engine ()

    void                matecomponent_ui_container_set_engine      (MateComponentUIContainer *container,
                                                             MateComponentUIEngine *engine);

Associates the MateComponentUIContainer with a MateComponentUIEngine that it will use to handle all the UI merging requests.

`container` : | the container
`engine` : | the engine

### matecomponent_ui_container_get_engine ()

    MateComponentUIEngine *    matecomponent_ui_container_get_engine      (MateComponentUIContainer *container);

Get the associated MateComponentUIEngine

`container` : | the UI container
Returns : | the engine

## See Also

MateComponentUIComponent, MateComponentUIEngine, MateComponentWindow, MateComponentUISync, matecomponent-ui-util(3)