SmartIDs - special characters

The special characters :, @, & and % have special meanings in SmartIDs. ":" terminates a component class or UI engine. A % at the start of a SmartID signals the use of a regular expression (see section 45.3). The other characters mark the beginning of a sub-item, like a table cell. If these characters should appear in a SmartID with their literal meaning, they must be escaped by prefixing them with \.

Example: A dialog title containing an email address is to be used as SmartID. The @ inside must be escaped like this: #abc\

A % at the beginning of a SmartID, directly after the #, can not be escaped. In this case it is better to place a prefix or the class between # and %. Now, % can be escaped with a \.

Example: A button has the label %. As SmartID, you can use #Button:\% or #Label=\%.

A ":" character that is part of a built-in generic class (see chapter 57), like Panel:TitledPanel, does not need to be escaped.