Quote Originally Posted by ViRuSTriNiTy View Post
The only solution i had found was to use a "index"-"property name" map. With that in mind i would suggest you

1) enumerate all properties of your widget in the constructor of the property sheet class
2) remember those properties in the "index"-"property name" map
3) override each virtual function of the property sheet and return the appropriate property values by using the "index"-"property name" map

I'm sorry that i cannot post any additional code because it's lost. But i closely remember what i was doing back then.
Thanks for your reply.

Unfortunately, I'm getting really confused. First, I have difficulty understanding the the way indexes are assigned by Qt Designer to properties. Surely custom properties have indexes even if a custom property sheet does not exist. So does a custom property sheet prevent Qt Designer from assigning a property to a custom property? And what index ranges should be assigned to custom properties? From 0 (as Santosh Reddy suggests) or from mpDefaultPropertySheetExtension.count() , as you suggest? Also custom properties display the correct names given to them when declared with Q_PROPERTY(). What then is the purpose of QDesignerPropertySheetExtension::propertyName()?

What's more confusing is that nothing I do in my custom property sheet extension appears to show up in Qt Designer, even an exit() call or QCoreApplication::exit() does nothing. Furthermore without the use of a debugger I can't be absolutely sure that qt_extension<> returns a non-NULL default property sheet and that my custom property sheet is instantiated.

Very confused.

:(