⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 advpreviewmenu.hpp

📁 Delphi的Office 2007风格界面控件
💻 HPP
📖 第 1 页 / 共 3 页
字号:
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property bool CanSelect = {read=FCanSelect, write=FCanSelect, nodefault};
	__property AnsiString Caption = {read=FCaption, write=SetCaption};
	__property bool Enabled = {read=FEnabled, write=SetEnabled, default=1};
	__property int ImageIndex = {read=FImageIndex, write=SetImageIndex, default=-1};
	__property Gdipicture::TGDIPPicture* DisabledPicture = {read=FIDisabledPicture, write=SetDisabledPicture};
	__property Gdipicture::TGDIPPicture* Picture = {read=FIPicture, write=SetPicture};
	__property Advhintinfo::TAdvHintInfo* OfficeHint = {read=FOfficeHint, write=SetOfficeHint};
	__property TAdvPreviewSubMenuItems* SubItems = {read=FSubItems, write=SetSubItems};
	__property AnsiString SubMenuCaption = {read=FSubMenuCaption, write=SetSubMenuCaption};
	__property bool Separator = {read=FSeparator, write=SetSeparator, nodefault};
	__property int SubMenuItemSpacing = {read=FSubMenuItemSpacing, write=SetSubMenuItemSpacing, nodefault};
	__property AnsiString ShortCutHint = {read=FShortCutHint, write=FShortCutHint};
	__property AnsiString ShortCutSubItemsHint = {read=FShortCutSubItemsHint, write=FShortCutSubItemsHint};
	__property int Tag = {read=FTag, write=FTag, default=0};
};


class DELPHICLASS TAdvPreviewMenuItems;
class PASCALIMPLEMENTATION TAdvPreviewMenuItems : public Classes::TCollection 
{
	typedef Classes::TCollection inherited;
	
public:
	TAdvPreviewMenuItem* operator[](int Index) { return Items[Index]; }
	
private:
	Classes::TPersistent* FOwner;
	HIDESBASE TAdvPreviewMenuItem* __fastcall GetItem(int Index);
	HIDESBASE void __fastcall SetItem(int Index, const TAdvPreviewMenuItem* Value);
	
protected:
	DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
	
public:
	__fastcall TAdvPreviewMenuItems(Classes::TPersistent* AOwner);
	__property TAdvPreviewMenuItem* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
	HIDESBASE TAdvPreviewMenuItem* __fastcall Add(void);
	HIDESBASE void __fastcall Delete(int Index);
	HIDESBASE TAdvPreviewMenuItem* __fastcall Insert(int Index);
public:
	#pragma option push -w-inl
	/* TCollection.Destroy */ inline __fastcall virtual ~TAdvPreviewMenuItems(void) { }
	#pragma option pop
	
};


class DELPHICLASS TAdvCustomPreviewMenuPanel;
class PASCALIMPLEMENTATION TAdvCustomPreviewMenuPanel : public Controls::TCustomControl 
{
	typedef Controls::TCustomControl inherited;
	
private:
	Classes::TComponent* FOwner;
	Classes::TNotifyEvent FOnShouldHide;
	bool FShowBorder;
	HIDESBASE MESSAGE void __fastcall CMMouseLeave(Messages::TMessage &Message);
	
protected:
	virtual void __fastcall Paint(void);
	DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
	__property Classes::TNotifyEvent OnShouldHide = {read=FOnShouldHide, write=FOnShouldHide};
	__property bool ShowBorder = {read=FShowBorder, write=FShowBorder, nodefault};
	virtual void __fastcall InitializeAndUpdate(void);
	
public:
	__fastcall virtual TAdvCustomPreviewMenuPanel(Classes::TComponent* AOwner);
	__fastcall virtual ~TAdvCustomPreviewMenuPanel(void);
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAdvCustomPreviewMenuPanel(HWND ParentWindow) : Controls::TCustomControl(ParentWindow) { }
	#pragma option pop
	
};


typedef void __fastcall (__closure *TButtonClickEvent)(System::TObject* Sender, int ButtonIndex);

typedef void __fastcall (__closure *TMenuItemClickEvent)(System::TObject* Sender, int ItemIndex);

