KeyWorksRW / wxUiEditor

RAD tool used to create and maintain wxWidgets UI elements.
Apache License 2.0
63 stars 7 forks source link

Overhaul XML files, add XML support to Data List #1352

Closed Randalphwa closed 8 months ago

Randalphwa commented 8 months ago

This is a major PR since it significantly changes how the XML files are used to setup the various node and generator declarations. Raw pointers are no longer used -- instead the XML files are processed by wxUiEditor itself to remove comments and whitespace, and then compress them using zlib before creating a wxue_data.cpp file. When wxUiEditor starts up, it will make calls to one of the wxue_data::get_...() functions to get the string to parse by pugixml (the string was previously a raw pointer in the XML file itself).

It's worth noting that there are no longer any limitations to the size of the XML files, and it is fine to add comments within the XML files since they get stripped out as part of the Data List processing.

The other part of this PR adds support for XML files, in particular condensed XML files that speeds up XML processing when the XML string is parsed.