📄 qicomponenteditorthemepanel.hpp
字号:
void __fastcall SetScheme5PropertyNames(const Classes::TStringList* Value);
void __fastcall SetScheme1Show(const bool Value);
void __fastcall SetScheme2Show(const bool Value);
void __fastcall SetScheme3Show(const bool Value);
void __fastcall SetScheme4Show(const bool Value);
void __fastcall SetScheme5Show(const bool Value);
void __fastcall SetScheme1Title(const AnsiString Value);
void __fastcall SetScheme2Title(const AnsiString Value);
void __fastcall SetScheme3Title(const AnsiString Value);
void __fastcall SetScheme4Title(const AnsiString Value);
void __fastcall SetScheme5Title(const AnsiString Value);
void __fastcall Scheme1ComboChange(System::TObject* Sender);
void __fastcall Scheme2ComboChange(System::TObject* Sender);
void __fastcall Scheme3ComboChange(System::TObject* Sender);
void __fastcall Scheme4ComboChange(System::TObject* Sender);
void __fastcall Scheme5ComboChange(System::TObject* Sender);
void __fastcall Scheme1ComboDropDown(System::TObject* Sender);
void __fastcall Scheme2ComboDropDown(System::TObject* Sender);
void __fastcall Scheme3ComboDropDown(System::TObject* Sender);
void __fastcall Scheme4ComboDropDown(System::TObject* Sender);
void __fastcall Scheme5ComboDropDown(System::TObject* Sender);
void __fastcall SetScheme1EnableModify(const bool Value);
void __fastcall SetScheme2EnableModify(const bool Value);
void __fastcall SetScheme3EnableModify(const bool Value);
void __fastcall SetScheme4EnableModify(const bool Value);
void __fastcall SetScheme5EnableModify(const bool Value);
void __fastcall Scheme1AddButtonClick(System::TObject* Sender);
void __fastcall Scheme2AddButtonClick(System::TObject* Sender);
void __fastcall Scheme3AddButtonClick(System::TObject* Sender);
void __fastcall Scheme4AddButtonClick(System::TObject* Sender);
void __fastcall Scheme5AddButtonClick(System::TObject* Sender);
void __fastcall Scheme1DeleteButtonClick(System::TObject* Sender);
void __fastcall Scheme2DeleteButtonClick(System::TObject* Sender);
void __fastcall Scheme3DeleteButtonClick(System::TObject* Sender);
void __fastcall Scheme4DeleteButtonClick(System::TObject* Sender);
void __fastcall Scheme5DeleteButtonClick(System::TObject* Sender);
void __fastcall AcceptPreviewButtonClick(System::TObject* Sender);
void __fastcall LoadFromXMLFile(void);
bool __fastcall SaveToXMLFile(void);
void __fastcall ClearSelectedSchemes(void);
void __fastcall SchemeComboChange(Qstdctrls::TComboBox* SchemeCombo, bool IsOverall, Qieditorbasiccomponents::TiComponentEditorButton* SchemeDeleteButton);
void __fastcall SchemeAdd(Qstdctrls::TComboBox* SchemeCombo, AnsiString SchemeTypeTitle, Classes::TStringList* SchemeTypeList, Classes::TStringList* SchemePropertyNames);
void __fastcall CreateNewScheme(AnsiString SchemeName, Classes::TStringList* SchemeList, Classes::TStringList* PropertyNameList);
void __fastcall SeparateNameValue(AnsiString AText, AnsiString &Name, AnsiString &Value);
AnsiString __fastcall CombineNameValue(AnsiString Name, AnsiString Value);
Classes::TStringList* __fastcall GetSchemeTypeListByName(AnsiString Name);
int __fastcall UserSchemeNameExist(AnsiString Name, Classes::TStringList* SchemeTypeList);
void __fastcall LoadSchemes(Qiclasses::TiXMLMemoryStream* FileStream, TMetaClass* SchemeListClass);
void __fastcall SaveSchemeType(Qiclasses::TiXMLMemoryStream* Stream, Classes::TStringList* SchemeTypeList, AnsiString SchemeTitle);
void __fastcall GetThemePaths(AnsiString &IocompPathName, AnsiString &UserPathName);
void __fastcall TransferSchemeData(Classes::TStringList* TypeList);
void __fastcall SetProperty(Classes::TPersistent* Instance, AnsiString PropertyNameString, AnsiString PropertyValueString);
AnsiString __fastcall GetProperty(Classes::TPersistent* Instance, AnsiString PropertyNameString);
Typinfo::PPropInfo __fastcall GetPropertyInfo(Classes::TPersistent* &Instance, AnsiString PropertyNameString);
void __fastcall ComboBoxDrawItem(System::TObject* Control, int Index, const Types::TRect &Rect, Qstdctrls::TOwnerDrawState State, bool &Handled);
void __fastcall SetAutoAcceptPreview(const bool Value);
void __fastcall OpenMaintenance(System::TObject* Sender, Qcontrols::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
void __fastcall CleanScheme(Classes::TStringList* SchemeTypeList, Classes::TStringList* SchemePropertyNames, bool NoConfirmation);
protected:
DYNAMIC void __fastcall DoEnter(void);
void __fastcall DoResize(void);
void __fastcall ScrollBoxResize(System::TObject* Sender);
virtual void __fastcall Loaded(void);
public:
__fastcall virtual TiComponentEditorThemePanel(Classes::TComponent* AOwner);
__fastcall virtual ~TiComponentEditorThemePanel(void);
void __fastcall ResetThemePanel(void);
void __fastcall ReCenterPreview(void);
__property Qcontrols::TWidgetControl* iComponentPreview = {read=FiComponentPreview, write=SetiComponentPreview};
__property Classes::TNotifyEvent OnAcceptChanges = {read=FOnAcceptChanges, write=FOnAcceptChanges};
void __fastcall CleanAllSchemes(void);
Classes::TStringList* __fastcall GetSchemeList(int Index);
AnsiString __fastcall GetSchemeName(int Index);
__published:
__property bool Scheme1EnableModify = {read=FScheme1EnableModify, write=SetScheme1EnableModify, nodefault};
__property bool Scheme2EnableModify = {read=FScheme2EnableModify, write=SetScheme2EnableModify, nodefault};
__property bool Scheme3EnableModify = {read=FScheme3EnableModify, write=SetScheme3EnableModify, nodefault};
__property bool Scheme4EnableModify = {read=FScheme4EnableModify, write=SetScheme4EnableModify, nodefault};
__property bool Scheme5EnableModify = {read=FScheme5EnableModify, write=SetScheme5EnableModify, nodefault};
__property bool Scheme1IsOverall = {read=FScheme1IsOverall, write=FScheme1IsOverall, nodefault};
__property bool Scheme2IsOverall = {read=FScheme2IsOverall, write=FScheme2IsOverall, nodefault};
__property bool Scheme3IsOverall = {read=FScheme3IsOverall, write=FScheme3IsOverall, nodefault};
__property bool Scheme4IsOverall = {read=FScheme4IsOverall, write=FScheme4IsOverall, nodefault};
__property bool Scheme5IsOverall = {read=FScheme5IsOverall, write=FScheme5IsOverall, nodefault};
__property Classes::TStringList* Scheme1PropertyNames = {read=FScheme1PropertyNames, write=SetScheme1PropertyNames};
__property Classes::TStringList* Scheme2PropertyNames = {read=FScheme2PropertyNames, write=SetScheme2PropertyNames};
__property Classes::TStringList* Scheme3PropertyNames = {read=FScheme3PropertyNames, write=SetScheme3PropertyNames};
__property Classes::TStringList* Scheme4PropertyNames = {read=FScheme4PropertyNames, write=SetScheme4PropertyNames};
__property Classes::TStringList* Scheme5PropertyNames = {read=FScheme5PropertyNames, write=SetScheme5PropertyNames};
__property bool Scheme1Show = {read=FScheme1Show, write=SetScheme1Show, nodefault};
__property bool Scheme2Show = {read=FScheme2Show, write=SetScheme2Show, nodefault};
__property bool Scheme3Show = {read=FScheme3Show, write=SetScheme3Show, nodefault};
__property bool Scheme4Show = {read=FScheme4Show, write=SetScheme4Show, nodefault};
__property bool Scheme5Show = {read=FScheme5Show, write=SetScheme5Show, nodefault};
__property AnsiString Scheme1Title = {read=FScheme1Title, write=SetScheme1Title};
__property AnsiString Scheme2Title = {read=FScheme2Title, write=SetScheme2Title};
__property AnsiString Scheme3Title = {read=FScheme3Title, write=SetScheme3Title};
__property AnsiString Scheme4Title = {read=FScheme4Title, write=SetScheme4Title};
__property AnsiString Scheme5Title = {read=FScheme5Title, write=SetScheme5Title};
__property bool AutoAcceptPreview = {read=FAutoAcceptPreview, write=SetAutoAcceptPreview, nodefault};
__property int SchemeCount = {read=FSchemeCount, write=FSchemeCount, nodefault};
__property Align = {default=5};
public:
#pragma option push -w-inl
/* TWidgetControl.CreateParented */ inline __fastcall TiComponentEditorThemePanel(Qt::QWidgetH* ParentWidget) : Qcontrols::TCustomControl(ParentWidget) { }
#pragma option pop
};
//-- var, const, procedure ---------------------------------------------------
#define UserFileSuffix "User.xml"
#define IocompFileSuffix ".xml"
#define DeleteSchemeMessage "Are you sure you want to permanentely delete this scheme e"\
"ntry?"
#define XMLFileExceptionMessage "Error Loading Scheme. XML File Malformed"
#define UserThemeOpenErrorMessage "Error Reading User-Defined Theme Settings"
#define IocompThemeOpenErrorMessage "Error Reading Pre-Defined Theme Settings"
#define IocompThemeSaveErrorMessage "Error Saving User-Defined Theme Settings"
#define NoNameEnteredErrorMessage "No name was entered. Aborting Save."
#define CleanSchemesMessage "Are you sure you want to clean this scheme of missing/erro"\
"neous properties?"
#define CleanAllSchemesMessage "Are you sure you want to clean ALL SCHEMES of missing/erro"\
"neous properties?"
#define AcceptChangesNotAssignedEM "OnAcceptChanges event not assigned. Scheme clean aborted."\
""
static const Byte SchemeComboWidth = 0xb8;
static const Shortint ButtonOffset = 0x3;
static const Shortint SchemeOffset = 0x27;
static const Shortint SquareOffset = 0x2;
static const Shortint SquareSize = 0xa;
} /* namespace Qicomponenteditorthemepanel */
using namespace Qicomponenteditorthemepanel;
#pragma option pop // -w-
#pragma option pop // -Vx
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // QiComponentEditorThemePanel
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -