Inherits ViewCreatorAdapter.
|
bool | apply (CView *view, const UIAttributes &attributes, const IUIDescription *description) const override |
| Extract all the attribute values and apply them to the view. More...
|
|
CView * | create (const UIAttributes &attributes, const IUIDescription *description) const override |
| This is the factory method which will instantiate the view. More...
|
|
bool | getAttributeNames (std::list< std::string > &attributeNames) const override |
|
AttrType | getAttributeType (const std::string &attributeName) const override |
|
IdStringPtr | getBaseViewName () const override |
|
UTF8StringPtr | getDisplayName () const override |
|
IdStringPtr | getViewName () const override |
|
template<typename XView > |
void | registerAttributes (TCustomViewCreator< XView > const &iOther) |
| This method is called to register all the attributes from another CustomViewCreator (used in case of inheritance) More...
|
|
void | registerBitmapAttribute (std::string const &iName, typename BitmapAttribute::Getter iGetter, typename BitmapAttribute::Setter iSetter) |
| Registers a bitmap attribute with the given name and getter/setter. More...
|
|
void | registerBooleanAttribute (std::string const &iName, typename BooleanAttribute::Getter iGetter, typename BooleanAttribute::Setter iSetter) |
| Registers a boolean attribute with the given name and getter/setter. More...
|
|
void | registerColorAttribute (std::string const &iName, typename ColorAttribute::Getter iGetter, typename ColorAttribute::Setter iSetter) |
| Registers a color attribute with the given name and getter/setter. More...
|
|
void | registerDoubleAttribute (std::string const &iName, typename FloatAttribute< double >::Getter iGetter, typename FloatAttribute< double >::Setter iSetter) |
| Registers a double attribute with the given name and getter/setter. More...
|
|
void | registerFloatAttribute (std::string const &iName, typename FloatAttribute< float >::Getter iGetter, typename FloatAttribute< float >::Setter iSetter) |
| Registers a float attribute with the given name and getter/setter. More...
|
|
void | registerFontAttribute (std::string const &iName, typename FontAttribute::Getter iGetter, typename FontAttribute::Setter iSetter) |
| Registers a font attribute with the given name and getter/setter. More...
|
|
void | registerGradientAttribute (std::string const &iName, typename GradientAttribute::Getter iGetter, typename GradientAttribute::Setter iSetter) |
| Registers a gradient attribute with the given name and getter/setter. More...
|
|
void | registerIntAttribute (std::string const &iName, typename IntegerAttribute< int32_t >::Getter iGetter, typename IntegerAttribute< int32_t >::Setter iSetter) |
| Registers an int attribute with the given name and getter/setter. More...
|
|
template<typename TInt > |
void | registerIntegerAttribute (std::string const &iName, typename IntegerAttribute< TInt >::Getter iGetter, typename IntegerAttribute< TInt >::Setter iSetter) |
| Registers an Integer (any kind) attribute with the given name and getter/setter. More...
|
|
template<typename T > |
void | registerListAttribute (std::string const &iName, typename ListAttribute< T >::Getter iGetter, typename ListAttribute< T >::Setter iSetter, AttrValInitList< T > const &iAttributeValues) |
| Registers a list attribute with the given name and getter/setter. More...
|
|
void | registerMarginAttribute (std::string const &iName, typename MarginAttribute::Getter iGetter, typename MarginAttribute::Setter iSetter) |
| Registers a Margin attribute with the given name and getter/setter. More...
|
|
void | registerRangeAttribute (std::string const &iName, typename RangeAttribute::Getter iGetter, typename RangeAttribute::Setter iSetter) |
| Registers a Range attribute with the given name and getter/setter. More...
|
|
void | registerTagAttribute (std::string const &iName, typename TagAttribute::Getter iGetter, typename TagAttribute::Setter iSetter) |
| Registers a tag attribute with the given name and getter/setter. More...
|
|
void | registerVectorStringAttribute (std::string const &iName, typename VectorStringAttribute::Getter iGetter, typename VectorStringAttribute::Setter iSetter, char iDelimiter=',', bool iSkipEmptyEntries=false) |
| Registers a Range attribute with the given name and getter/setter. More...
|
|
| TCustomViewCreator (char const *iViewName=nullptr, char const *iDisplayName=nullptr, char const *iBaseViewName=VSTGUI::UIViewCreator::kCView) |
|
| ~TCustomViewCreator () override |
|
template<typename TView>
class pongasoft::VST::GUI::Views::TCustomViewCreator< TView >
Generic custom view creator base class.
Inherit from it and call the various "registerXX" methods in the constructor.
In case of inheritance, you do the following:
class CustomView1 : public CControl { ... };
class CustomView2 : public CustomView1 { ... };
public:
explicit CustomView1Creator(char const *iViewName = nullptr, char const *iDisplayName = nullptr) :
{
... register CustomView1 attributes here ...
}
};
public:
explicit CustomView2Creator(char const *iViewName = nullptr, char const *iDisplayName = nullptr) :
{
... register CustomView2 attributes here ...
}
};
- Note
- It is recommended to follow the convention that the view has an inner class called
Creator
in which case you should use the more convenient class CustomViewCreator
instead.