ASPiK SDK
VSTGUI::UIDescription Class Reference

XML description parser and view creator. More...

#include <uidescription.h>

Inheritance diagram for VSTGUI::UIDescription:
VSTGUI::ReferenceCounted< T > VSTGUI::IUIDescription VSTGUI::Xml::IHandler VSTGUI::IDependency VSTGUI::IReference VSTGUI::CompressedUIDescription

Classes

struct  FocusDrawing
 
struct  Impl
 

Public Types

enum  SaveFlags { kWriteWindowsResourceFile = 1 << 0, kWriteImagesIntoXMLFile = 1 << 1 }
 

Public Member Functions

 UIDescription (const CResourceDescription &xmlFile, IViewFactory *viewFactory=nullptr)
 
 UIDescription (Xml::IContentProvider *xmlContentProvider, IViewFactory *viewFactory=nullptr)
 
virtual bool parse ()
 
virtual bool save (UTF8StringPtr filename, int32_t flags=kWriteWindowsResourceFile)
 
virtual bool saveWindowsRCFile (UTF8StringPtr filename)
 
bool storeViews (const std::list< CView *> &views, OutputStream &stream, UIAttributes *customData=nullptr) const
 
bool restoreViews (InputStream &stream, std::list< SharedPointer< CView > > &views, UIAttributes **customData=nullptr)
 
UTF8StringPtr getFilePath () const
 
void setFilePath (UTF8StringPtr path)
 
void setSharedResources (const SharedPointer< UIDescription > &resources)
 
const SharedPointer< UIDescription > & getSharedResources () const
 
const UIAttributesgetViewAttributes (UTF8StringPtr name) const
 
void setController (IController *controller) const
 
CViewcreateView (UTF8StringPtr name, IController *controller) const override
 
CBitmapgetBitmap (UTF8StringPtr name) const override
 
CFontRef getFont (UTF8StringPtr name) const override
 
bool getColor (UTF8StringPtr name, CColor &color) const override
 
CGradientgetGradient (UTF8StringPtr name) const override
 
int32_t getTagForName (UTF8StringPtr name) const override
 
IControlListenergetControlListener (UTF8StringPtr name) const override
 
IControllergetController () const override
 
const IViewFactorygetViewFactory () const override
 
UTF8StringPtr lookupColorName (const CColor &color) const override
 
UTF8StringPtr lookupFontName (const CFontRef font) const override
 
UTF8StringPtr lookupBitmapName (const CBitmap *bitmap) const override
 
UTF8StringPtr lookupGradientName (const CGradient *gradient) const override
 
UTF8StringPtr lookupControlTagName (const int32_t tag) const override
 
bool getVariable (UTF8StringPtr name, double &value) const override
 
bool getVariable (UTF8StringPtr name, std::string &value) const override
 
void collectTemplateViewNames (std::list< const std::string *> &names) const override
 
void collectColorNames (std::list< const std::string *> &names) const override
 
void collectFontNames (std::list< const std::string *> &names) const override
 
void collectBitmapNames (std::list< const std::string *> &names) const override
 
void collectGradientNames (std::list< const std::string *> &names) const override
 
void collectControlTagNames (std::list< const std::string *> &names) const override
 
void changeColorName (UTF8StringPtr oldName, UTF8StringPtr newName)
 
void changeTagName (UTF8StringPtr oldName, UTF8StringPtr newName)
 
void changeFontName (UTF8StringPtr oldName, UTF8StringPtr newName)
 
void changeBitmapName (UTF8StringPtr oldName, UTF8StringPtr newName)
 
void changeGradientName (UTF8StringPtr oldName, UTF8StringPtr newName)
 
void changeColor (UTF8StringPtr name, const CColor &newColor)
 
void changeFont (UTF8StringPtr name, CFontRef newFont)
 
void changeGradient (UTF8StringPtr name, CGradient *newGradient)
 
void changeBitmap (UTF8StringPtr name, UTF8StringPtr newName, const CRect *nineparttiledOffset=nullptr)
 
void changeBitmapFilters (UTF8StringPtr bitmapName, const std::list< SharedPointer< UIAttributes > > &filters)
 
void collectBitmapFilters (UTF8StringPtr bitmapName, std::list< SharedPointer< UIAttributes > > &filters) const
 
void removeColor (UTF8StringPtr name)
 
void removeTag (UTF8StringPtr name)
 
void removeFont (UTF8StringPtr name)
 
void removeBitmap (UTF8StringPtr name)
 
void removeGradient (UTF8StringPtr name)
 
void changeAlternativeFontNames (UTF8StringPtr name, UTF8StringPtr alternativeFonts)
 
bool getAlternativeFontNames (UTF8StringPtr name, std::string &alternativeFonts) const
 
bool hasColorName (UTF8StringPtr name) const
 
bool hasTagName (UTF8StringPtr name) const
 
bool hasFontName (UTF8StringPtr name) const
 
bool hasBitmapName (UTF8StringPtr name) const
 
bool hasGradientName (UTF8StringPtr name) const
 
void updateViewDescription (UTF8StringPtr name, CView *view)
 
bool getTemplateNameFromView (CView *view, std::string &templateName) const
 
bool addNewTemplate (UTF8StringPtr name, UIAttributes *attr)
 
bool removeTemplate (UTF8StringPtr name)
 
bool changeTemplateName (UTF8StringPtr name, UTF8StringPtr newName)
 
bool duplicateTemplate (UTF8StringPtr name, UTF8StringPtr duplicateName)
 
bool setCustomAttributes (UTF8StringPtr name, UIAttributes *attr)
 
UIAttributesgetCustomAttributes (UTF8StringPtr name) const
 
UIAttributesgetCustomAttributes (UTF8StringPtr name, bool create)
 
bool getControlTagString (UTF8StringPtr tagName, std::string &tagString) const
 
bool changeControlTagString (UTF8StringPtr tagName, const std::string &newTagString, bool create=false)
 
bool calculateStringValue (UTF8StringPtr str, double &result) const
 
void registerListener (UIDescriptionListener *listener)
 
void unregisterListener (UIDescriptionListener *listener)
 
void setBitmapCreator (IBitmapCreator *bitmapCreator)
 
FocusDrawing getFocusDrawingSettings () const
 
void setFocusDrawingSettings (const FocusDrawing &fd)
 
void freePlatformResources ()
 
- Public Member Functions inherited from VSTGUI::ReferenceCounted< T >
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
void forget () override
 decrease refcount and delete object if refcount == 0
 
void remember () override
 increase refcount
 
virtual int32_t getNbReference () const
 get refcount
 
virtual void beforeDelete ()
 
- Public Member Functions inherited from VSTGUI::IDependency
virtual void addDependency (CBaseObject *obj)
 
virtual void removeDependency (CBaseObject *obj)
 
virtual void changed (IdStringPtr message)
 
virtual void deferChanges (bool state)
 

Static Public Member Functions

static bool parseColor (const std::string &colorString, CColor &color)
 

Static Public Attributes

static CViewAttributeID kTemplateNameAttributeID = 'uitl'
 
static IdStringPtr kMessageTagChanged = "kMessageTagChanged"
 
static IdStringPtr kMessageColorChanged = "kMessageColorChanged"
 
static IdStringPtr kMessageFontChanged = "kMessageFontChanged"
 
static IdStringPtr kMessageBitmapChanged = "kMessageBitmapChanged"
 
static IdStringPtr kMessageTemplateChanged = "kMessageTemplateChanged"
 
static IdStringPtr kMessageGradientChanged = "kMessageGradientChanged"
 
static IdStringPtr kMessageBeforeSave = "kMessageBeforeSave"
 
- Static Public Attributes inherited from VSTGUI::IUIDescription
static IdStringPtr kCustomViewName = "custom-view-name"
 

Protected Member Functions

void addDefaultNodes ()
 
bool saveToStream (OutputStream &stream, int32_t flags)
 
bool parsed () const
 
void setXmlContentProvider (Xml::IContentProvider *provider)
 
const CResourceDescriptiongetXmlFile () const
 

Additional Inherited Members

- Protected Types inherited from VSTGUI::IDependency
using DeferedChangesSet = std::set< IdStringPtr >
 
using DependentList = std::list< CBaseObject * >
 
- Static Protected Member Functions inherited from VSTGUI::IDependency
static void rememberObject (CBaseObject *obj)
 
static void forgetObject (CBaseObject *obj)
 
- Protected Attributes inherited from VSTGUI::IDependency
int32_t deferChangeCount {0}
 
DeferedChangesSet deferedChanges
 
DependentList dependents
 

Detailed Description

XML description parser and view creator.


The documentation for this class was generated from the following files: