Basic implementation of the IPackageControl interface. We suggest to use it as a base class for your package controls.
You can find more information in comments below. Overrided methods can be found in corresponding base class or interface.
class CPackageControl :public virtual IPackageControl, public CPackageEntity
{
public:
bool isDialogBox() override; // Return false. Should be overwritten by derived class to return true if control is correct dialog box one
void Save(Variant &dest, IPropertyList *properties, IEventList *events) override;
void Load(const Variant &src, IPropertyList *properties, IEventList *events) override;
void Export(std::wofstream &f, const String &shift, const String &owner, IPropertyList *properties, IEventList *events, const String &form, const String &dialog_box) override;
void ExportExtra(std::wofstream &f, const String &shift, IControl *control) override;
bool CreateChild(IControl *parent, IControl **child, IPackageControlListener *listener = nullptr) override; // Creates child control if parent control is derived from IControlCreateChild
bool CreateListItem(IComponent *component, IListItem *parent, IListItem **item, IPackageControlListener *listener = nullptr) override; // Creates nothing. Return false
CPackageControl(
IPackage *package, // Package to which the entity belongs
const String &ns); // Namespace to which the entity belongs
};
Namespace: | nitisa |
Include: | Nitisa/Package/Core/PackageControl.h |