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

📄 aqdocking.hpp

📁 AutomatedDocking Library 控件源代码修改 适合Delphi 2009 和C++ Builder 20009 使用。 修正汉字不能正确显示问题
💻 HPP
📖 第 1 页 / 共 5 页
字号:
	
public:
	/* TWinControl.CreateParented */ inline __fastcall TaqSplitContainer(HWND ParentWindow) : Aqdockingbase::TaqCustomDockingContainer(ParentWindow) { }
	
};


typedef TMetaClass* TaqSplitContainerClass;

class DELPHICLASS TaqVerticalContainer;
class PASCALIMPLEMENTATION TaqVerticalContainer : public TaqSplitContainer
{
	typedef TaqSplitContainer inherited;
	
protected:
	virtual int __fastcall GetSplitterSize(void);
	virtual Types::TPoint __fastcall GetSplitterConstraints();
	virtual void __fastcall EndSplitterMove(int Coord);
	virtual bool __fastcall FindSplitterInfo(const Types::TPoint &Coord, Aqdockingbase::TaqSplitterItemInfo &Info);
	virtual bool __fastcall GetSplitterInfo(Aqdockingbase::TaqSplitterInfo &Info);
	virtual Controls::TCursor __fastcall GetSplitterCursor(void);
	virtual Aqdockingbase::TaqDockingPanelState __fastcall AdjustPanelState(Aqdockingbase::TaqCustomDockingControl* Child, const Types::TPoint &OldSize, const Types::TPoint &NewSize, Aqdockingbase::TaqDockingPanelState AState);
	virtual void __fastcall DoChildDock(int Index, Aqdockingbase::TaqCustomDockingControl* Child);
	__classmethod virtual TaqChildAlignment __fastcall GetChildAlignment();
	
public:
	__fastcall virtual TaqVerticalContainer(Classes::TComponent* AOwner);
	__classmethod virtual int __fastcall GetTypeId();
	virtual bool __fastcall UpdateDockingConstraints(void);
	virtual void __fastcall UpdateControl(void);
public:
	/* TaqCustomDockingContainer.Destroy */ inline __fastcall virtual ~TaqVerticalContainer(void) { }
	
public:
	/* TWinControl.CreateParented */ inline __fastcall TaqVerticalContainer(HWND ParentWindow) : TaqSplitContainer(ParentWindow) { }
	
};


class DELPHICLASS TaqHorizontalContainer;
class PASCALIMPLEMENTATION TaqHorizontalContainer : public TaqSplitContainer
{
	typedef TaqSplitContainer inherited;
	
protected:
	virtual int __fastcall GetSplitterSize(void);
	virtual Types::TPoint __fastcall GetSplitterConstraints();
	virtual void __fastcall EndSplitterMove(int Coord);
	virtual bool __fastcall FindSplitterInfo(const Types::TPoint &Coord, Aqdockingbase::TaqSplitterItemInfo &Info);
	virtual bool __fastcall GetSplitterInfo(Aqdockingbase::TaqSplitterInfo &Info);
	virtual Controls::TCursor __fastcall GetSplitterCursor(void);
	virtual Aqdockingbase::TaqDockingPanelState __fastcall AdjustPanelState(Aqdockingbase::TaqCustomDockingControl* Child, const Types::TPoint &OldSize, const Types::TPoint &NewSize, Aqdockingbase::TaqDockingPanelState AState);
	virtual void __fastcall DoChildDock(int Index, Aqdockingbase::TaqCustomDockingControl* Child);
	__classmethod virtual TaqChildAlignment __fastcall GetChildAlignment();
	
public:
	__fastcall virtual TaqHorizontalContainer(Classes::TComponent* AOwner);
	__classmethod virtual int __fastcall GetTypeId();
	virtual bool __fastcall UpdateDockingConstraints(void);
	virtual void __fastcall UpdateControl(void);
public:
	/* TaqCustomDockingContainer.Destroy */ inline __fastcall virtual ~TaqHorizontalContainer(void) { }
	
public:
	/* TWinControl.CreateParented */ inline __fastcall TaqHorizontalContainer(HWND ParentWindow) : TaqSplitContainer(ParentWindow) { }
	
};


class DELPHICLASS TaqTabInfo;
class PASCALIMPLEMENTATION TaqTabInfo : public System::TObject
{
	typedef System::TObject inherited;
	
public:
	int Index;
	int Origin;
	int Size;
	Aqdockingui::TaqTabItemState State;
	Aqdockingui::TaqTabItemPosition Position;
	System::UnicodeString Caption;
	int ImageIndex;
public:
	/* TObject.Create */ inline __fastcall TaqTabInfo(void) : System::TObject() { }
	/* TObject.Destroy */ inline __fastcall virtual ~TaqTabInfo(void) { }
	
};


class DELPHICLASS TaqTabInfoList;
class PASCALIMPLEMENTATION TaqTabInfoList : public Contnrs::TObjectList
{
	typedef Contnrs::TObjectList inherited;
	
public:
	TaqTabInfo* operator[](int Index) { return Items[Index]; }
	
private:
	TaqTabInfo* __fastcall GetItems(int Index);
	void __fastcall SetItems(int Index, const TaqTabInfo* Value);
	
public:
	__property TaqTabInfo* Items[int Index] = {read=GetItems, write=SetItems/*, default*/};
	void __fastcall SetDirty(int ChildIndex, System::UnicodeString Caption, int ImageIndex);
public:
	/* TObjectList.Create */ inline __fastcall TaqTabInfoList(void)/* overload */ : Contnrs::TObjectList() { }
	
public:
	/* TList.Destroy */ inline __fastcall virtual ~TaqTabInfoList(void) { }
	
};


#pragma option push -b-
enum TaqTabHitInfo { thNone, thButton, thTab, thTabButton };
#pragma option pop

struct TaqTabHitInfoRec
{
	
public:
	TaqTabHitInfo HitInfo;
	int TabIndex;
	Aqdockingui::TaqTabButtonKind Button;
};


class DELPHICLASS TaqDockCaptionButtonsExFriend;
class PASCALIMPLEMENTATION TaqDockCaptionButtonsExFriend : public Aqdockingbase::TaqDockCaptionButtonsEx
{
	typedef Aqdockingbase::TaqDockCaptionButtonsEx inherited;
	
public:
	/* TaqDockCaptionButtonsEx.Create */ inline __fastcall virtual TaqDockCaptionButtonsExFriend(Aqdockingbase::TaqCustomDockingControl* AOwner) : Aqdockingbase::TaqDockCaptionButtonsEx(AOwner) { }
	/* TaqDockCaptionButtonsEx.Destroy */ inline __fastcall virtual ~TaqDockCaptionButtonsExFriend(void) { }
	
};


