<?xml version="1.0"?>
<gstructs xmlns:attr="http://www.mysql.com/grt/struct-attribute">
    <requires file="structs.xml"/>
    <requires file="structs.db.mgmt.xml"/>
    <requires file="structs.model.xml"/>

    <gstruct name="ui.ModelPanel" parent="TransientObject">
        <members>
            <member name="model" type="object" struct-name="model.Model"/>
            <member name="commonSidebar" type="object" struct-name="mforms.ObjectReference"/>
            <member name="customData" type="dict"/>
        </members>
    </gstruct>

    <gstruct name="ui.ObjectEditor" parent="TransientObject" impl-data="1" force-impl="1">
        <members>
            <member name="object" type="object" struct-name="GrtObject"/>
            <member name="dockingPoint" type="object" struct-name="mforms.ObjectReference"/>
            <member name="customData" type="dict"/>
        </members> 
    </gstruct>

    <gstruct name="ui.db.ConnectPanel" parent="TransientObject" impl-data="1">
        <members>
            <member name="connection" type="object" struct-name="db.mgmt.Connection" delegate-get="1" delegate-set="1" calculated="1"/>
            <member name="view" type="object" struct-name="mforms.ObjectReference" delegate-get="1" calculated="1" read-only="1" attr:desc="reference to the toplevel mforms View of the connect panel"/>
            <method name="initialize" attr:desc="initializes the Connection Panel">
                <argument name="mgmt" type="object" struct-name="db.mgmt.Management"/>
                <return type="void"/>
             </method>

            <method name="initializeWithRDBMSSelector" attr:desc="initializes the Connection Panel">
                <argument name="mgmt" type="object" struct-name="db.mgmt.Management"/>
                <argument name="allowedRdbmsList" type="list" content-type="object" content-struct-name="db.mgmt.Rdbms"/>
                <return type="void"/>
            </method>

            <method name="saveConnectionAs" attr:desc="save the connection with the given name. Throws an exception if the connection name is duplicate or on other errors">
                <argument name="name" type="string"/>
                <return type="void"/>
            </method>
        </members>
    </gstruct>

</gstructs>
