struct CCL::ISkinEditSupport
#include <iskineditsupport.h>
struct ISkinEditSupport: public CCL::IClassAllocator
{
// methods
virtual const ITypeLibrary*CCL_API getTypeLibrary () const = 0;
virtual const ITypeInfo*CCL_API getViewBaseClass () const = 0;
virtual const ITypeInfo*CCL_API getFormClass () const = 0;
virtual tbool CCL_API suggestSourceFile (
String& sourceFile,
UIDRef cid,
StringRef initialName
) const = 0;
virtual tbool CCL_API suggestAssetFolder (IUrl& folder, UIDRef cid = kNullUID) const = 0;
virtual tbool CCL_API getSupportedFileTypes (
IFileTypeFilter& fileTypes,
UIDRef cid
) const = 0;
virtual IImage*CCL_API loadImage (StringRef fileName) const = 0;
virtual IMemoryStream*CCL_API loadBinaryFile (StringRef fileName) const = 0;
virtual SkinAttributeType CCL_API getAttributeType (
ISkinElement* element,
StringID attributeName
) const = 0;
virtual tbool CCL_API isVariantOrTabView (ISkinViewElement* viewElement) const = 0;
virtual tbool CCL_API canHaveChildViews (ISkinViewElement* viewElement) const = 0;
virtual ISkinViewElement*CCL_API getReferencedForm (ISkinViewElement* viewElement) const = 0;
virtual tbool CCL_API getSizeChange (
SkinValueChange& valueChange,
ISkinViewElement* viewElement,
RectRef newSize
) const = 0;
virtual tbool CCL_API detectSizeChange (
Rect& newSize,
ISkinViewElement* viewElement,
const SkinValueChange& valueChange
) const = 0;
virtual tbool CCL_API drawFormBackground (
IGraphics& graphics,
ISkinViewElement* viewElement
) const = 0;
virtual tbool CCL_API drawViewElement (
IGraphics& graphics,
ISkinViewElement* viewElement
) const = 0;
virtual tbool CCL_API getSourceCodeForElement (
String& sourceCode,
ISkinElement* element
) const = 0;
virtual void CCL_API setModelDirty (
ISkinModel::ElementType type,
ISkinElement* changedElement = nullptr
) = 0;
virtual tbool CCL_API saveModelChanges (IProgressNotify* progress = nullptr) = 0;
};