Differences between revisions 2 and 3
Revision 2 as of 2007-05-27 19:20:16
Size: 1138
Editor: ppp91-76-114-14
Comment:
Revision 3 as of 2007-05-27 19:21:14
Size: 1140
Editor: ppp91-76-114-14
Comment:
Deletions are marked like this. Additions are marked like this.
Line 19: Line 19:
After parsing XRC into DOM (using xml.dom.minidom module) one 'xxx' object is generated for each <object> element, instantiating a class derived from '''xxx.Object''' base class (in module 'xxx'). For properties there is a base class class '''xxx.Property''' and specific derived classes such as '''xxx.FontProperty'''. After parsing XRC into DOM (using xml.dom.minidom module) one 'xxx' object is generated for each <object> element, instantiating a class derived from '''xxx.Object''' base class (in module 'xxx'). For properties there is a base class class '''xxx.Property''' and specific derived classes such as '''xxx.Font``Property'''.

XRCed Data Model

Data model used by XRCed is using a set of classes providing interface to the DOM objects. This allows easy manipulation of arbitrary fragments of the XRC file while caching only the editable data in the interface objects.

XRC file has the following structure:

<?xml version="1.0" ?>
<resource>
  <object class="class_name" name="XRC_id">
    <property_name>property_value</property_name>
    ...
  </object>
</resource>

Where property_name stands for property name tags such as 'label', 'orientation', etc.

After parsing XRC into DOM (using xml.dom.minidom module) one 'xxx' object is generated for each <object> element, instantiating a class derived from xxx.Object base class (in module 'xxx'). For properties there is a base class class xxx.Property and specific derived classes such as xxx.FontProperty.

Module 'components' contains classes derived from xxxObject, which provide specific interface to various interface elements. This module is populated at run-time from the installed 'xxx-plugins' by the plugin manager subsystem.

(to be continued)

XRCed Data Model (last edited 2008-03-11 10:50:18 by localhost)

NOTE: To edit pages in this wiki you must be a member of the TrustedEditorsGroup.