class DELPHICLASS TaqInsideContainer;
class PASCALIMPLEMENTATION TaqInsideContainer : public Aqdockingbase::TaqCustomDockingContainer
{
	typedef Aqdockingbase::TaqCustomDockingContainer inherited;
	
private:
	TaqTabInfoList* FTabs;
	int FFirstVisibleTabIndex;
	int FLastVisibleTabIndex;
	int FCurrentTabIndex;
	bool FNavigateButtonVisible;
	Types::TRect FContainerButtonsRect;
	Aqdockingui::TaqDockButtonState FPrevButtonState;
	Types::TRect FPrevButtonRect;
	Aqdockingui::TaqDockButtonState FNextButtonState;
	Types::TRect FNextButtonRect;
	Aqdockingui::TaqDockButtonState FPopupButtonState;
	Types::TRect FPopupButtonRect;
	Aqdockingbase::TaqDockMenu* FTabMenu;
	Menus::TMenuItem* FTabsMenuItem;
	Menus::TPopupMenu* FTabsPopupMenu;
	int FHotTabIndex;
	int FDockTabIndex;
	Aqdockingui::TaqTabOrientation FOrientation;
	bool FMouseInControl;
	Aqdockingbase::TaqCustomDockingControl* FActiveTab;
	int FVirtualTabIndex;
	Aqdockingbase::TaqBooleanValue FShowCloseButtonOnTabs;
	Aqdockingbase::TaqBooleanValue FShowInsideContainerDockZones;
	Aqdockingbase::TaqBooleanValue FAdjustButtonSizeOnTabs;
	Aqdockingbase::TaqBooleanValue FShowTabsPopupButton;
	void __fastcall TopActionExecuted(System::TObject* Sender);
	void __fastcall BottomActionExecuted(System::TObject* Sender);
	void __fastcall TabMenuItemClick(System::TObject* Sender);
	void __fastcall SetCurrentTabIndex(int Index);
	int __fastcall GetTabCount(void);
	Aqdockingbase::TaqCustomDockingControl* __fastcall GetCurrentTab(void);
	void __fastcall SetFirstVisibleTabIndex(int Value);
	void __fastcall SetLastVisibleTabIndex(int Value);
	Types::TRect __fastcall GetTabRect(int Index);
	int __fastcall GetTabHeight(void);
	void __fastcall SetHotTabIndex(const int Value);
	void __fastcall UpdateTabButton(Aqdockingui::TaqDockButtonState &ButtonState, const Types::TRect &Rect, const Types::TPoint &Coord, Classes::TShiftState Shift);
	void __fastcall SetOrientation(const Aqdockingui::TaqTabOrientation Value);
	void __fastcall SetDockTabIndex(const int Value);
	Types::TRect __fastcall GetTabTargetRect(int ADockTabIndex);
	void __fastcall UpdateVisibility(void);
	void __fastcall SetCurrentTab(const Aqdockingbase::TaqCustomDockingControl* Value);
	void __fastcall UpdateCurrentTabIndex(int Index, bool Activation = true);
	Types::TRect __fastcall GetTabAreaRect();
	System::UnicodeString __fastcall GetTabCaption(int Index);
	int __fastcall GetTabImageIndex(int Index);
	TaqTabInfo* __fastcall GetTabInfo(int Index);
	TaqDockCaptionButtonsExFriend* __fastcall GetTabButtons(int Index);
	void __fastcall SetShowCloseButtonOnTabs(const Aqdockingbase::TaqBooleanValue Value);
	void __fastcall SetAdjustButtonSizeOnTabs(const Aqdockingbase::TaqBooleanValue Value);
	void __fastcall SetShowTabsPopupButton(const Aqdockingbase::TaqBooleanValue Value);
	bool __fastcall CanChangeTab(void);
	
protected:
	void __fastcall InvalidateTab(int TabIndex);
	void __fastcall CalcTabControl(void);
	void __fastcall DrawTabControl(void);
	void __fastcall CreateTabPopupMenu(void);
	void __fastcall CreateTabListMenu(void);
	void __fastcall FocusPage(bool Forward);
	void __fastcall InsertVirtualTab(int AIndex, const System::UnicodeString ACaption, int AImageIndex);
	int __fastcall GetVirtualTabIndex(void);
	void __fastcall DeleteTab(int AIndex);
	void __fastcall ResetTabControl(void);
	Aqdockingbase::TaqCustomDockingControl* __fastcall GetTabByTabIndex(int Index);
	void __fastcall ChildActionExecuted(System::TObject* Sender);
	Types::TPoint __fastcall GetButtonSize(bool DrawImage);
	void __fastcall ShowTabsPopupMenu(void);
	bool __fastcall DoPopupMenuTabs(Menus::TPopupMenu* AMenu, Types::TPoint &ACoord, unsigned Flags);
	virtual void __fastcall Loaded(void);
	virtual void __fastcall Paint(void);
	virtual void __fastcall DoChildDock(int Index, Aqdockingbase::TaqCustomDockingControl* Child);
	virtual void __fastcall DoChildUndock(int Index, Aqdockingbase::TaqCustomDockingControl* Child);
	virtual void __fastcall DoChildChanged(Aqdockingbase::TaqCustomDockingControl* Child, Aqdockingbase::TaqDockingControlChange Change);
	DYNAMIC int __fastcall AddChild(Aqdockingbase::TaqCustomDockingControl* AChild);
	DYNAMIC void __fastcall DeleteChild(Aqdockingbase::TaqCustomDockingControl* AChild);
	virtual void __fastcall SetDockingManager(const Aqdockingbase::TaqCustomDockingManager* Value);
	DYNAMIC bool __fastcall IsValidChildAlignment(Aqdockingbase::TaqDockingAlignment AAlign);
	virtual void __fastcall ValidateAlignment(Aqdockingbase::TaqCustomDockingControl* Child, Aqdockingbase::TaqDockingAlignment &AAlignment);
	virtual void __fastcall InvalidateChildren(void);
	virtual Types::TRect __fastcall CalcBoundsRect();
	virtual Types::TRect __fastcall GetCaptionRect();
	virtual void __fastcall AdjustClientRect(Types::TRect &Rect);
	virtual bool __fastcall GetSplitterInfo(Aqdockingbase::TaqSplitterInfo &Info);
	virtual bool __fastcall InternalRemoveFromDocking(bool Explicitly = false);
	virtual void __fastcall DoMakeVisible(Aqdockingbase::TaqCustomDockingControl* VisibleChild);
	virtual bool __fastcall IsChildVisible(Aqdockingbase::TaqCustomDockingControl* AChild);
	DYNAMIC void __fastcall ChildrenSaved(Aqdockingbase::TaqCustomDockingWriter* Writer);
	DYNAMIC void __fastcall ChildrenLoaded(Aqdockingbase::TaqCustomDockingReader* Reader);
	virtual void __fastcall CreateActions(void);
	virtual void __fastcall DoUpdateDockActions(void);
	virtual bool __fastcall CanInterceptAutoHide(Aqdockingbase::TaqCustomDockingControl* AControl);
	__classmethod virtual Aqdockingbase::TaqCustomPlacementInfoClass __fastcall GetPlacementInfoClass();
	DYNAMIC void __fastcall AfterDockingRead(void);
	virtual void __fastcall HandleOleDropActivity(const Types::TPoint &Pos, Aqdockingbase::TOleDropAction Action, GUID &Key);
	HIDESBASE MESSAGE void __fastcall CMMouseEnter(Messages::TMessage &Message);
	HIDESBASE MESSAGE void __fastcall CMMouseLeave(Messages::TMessage &Message);
	HIDESBASE MESSAGE void __fastcall CMVisibleChanged(Messages::TMessage &Message);
	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 MouseMove(Classes::TShiftState Shift, int X, int Y);
	__property int DockTabIndex = {read=FDockTabIndex, write=SetDockTabIndex, nodefault};
	__property TaqTabInfo* TabInfo[int Index] = {read=GetTabInfo};
	__property Aqdockingbase::TaqDockMenu* TabMenu = {read=FTabMenu};
	
public:
	__fastcall virtual TaqInsideContainer(Classes::TComponent* AOwner);
	__fastcall virtual ~TaqInsideContainer(void);
	int __fastcall GetTabIndexByCoord(const Types::TPoint &Coord);
	TaqTabHitInfoRec __fastcall GetHitInfo(const Types::TPoint &Coord);
	__classmethod virtual int __fastcall GetTypeId();
	virtual void __fastcall SetFocus(void);
	virtual bool __fastcall UpdateDockingConstraints(void);
	virtual void __fastcall UpdateControl(void);
	__property Aqdockingbase::TaqBooleanValue AdjustButtonSizeOnTabs = {read=FAdjustButtonSizeOnTabs, write=SetAdjustButtonSizeOnTabs, nodefault};
	__property Aqdockingbase::TaqCustomDockingControl* CurrentTab = {read=GetCurrentTab, write=SetCurrentTab};
	__property int CurrentTabIndex = {read=FCurrentTabIndex, write=SetCurrentTabIndex, nodefault};
	__property Aqdockingbase::TaqBooleanValue ShowInsideContainerDockZones = {read=FShowInsideContainerDockZones, write=FShowInsideContainerDockZones, nodefault};
	__property Aqdockingbase::TaqBooleanValue ShowTabsPopupButton = {read=FShowTabsPopupButton, write=SetShowTabsPopupButton, nodefault};
	__property int FirstVisibleTabIndex = {read=FFirstVisibleTabIndex, write=SetFirstVisibleTabIndex, nodefault};
	__property int HotTabIndex = {read=FHotTabIndex, write=SetHotTabIndex, nodefault};
	__property int LastVisibleTabIndex = {read=FLastVisibleTabIndex, write=SetLastVisibleTabIndex, nodefault};

⌨️ 快捷键说明

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