====== PreUIProxy ====== **//Inherited from//** [[class::uiproxy|UIProxy]], **//Inherited by//** NULL **//Friend class//** NULL **//Description//** **//Members//** * QTimer [[preuiproxy#m_ptimer|m_pTimer]] * PreObjectTreeHandler * [[preuiproxy#m_pobjecttreehdl|m_pObjectTreeHdl]] **//Public interface//** * [[preuiproxy#preuiproxy1|PreUIProxy]](MainFrame * frame,XDocument * doc) * [[preuiproxy#~preuiproxy|~PreUIProxy]]() * bool [[preuiproxy#onapplicationevent|onApplicationEvent]](EventTypeID et, XWord param) * void [[preuiproxy#registercmdmodules|registerCmdModules]](bool registerOut = false) * ulong [[preuiproxy#getitemcommandid|getItemCommandID]](int type, const XItem * pi) * virtual void [[preuiproxy#oncmdcommit|onCmdCommit]]() * virtual void [[preuiproxy#ondocloaded|onDocLoaded]]() * virtual void [[preuiproxy#activate|activate]]() * virtual void [[preuiproxy#deactivate|deactivate]]() * void [[preuiproxy#setobjectcontextmenu|setObjectContextMenu]](TreeNode * obj, QMenu * menu) * void [[preuiproxy#onobjecttreeevent|onObjectTreeEvent]](QEvent * e, EventType eventType) * XTreeModel * [[preuiproxy#createobjecttreemodel|createObjectTreeModel]]() * XRender * [[preuiproxy#getrender|getRender]]() * bool [[preuiproxy#iscommandenabled|isCommandEnabled]](ulong cid) * void [[preuiproxy#onuiresize|onUIResize]]() * void [[preuiproxy#start|start]]() * void [[preuiproxy#changeworkscene|changeWorkScene]](TypeID wid) * void [[preuiproxy#listproperty|listProperty]](TypeID type,const XItem * item,TypeID domainType ) * void [[preuiproxy#changeproperty|changeProperty]](const XItem * item, ulong cid, const QVariant * v) * void [[preuiproxy#autosave|autosave]]() ---- {{anchor:m_ptimer}} **QTimer m_pTimer** {{anchor:m_pobjecttreehdl}} **PreObjectTreeHandler * m_pObjectTreeHdl** ---- {{anchor:preuiproxy1}} **PreUIProxy(MainFrame * frame,XDocument * doc)** *function: 构造函数 *parameters: - [i]MainFrame * frame: 主框架指针 - [i]XDocument * doc: 文档指针 *return value: 无 {{anchor:~preuiproxy}} **~PreUIProxy()** *function: 析构函数 *parameters: NULL *return value: 无 {{anchor:onapplicationevent}} **bool onApplicationEvent(EventTypeID et, XWord param)** *function: 响应应用层发生的事件,如在该代理中处理返回true,否则返回false,交由MainFrame处理 *parameters: - [i]EventTypeID et: 应用事件类型 - [i] XWord param: 应用事件参数 *return value: 如在该代理中处理返回true,否则返回false {{anchor:getitemcommandid}} **ulong getItemCommandID(int type, const XItem * pi)** *function: *parameters: - [i]int type: - [i] const XItem * pi: *return value: {{anchor:oncmdcommit}} **virtual void onCmdCommit()** *function: 命令提交之后完成视图的切换 *parameters: NULL *return value: 无 {{anchor:ondocloaded}} **virtual void onDocLoaded()** *function: *parameters: NULL *return value: {{anchor:activate}} **virtual void activate()** *function: 将该界面代理激活 *parameters: NULL *return value: 无 {{anchor:deactivate}} **virtual void deactivate()** *function: 将该界面代理停用 *parameters: NULL *return value: 无 {{anchor:getrender}} **XRender * getRender()** *function: 获取图形渲染器 *parameters: NULL *return value: 图形渲染器指针 {{anchor:iscommandenabled}} **bool isCommandEnabled(ulong cid)** *function: 返回ID为cid的命令是否可用,在某些情况下根据文档的数据和状态,某些命令需要禁用 *parameters: - [i]ulong cid: 命令ID *return value: 如命令可用返回true,否则返回false {{anchor:onuiresize}} *function: 界面调整尺寸时调整各部分控件尺寸 *parameters: NULL *return value: 无 {{anchor:listproperty}} **void listProperty(TypeID type,const XItem * item,TypeID domainType )** *function: 列举对象树节点属性 *parameters: - [i]TypeID type: 节点类型 - [i] const XItem * item:数据对象指针 - [i] TypeID domainType: 数据对象所属域 *return value: 无 {{anchor:changeproperty}} **void changeProperty(const XItem * item, ulong cid, const QVariant * v)** *function: 修改对象属性 *parameters: - [i]const XItem * item: 数据对象指针 - [i] ulong cid: 修改属性所用到的命令ID - [i] const QVariant * v: 属性值 *return value: 无