typedef void __fastcall (__closure *TSubMenuItemClickEvent)(System::TObject* Sender, int ItemIndex, int SubMenuItemIndex);

typedef void __fastcall (__closure *TMenuDrawItemEvent)(System::TObject* Sender, Graphics::TCanvas* Canvas, int ItemIndex, const Types::TRect &R);

typedef void __fastcall (__closure *TSubMenuDrawItemEvent)(System::TObject* Sender, Graphics::TCanvas* Canvas, int ItemIndex, int SubMenuItemIndex, const Types::TRect &R);

typedef void __fastcall (__closure *TDrawButtonFrameTopEvent)(System::TObject* Sender, Graphics::TCanvas* Canvas, const Types::TRect &R);

class DELPHICLASS TAdvPreviewMenuPanel;
class DELPHICLASS TAdvPreviewMenu;
class DELPHICLASS TAdvCustomPreviewMenuStyler;
class DELPHICLASS TSelectionAppearance;
class PASCALIMPLEMENTATION TSelectionAppearance : public Advglowbutton::TGlowButtonAppearance 
{
	typedef Advglowbutton::TGlowButtonAppearance inherited;
	
private:
	Graphics::TColor FTextColor;
	Graphics::TColor FTextColorDisabled;
	Graphics::TColor FTextColorDown;
	Graphics::TColor FTextColorHot;
	Graphics::TColor FTextColorChecked;
	bool FRounded;
	Graphics::TFont* FFont;
	Graphics::TFont* FSubItemFont;
	Graphics::TFont* FSubItemTitleFont;
	void __fastcall SetTextColor(const Graphics::TColor Value);
	void __fastcall SetTextColorChecked(const Graphics::TColor Value);
	void __fastcall SetTextColorDisabled(const Graphics::TColor Value);
	void __fastcall SetTextColorDown(const Graphics::TColor Value);
	void __fastcall SetTextColorHot(const Graphics::TColor Value);
	void __fastcall SetRounded(const bool Value);
	void __fastcall SetFont(const Graphics::TFont* Value);
	void __fastcall SetSubItemFont(const Graphics::TFont* Value);
	void __fastcall SetSubItemTitleFont(const Graphics::TFont* Value);
	
public:
	__fastcall TSelectionAppearance(void);
	__fastcall virtual ~TSelectionAppearance(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property Graphics::TFont* Font = {read=FFont, write=SetFont};
	__property Graphics::TFont* SubItemTitleFont = {read=FSubItemTitleFont, write=SetSubItemTitleFont};
	__property Graphics::TFont* SubItemFont = {read=FSubItemFont, write=SetSubItemFont};
	__property Graphics::TColor TextColor = {read=FTextColor, write=SetTextColor, nodefault};
	__property Graphics::TColor TextColorHot = {read=FTextColorHot, write=SetTextColorHot, nodefault};
	__property Graphics::TColor TextColorDown = {read=FTextColorDown, write=SetTextColorDown, nodefault};
	__property Graphics::TColor TextColorChecked = {read=FTextColorChecked, write=SetTextColorChecked, nodefault};
	__property Graphics::TColor TextColorDisabled = {read=FTextColorDisabled, write=SetTextColorDisabled, nodefault};
	__property bool Rounded = {read=FRounded, write=SetRounded, nodefault};
};


class DELPHICLASS TVistaBackground;
class PASCALIMPLEMENTATION TVistaBackground : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	int FSteps;
	Graphics::TColor FColor;
	Graphics::TColor FColorTo;
	Classes::TNotifyEvent FOnChange;
	Graphics::TColor FColorMirror;
	Graphics::TColor FColorMirrorTo;
	Graphics::TColor FBorderColor;
	Advglowbutton::TGDIPGradient FGradientMirror;
	Advglowbutton::TGDIPGradient FGradient;
	Graphics::TColor FCaptionBackground;
	void __fastcall SetColor(const Graphics::TColor Value);
	void __fastcall SetColorTo(const Graphics::TColor Value);
	void __fastcall SetSteps(const int Value);
	void __fastcall Changed(void);
	void __fastcall SetBorderColor(const Graphics::TColor Value);
	void __fastcall SetColorMirror(const Graphics::TColor Value);
	void __fastcall SetColorMirrorTo(const Graphics::TColor Value);
	void __fastcall SetGradient(const Advglowbutton::TGDIPGradient Value);
	void __fastcall SetGradientMirror(const Advglowbutton::TGDIPGradient Value);
	
public:
	__fastcall TVistaBackground(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property Graphics::TColor BorderColor = {read=FBorderColor, write=SetBorderColor, nodefault};
	__property Graphics::TColor CaptionBackground = {read=FCaptionBackground, write=FCaptionBackground, nodefault};
	__property Graphics::TColor Color = {read=FColor, write=SetColor, nodefault};
	__property Graphics::TColor ColorTo = {read=FColorTo, write=SetColorTo, nodefault};
	__property Graphics::TColor ColorMirror = {read=FColorMirror, write=SetColorMirror, nodefault};
	__property Graphics::TColor ColorMirrorTo = {read=FColorMirrorTo, write=SetColorMirrorTo, nodefault};
	__property Advglowbutton::TGDIPGradient Gradient = {read=FGradient, write=SetGradient, nodefault};
	__property Advglowbutton::TGDIPGradient GradientMirror = {read=FGradientMirror, write=SetGradientMirror, nodefault};
	__property int Steps = {read=FSteps, write=SetSteps, default=64};
	__property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
public:
	#pragma option push -w-inl
	/* TPersistent.Destroy */ inline __fastcall virtual ~TVistaBackground(void) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TAdvCustomPreviewMenuStyler : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	Advglowbutton::TGlowButtonAppearance* FButtonAppearance;
	TSelectionAppearance* FMenuItemAppearance;
	TVistaBackground* FFrameAppearance;
	Graphics::TColor FRightFrameColor;
	Graphics::TColor FLeftFrameColor;
	Graphics::TColor FRightFrameBorderColor;
	void __fastcall SetButtonAppearance(const Advglowbutton::TGlowButtonAppearance* Value);
	void __fastcall SetFrameAppearance(const TVistaBackground* Value);
	void __fastcall SetMenuItemAppearance(const TSelectionAppearance* Value);
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall Change(int PropID = 0x0);
	__property TVistaBackground* FrameAppearance = {read=FFrameAppearance, write=SetFrameAppearance};
	__property Graphics::TColor LeftFrameColor = {read=FLeftFrameColor, write=FLeftFrameColor, nodefault};
	__property Graphics::TColor RightFrameColor = {read=FRightFrameColor, write=FRightFrameColor, nodefault};
	__property Graphics::TColor RightFrameBorderColor = {read=FRightFrameBorderColor, write=FRightFrameBorderColor, nodefault};
	__property TSelectionAppearance* MenuItemAppearance = {read=FMenuItemAppearance, write=SetMenuItemAppearance};
	__property Advglowbutton::TGlowButtonAppearance* ButtonAppearance = {read=FButtonAppearance, write=SetButtonAppearance};
	
public:
	__fastcall virtual TAdvCustomPreviewMenuStyler(Classes::TComponent* AOwner);
	__fastcall virtual ~TAdvCustomPreviewMenuStyler(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
};


class DELPHICLASS TPreviewMenuWindow;
class PASCALIMPLEMENTATION TPreviewMenuWindow : public Forms::TCustomForm 
{
	typedef Forms::TCustomForm inherited;
	
private:
	bool FHideOnDeActivate;
	Classes::TComponent* FOwner;
	bool FShowBorder;
	Extctrls::TTimer* FHideTimer;
	Graphics::TColor FBorderColor;
	TAdvCustomPreviewMenuPanel* FPreviewMenuPanel;
	HIDESBASE MESSAGE void __fastcall WMActivate(Messages::TWMActivate &Message);
	HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Message);
	HIDESBASE MESSAGE void __fastcall WMKeyDown(Messages::TWMKey &Message);
	HIDESBASE MESSAGE void __fastcall CMDialogChar(Messages::TWMKey &Message);
	void __fastcall HideTimerOnTime(System::TObject* Sender);
	
protected:
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall Paint(void);
	HWND __fastcall GetParentWnd(void);
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
	DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -