add possibility to register property type handlers at runtime and create new properties on client side
clean up code:
- move join vector/set method into utility header
- remove SetProperty -> not needed anymore
- move template methods into .hpp file
- rename visit* methods to visit again
- rename rename visit(ValueProperty & property) to handle()
- fix all AbstractPropertyVisitor subclasses
add PropertyExtension to example
reverse example additions
add additional property constructors
move template methods into separate .hpp; add missing constructors
add setRoot() to PropertyBrowser
replace typeid-based with template-based approach
remove protected visibility from visit methods; make accept warning optional; remove unused visit methods from PropertyPainter
rename valueAsString to toString
WIP commit
introduce ClassProperty that expects Type to be Class with toString() and static fromString() method
add abstract fromString() method to ValueProperty
add regex utility methods
...
add toString() and fromString() methods to ValueProperty
rename Utility.(h|hpp|cpp) to util.*
fix util::extract(); add fromString() to Property<bool>; make use of fromString() in PropertyDeserializer; fix VectorProperty<>; add util::trim()
this is important
add api macro to functions
remove visit method declaration
add EnumProperty and add example
improve property example
refine trim interface