
"Peter Dimov" <pdimov@mmltd.net> wrote in message news:00ac01c4013e$6d63e580$1d00a8c0@pdimov2...
That a XML resource description is needed almost goes without saying, but why interpret or compile it? The GUI library should just be able to deserialize its objects from such an XML file (or any other archive, for that matter).
widget w = create_widget("description.xml");
That is an option, but I'd have to think for a while to offer a coherent theory why it may not be sufficient. In the meanwhile, I'll just name a capability that can be trivially implemented with a centralized run-time schema repository as opposed to a decentralized collection of objects created by de-serialization of such schema: support for the "ID" tag. That is, being able to write: list_widget lw = find_named_widget( "ListOfNames" ); or something to the same effect. Doing it as: list_widget lw = root->find( "EmployeeData" )->find( "PersonalDataPage" )->find( "ListOfNames" ); doesn't cut it because the actual hierarchy of windows may be an implementation detail determined by look-and-feel requirements and totally irrelevant to the code in question. Of course, the named objects can register themselves in a centralized directory, but this already places us on the path of intepreting at least _some_ information contained in the original schema... ...Max...