[CELayoutEditor Update] Properties, Exceptions & more

Use this forum for:
- Discussion regarding unofficial CEGUI related tools, scripts and utilities.
- User to user help for the obsoleted CELayoutEditor and CEImagesetEditor tools.

Moderators: CEGUI MVP, CEGUI Team

User avatar
CEGUI Tools Developer (Retired)
Posts: 59
Joined: Tue Sep 11, 2007 16:57
Location: Lisbon, Portugal

[CELayoutEditor Update] Properties, Exceptions & more

Postby fjeronimo » Tue Dec 18, 2007 17:41

Hello guys,

I hope you are all ready for another CELayoutEditor SVN trunk update.

Thanks to Roger Orr for a few more exception handling tips. :)

Here's the detailed contents:


- New: Property grid - Several new features and enhancements were added to the property grid. The property grid now obeys the following rules:
    * Editable properties will have a white background in the 'Value' column. Readonly properties will display a light grey background instead.
    * "Fake" properties (name, and udim values) will have their value displayed in green.
    * "Real" CEGUI properties are divided in two groups: common properties (i.e. properties that appear in EVERY single widget in the current user selection) will have their value displayed in black; Non common properties' (appear in at least one but less that the whole selection) values appear in blueish tones.
    * Properties that maintain their default value (across all widgets in the current user selection that support them) appear in normal font weight. Those whose value is no longer default appear in bold.
    * In multi-selection, properties that have a common value across all widgets that support them in the current user selection display the value as is. If the value varies across the selection elements, the entry appears empty in the property grid.
    * Changes made to a property value affect all widgets in the current user selection that support it.
An image showing these changes is located at http://www.cegui.org.uk/gallery/displayimage.php?pid=25&fullsize=1.

- New: Exception severity - The VEH handler now verifies the exception severity and ignores all that are not errors or warnings since they aren't harmful to the program's execution.

- New: Re-Thrown exceptions - The application now detects re-thrown exceptions as a special case while trying to obtain its type. This allows the user to differentiate this normal scenario from others that lead to malformed exceptions.

- New: Stack trace limitation - CELayoutEditor now limits the number of retained stack traces by the VEH handler while a try/catch block isn't reached. This safeguard avoids any potential problems (read log space) in external code where the number of re-thrown or "eaten" exceptions might reach astounding levels. The MAXIMUM_STACK_TRACES define can be manipulated at will if debugging for a specific problem.

- New: Version - Added version info (version.h) to CELayoutEditor. This information appears in the "About Box". The defines CE_LAYOUT_EDITOR_MAJOR_VERSION, CE_LAYOUT_EDITOR_MINOR_VERSION and CE_LAYOUT_EDITOR_RELEASE_NUMBER allow the programmer to query the current editor's version.

- New: Built With - Added 'Built With' information (third party applications used to construct CELayoutEditor) to the "About" box.

- Change: Display mode - The skin multi-selection display mode radio box has been expanded to properties as well. When 'Show All' option is chosen, all the properties that appear in at least one element in the current user selection will be displayed in the property grid (i.e. common and non common properties). If 'Show Only Common' is picked instead, only the properties that appear in EVERY single element in the current user selection will be displayed (i.e. common properties).

- Change: Documentation - Updated readme.txt and AUTHORS.txt files.

- Change: GetPropertyIterator() - Replaced all occurrences of getIterator() by getPropertyIterator() to access the properties of a window so as to not confuse the compiler with EventSet and PropertySet (which requires a couple of casts to fix).


Code: Select all

CEGUI::PropertySet::Iterator propIt = (wx_static_cast(CEGUI::PropertySet*, wx_const_cast(CEGUI::Window*, pWindow)))->getIterator();


Code: Select all

CEGUI::PropertySet::Iterator propIt = pWindow->getPropertyIterator();

- Change: Image & TextColours - The "Image" and "TextColours" properties are no longer "fake" properties but instead normal ones.

- Change: Code comments - Improved and added some code comments (our perpetual task).

- Removal: GetProperty() - Removed EditorDocument::GetProperty() obsolete function.

- BugFix: Splash Screen - The splash screen file (splash.png) is now copied in the post-build step to both the VS2003 (VC++7.1) and VS2005 (VC++8) directories, thus avoiding the 'file not found' error if run from inside the VS IDE.


Frederico Jerónimo
Ignite Games - http://www.ignite-games.com
Ignite Games Institutional Site - http://we.ignite-games.com

User avatar
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands

Postby scriptkid » Wed Dec 19, 2007 09:24


nice update! Clear sample image as well. I'm glad you found out how to use the gallery :)

The bolding of none default values sounds usable too. Finally: i don't think there was a getPropertyIterator when i initially worked on the editor. This looks like a clean 'fix'.

Check out my released snake game using Cegui!

Just popping in
Just popping in
Posts: 1
Joined: Sun Jan 06, 2008 17:12
Location: Niskayuna, NY

Postby BS-er » Tue Jan 08, 2008 01:17

This is a very neat and handy tool. Great job.

If there is anything that is giving me trouble, it is events. Any that I add manually don't get preserved with any changes made using the editor.

It would be awesome to have a list of events to choose from specific to each control type, where you just enter your script function name.

I'm new here so maybe this has been covered.

Anyway, great tool, and very useful.

Return to “Unofficial CEGUI-Related Tools”

Who is online

Users browsing this forum: No registered users and 1 guest