601 lines
28 KiB
C++
601 lines
28 KiB
C++
// CodeGear C++Builder
|
|
// Copyright (c) 1995, 2008 by CodeGear
|
|
// All rights reserved
|
|
|
|
// (DO NOT EDIT: machine generated header) 'Sptbxtabs.pas' rev: 20.00
|
|
|
|
#ifndef SptbxtabsHPP
|
|
#define SptbxtabsHPP
|
|
|
|
#pragma delphiheader begin
|
|
#pragma option push
|
|
#pragma option -w- // All warnings off
|
|
#pragma option -Vx // Zero-length empty class member functions
|
|
#pragma pack(push,8)
|
|
#include <System.hpp> // Pascal unit
|
|
#include <Sysinit.hpp> // Pascal unit
|
|
#include <Windows.hpp> // Pascal unit
|
|
#include <Messages.hpp> // Pascal unit
|
|
#include <Classes.hpp> // Pascal unit
|
|
#include <Sysutils.hpp> // Pascal unit
|
|
#include <Controls.hpp> // Pascal unit
|
|
#include <Graphics.hpp> // Pascal unit
|
|
#include <Imglist.hpp> // Pascal unit
|
|
#include <Forms.hpp> // Pascal unit
|
|
#include <Dialogs.hpp> // Pascal unit
|
|
#include <Extctrls.hpp> // Pascal unit
|
|
#include <Tb2item.hpp> // Pascal unit
|
|
#include <Tb2dock.hpp> // Pascal unit
|
|
#include <Tb2toolbar.hpp> // Pascal unit
|
|
#include <Sptbxskins.hpp> // Pascal unit
|
|
#include <Sptbxitem.hpp> // Pascal unit
|
|
#include <Sptbxcontrols.hpp> // Pascal unit
|
|
#include <Menus.hpp> // Pascal unit
|
|
|
|
//-- user supplied -----------------------------------------------------------
|
|
|
|
namespace Sptbxtabs
|
|
{
|
|
//-- type declarations -------------------------------------------------------
|
|
#pragma option push -b-
|
|
enum TSpTBXTabEdge { tedNone, tedLeft, tedRight };
|
|
#pragma option pop
|
|
|
|
#pragma option push -b-
|
|
enum TSpTBXTabPosition { ttpTop, ttpBottom };
|
|
#pragma option pop
|
|
|
|
#pragma option push -b-
|
|
enum TSpTBXTabCloseButton { tcbNone, tcbActive, tcbAll };
|
|
#pragma option pop
|
|
|
|
typedef void __fastcall (__closure *TSpTBXTabChangeEvent)(System::TObject* Sender, int TabIndex);
|
|
|
|
typedef void __fastcall (__closure *TSpTBXTabChangingEvent)(System::TObject* Sender, int TabIndex, int NewTabIndex, bool &Allow);
|
|
|
|
typedef void __fastcall (__closure *TSpTBXTabClosingEvent)(System::TObject* Sender, bool &Allow, bool &CloseAndFree);
|
|
|
|
class DELPHICLASS TSpTBXTabItemDragObject;
|
|
class PASCALIMPLEMENTATION TSpTBXTabItemDragObject : public Sptbxitem::TSpTBXCustomDragObject
|
|
{
|
|
typedef Sptbxitem::TSpTBXCustomDragObject inherited;
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXTabItemDragObject(Controls::TControl* ASourceControl, Tb2item::TTBCustomItem* AItem);
|
|
public:
|
|
/* TObject.Destroy */ inline __fastcall virtual ~TSpTBXTabItemDragObject(void) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXTabItem;
|
|
class DELPHICLASS TSpTBXTabToolbar;
|
|
class PASCALIMPLEMENTATION TSpTBXTabItem : public Sptbxitem::TSpTBXCustomItem
|
|
{
|
|
typedef Sptbxitem::TSpTBXCustomItem inherited;
|
|
|
|
private:
|
|
Sptbxskins::TSpTBXSkinType FSkinType;
|
|
Sptbxitem::TSpTBXDrawImageEvent FOnDrawTabCloseButton;
|
|
Classes::TNotifyEvent FOnTabClose;
|
|
TSpTBXTabClosingEvent FOnTabClosing;
|
|
Graphics::TColor __fastcall GetTabColor(void);
|
|
Sptbxskins::TSpTBXSkinType __fastcall GetSkinType(void);
|
|
void __fastcall SetSkinType(const Sptbxskins::TSpTBXSkinType Value);
|
|
|
|
protected:
|
|
virtual bool __fastcall DialogChar(System::Word CharCode);
|
|
virtual void __fastcall DoDrawTabCloseButton(Graphics::TCanvas* ACanvas, Sptbxskins::TSpTBXSkinStatesType State, const Sptbxitem::TSpTBXPaintStage PaintStage, Imglist::TCustomImageList* AImageList, int &AImageIndex, Types::TRect &ARect, bool &PaintDefault);
|
|
virtual void __fastcall DoTabClose(void);
|
|
virtual void __fastcall DoTabClosing(bool &Allow, bool &CloseAndFree);
|
|
virtual Tb2item::TTBItemViewerClass __fastcall GetItemViewerClass(Tb2item::TTBView* AView);
|
|
bool __fastcall GetTabToolbar(/* out */ TSpTBXTabToolbar* &TabToolbar);
|
|
virtual void __fastcall ToggleControl(void);
|
|
__property Control;
|
|
__property Graphics::TColor TabColor = {read=GetTabColor, nodefault};
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXTabItem(Classes::TComponent* AOwner);
|
|
virtual void __fastcall Click(void);
|
|
void __fastcall TabClose(void);
|
|
TSpTBXTabItem* __fastcall GetNextTab(bool GoForward, Sptbxitem::TSpTBXSearchItemViewerType SearchType);
|
|
bool __fastcall IsFirstVisible(void);
|
|
bool __fastcall IsFirstVisibleTab(void);
|
|
bool __fastcall IsLastVisibleTab(void);
|
|
|
|
__published:
|
|
__property Action;
|
|
__property Checked = {default=0};
|
|
__property Enabled = {default=1};
|
|
__property HelpContext = {default=0};
|
|
__property ImageIndex = {default=-1};
|
|
__property Images;
|
|
__property InheritOptions = {default=1};
|
|
__property MaskOptions = {default=0};
|
|
__property Options = {default=0};
|
|
__property ShortCut = {default=0};
|
|
__property Visible = {default=1};
|
|
__property OnClick;
|
|
__property OnSelect;
|
|
__property Alignment = {default=2};
|
|
__property CustomWidth = {default=-1};
|
|
__property CustomHeight = {default=-1};
|
|
__property Margins = {default=4};
|
|
__property MinHeight = {default=0};
|
|
__property MinWidth = {default=0};
|
|
__property FontSettings;
|
|
__property Wrapping = {default=1};
|
|
__property OnDrawImage;
|
|
__property OnDrawItem;
|
|
__property OnDrawHint;
|
|
__property OnDrawCaption;
|
|
__property Sptbxskins::TSpTBXSkinType SkinType = {read=GetSkinType, write=SetSkinType, default=2};
|
|
__property Sptbxitem::TSpTBXDrawImageEvent OnDrawTabCloseButton = {read=FOnDrawTabCloseButton, write=FOnDrawTabCloseButton};
|
|
__property Classes::TNotifyEvent OnTabClose = {read=FOnTabClose, write=FOnTabClose};
|
|
__property TSpTBXTabClosingEvent OnTabClosing = {read=FOnTabClosing, write=FOnTabClosing};
|
|
public:
|
|
/* TSpTBXCustomItem.Destroy */ inline __fastcall virtual ~TSpTBXTabItem(void) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXTabItemViewer;
|
|
class PASCALIMPLEMENTATION TSpTBXTabItemViewer : public Sptbxitem::TSpTBXItemViewer
|
|
{
|
|
typedef Sptbxitem::TSpTBXItemViewer inherited;
|
|
|
|
private:
|
|
Sptbxskins::TSpTBXSkinStatesType FTabCloseButtonState;
|
|
Types::TRect __fastcall CorrectTabRect(const Types::TRect &ARect);
|
|
HIDESBASE TSpTBXTabItem* __fastcall GetItem(void);
|
|
void __fastcall GetTabCloseButtonImgList(Imglist::TCustomImageList* &AImageList, int &AImageIndex);
|
|
bool __fastcall IsTabCloseButtonVisible(void);
|
|
TSpTBXTabPosition __fastcall GetTabPosition(void);
|
|
|
|
protected:
|
|
virtual void __fastcall CalcSize(const Graphics::TCanvas* Canvas, int &AWidth, int &AHeight);
|
|
virtual void __fastcall DoDrawButton(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, const Sptbxskins::TSpTBXMenuItemInfo &ItemInfo, const Sptbxitem::TSpTBXPaintStage PaintStage, bool &PaintDefault);
|
|
virtual void __fastcall DoDrawCaption(Graphics::TCanvas* ACanvas, const Types::TRect &ClientAreaRect, Sptbxskins::TSpTBXSkinStatesType State, System::WideString &ACaption, Types::TRect &CaptionRect, unsigned &CaptionFormat, bool IsTextRotated, const Sptbxitem::TSpTBXPaintStage PaintStage, bool &PaintDefault);
|
|
virtual void __fastcall DoDrawImage(Graphics::TCanvas* ACanvas, Sptbxskins::TSpTBXSkinStatesType State, const Sptbxitem::TSpTBXPaintStage PaintStage, Imglist::TCustomImageList* &AImageList, int &AImageIndex, Types::TRect &ARect, bool &PaintDefault);
|
|
virtual void __fastcall DoDrawTabCloseButton(Graphics::TCanvas* ACanvas, Sptbxskins::TSpTBXSkinStatesType State, const Sptbxitem::TSpTBXPaintStage PaintStage, Imglist::TCustomImageList* &AImageList, int &AImageIndex, Types::TRect &ARect, bool &PaintDefault);
|
|
void __fastcall DrawBottomBorder(Graphics::TCanvas* ACanvas, const Types::TRect &ARect);
|
|
virtual void __fastcall DrawTab(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool AEnabled, bool AChecked, bool AHoverItem, TSpTBXTabPosition Position, bool ASeparator = false, TSpTBXTabEdge AEdge = (TSpTBXTabEdge)(0x0));
|
|
virtual void __fastcall DrawItemRightImage(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, const Sptbxskins::TSpTBXMenuItemInfo &ItemInfo);
|
|
virtual tagSIZE __fastcall GetRightImageSize();
|
|
Types::TRect __fastcall GetRightImageRect();
|
|
virtual Graphics::TColor __fastcall GetTextColor(Sptbxskins::TSpTBXSkinStatesType State);
|
|
virtual void __fastcall InternalMouseMove(Classes::TShiftState Shift, int X, int Y);
|
|
virtual void __fastcall Leaving(void);
|
|
|
|
public:
|
|
bool __fastcall IsOnTabToolbar(void);
|
|
__property TSpTBXTabItem* Item = {read=GetItem};
|
|
__property Sptbxskins::TSpTBXSkinStatesType TabCloseButtonState = {read=FTabCloseButtonState, nodefault};
|
|
__property TSpTBXTabPosition TabPosition = {read=GetTabPosition, nodefault};
|
|
public:
|
|
/* TTBItemViewer.Create */ inline __fastcall virtual TSpTBXTabItemViewer(Tb2item::TTBView* AView, Tb2item::TTBCustomItem* AItem, int AGroupLevel) : Sptbxitem::TSpTBXItemViewer(AView, AItem, AGroupLevel) { }
|
|
/* TTBItemViewer.Destroy */ inline __fastcall virtual ~TSpTBXTabItemViewer(void) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXCustomTabSet;
|
|
class PASCALIMPLEMENTATION TSpTBXTabToolbar : public Sptbxitem::TSpTBXToolbar
|
|
{
|
|
typedef Sptbxitem::TSpTBXToolbar inherited;
|
|
|
|
private:
|
|
Sptbxskins::TSpTBXSkinType FSkinType;
|
|
int FUpdateHidden;
|
|
bool FTabAutofit;
|
|
int FTabAutofitMaxSize;
|
|
int FTabCloseButtonImageIndex;
|
|
TSpTBXTabCloseButton FTabCloseButton;
|
|
bool FTabDragReorder;
|
|
bool FTabBackgroundBorders;
|
|
Graphics::TColor FTabColor;
|
|
int FTabMaxSize;
|
|
TSpTBXTabPosition FTabPosition;
|
|
void __fastcall Scroll(bool ToRight);
|
|
TSpTBXTabItem* __fastcall GetActiveTab(void);
|
|
void __fastcall SetActiveTabIndex(int Value);
|
|
void __fastcall SetSkinType(const Sptbxskins::TSpTBXSkinType Value);
|
|
void __fastcall SetTabCloseButton(const TSpTBXTabCloseButton Value);
|
|
void __fastcall SetTabCloseButtonImageIndex(const int Value);
|
|
void __fastcall SetTabAutofit(const bool Value);
|
|
void __fastcall SetTabAutofitMaxSize(const int Value);
|
|
void __fastcall SetTabBackgroundBorders(const bool Value);
|
|
void __fastcall SetTabColor(const Graphics::TColor Value);
|
|
void __fastcall SetTabMaxSize(const int Value);
|
|
void __fastcall SetTabPosition(const TSpTBXTabPosition Value);
|
|
HIDESBASE MESSAGE void __fastcall CMDesignHitTest(Messages::TWMMouse &Message);
|
|
|
|
protected:
|
|
Sptbxitem::TSpTBXItemCacheCollection* FHiddenTabs;
|
|
int FActiveTabIndex;
|
|
TSpTBXCustomTabSet* FOwnerTabControl;
|
|
void __fastcall Autofit(void);
|
|
virtual Graphics::TColor __fastcall GetItemsTextColor(Sptbxskins::TSpTBXSkinStatesType State);
|
|
virtual void __fastcall InternalDrawBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool PaintOnNCArea, bool PaintBorders = true);
|
|
virtual void __fastcall DoItemNotification(Tb2item::TTBCustomItem* Ancestor, bool Relayed, Tb2item::TTBItemChangedAction Action, int Index, Tb2item::TTBCustomItem* Item);
|
|
virtual void __fastcall RightAlignItems(void);
|
|
virtual bool __fastcall CanDragCustomize(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
|
|
DYNAMIC void __fastcall DoStartDrag(Controls::TDragObject* &DragObject);
|
|
DYNAMIC void __fastcall DragOver(System::TObject* Source, int X, int Y, Controls::TDragState State, bool &Accept);
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXTabToolbar(Classes::TComponent* AOwner);
|
|
__fastcall virtual ~TSpTBXTabToolbar(void);
|
|
void __fastcall BeginUpdateHidden(void);
|
|
void __fastcall EndUpdateHidden(void);
|
|
int __fastcall GetTabsCount(bool VisibleOnly);
|
|
void __fastcall InvalidateActiveTab(void);
|
|
void __fastcall InvalidateNC(void);
|
|
void __fastcall MakeVisible(TSpTBXTabItem* ATab);
|
|
void __fastcall ScrollLeft(void);
|
|
void __fastcall ScrollRight(void);
|
|
void __fastcall ScrollState(/* out */ bool &CanScrollToLeft, /* out */ bool &CanScrollToRight);
|
|
void __fastcall TabClose(TSpTBXTabItem* ATab);
|
|
|
|
__published:
|
|
__property TSpTBXTabItem* ActiveTab = {read=GetActiveTab};
|
|
__property int ActiveTabIndex = {read=FActiveTabIndex, write=SetActiveTabIndex, nodefault};
|
|
__property TSpTBXTabCloseButton TabCloseButton = {read=FTabCloseButton, write=SetTabCloseButton, default=0};
|
|
__property int TabCloseButtonImageIndex = {read=FTabCloseButtonImageIndex, write=SetTabCloseButtonImageIndex, default=-1};
|
|
__property bool TabBackgroundBorders = {read=FTabBackgroundBorders, write=SetTabBackgroundBorders, nodefault};
|
|
__property bool TabAutofit = {read=FTabAutofit, write=SetTabAutofit, default=0};
|
|
__property int TabAutofitMaxSize = {read=FTabAutofitMaxSize, write=SetTabAutofitMaxSize, default=200};
|
|
__property Graphics::TColor TabColor = {read=FTabColor, write=SetTabColor, default=-16777201};
|
|
__property int TabMaxSize = {read=FTabMaxSize, write=SetTabMaxSize, default=-1};
|
|
__property TSpTBXTabPosition TabPosition = {read=FTabPosition, write=SetTabPosition, default=0};
|
|
__property bool TabDragReorder = {read=FTabDragReorder, write=FTabDragReorder, default=0};
|
|
__property Sptbxskins::TSpTBXSkinType SkinType = {read=FSkinType, write=SetSkinType, default=2};
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXTabToolbar(HWND ParentWindow) : Sptbxitem::TSpTBXToolbar(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXTabSheet;
|
|
class DELPHICLASS TSpTBXCustomTabControl;
|
|
class PASCALIMPLEMENTATION TSpTBXTabSheet : public Controls::TCustomControl
|
|
{
|
|
typedef Controls::TCustomControl inherited;
|
|
|
|
private:
|
|
TSpTBXCustomTabControl* FTabControl;
|
|
TSpTBXTabItem* FItem;
|
|
System::UnicodeString FItemName;
|
|
Controls::TWinControl* FPrevFocused;
|
|
void __fastcall ReadItemName(Classes::TReader* Reader);
|
|
void __fastcall WriteItemName(Classes::TWriter* Writer);
|
|
System::WideString __fastcall GetCaption();
|
|
bool __fastcall GetTabVisible(void);
|
|
void __fastcall SetCaption(const System::WideString Value);
|
|
void __fastcall SetTabVisible(const bool Value);
|
|
int __fastcall GetImageIndex(void);
|
|
void __fastcall SetImageIndex(const int Value);
|
|
HIDESBASE MESSAGE void __fastcall CMVisiblechanged(Messages::TMessage &Message);
|
|
HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
|
|
HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
|
|
|
|
protected:
|
|
virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
|
|
virtual void __fastcall AdjustClientRect(Types::TRect &Rect);
|
|
virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
|
|
virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
|
|
virtual void __fastcall ReadState(Classes::TReader* Reader);
|
|
DYNAMIC void __fastcall VisibleChanging(void);
|
|
__property Align = {default=5};
|
|
__property Controls::TWinControl* PrevFocused = {read=FPrevFocused};
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXTabSheet(Classes::TComponent* AOwner);
|
|
__fastcall virtual ~TSpTBXTabSheet(void);
|
|
__property TSpTBXTabItem* Item = {read=FItem, write=FItem};
|
|
__property TSpTBXCustomTabControl* TabControl = {read=FTabControl, write=FTabControl};
|
|
|
|
__published:
|
|
__property PopupMenu;
|
|
__property System::WideString Caption = {read=GetCaption, write=SetCaption};
|
|
__property int ImageIndex = {read=GetImageIndex, write=SetImageIndex, nodefault};
|
|
__property bool TabVisible = {read=GetTabVisible, write=SetTabVisible, default=1};
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXTabSheet(HWND ParentWindow) : Controls::TCustomControl(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
class PASCALIMPLEMENTATION TSpTBXCustomTabSet : public Sptbxitem::TSpTBXCompoundItemsControl
|
|
{
|
|
typedef Sptbxitem::TSpTBXCompoundItemsControl inherited;
|
|
|
|
private:
|
|
int FItemMoveCount;
|
|
TSpTBXTabItem* FItemMoved;
|
|
bool FTabVisible;
|
|
int FLoadingActiveIndex;
|
|
bool FUpdatingIndex;
|
|
bool FResizing;
|
|
Sptbxitem::TSpTBXDrawEvent FOnDrawBackground;
|
|
TSpTBXTabChangeEvent FOnActiveTabChange;
|
|
TSpTBXTabChangingEvent FOnActiveTabChanging;
|
|
TSpTBXTabChangeEvent FOnActiveTabReorder;
|
|
TSpTBXTabChangingEvent FOnActiveTabReordering;
|
|
void __fastcall ReadHiddenItems(Classes::TReader* Reader);
|
|
void __fastcall WriteHiddenItems(Classes::TWriter* Writer);
|
|
int __fastcall GetActiveTabIndex(void);
|
|
void __fastcall SetActiveTabIndex(int Value);
|
|
Sptbxskins::TSpTBXSkinType __fastcall GetSkinType(void);
|
|
HIDESBASE void __fastcall SetSkinType(const Sptbxskins::TSpTBXSkinType Value);
|
|
bool __fastcall GetTabAutofit(void);
|
|
void __fastcall SetTabAutofit(const bool Value);
|
|
int __fastcall GetTabAutofitMaxSize(void);
|
|
void __fastcall SetTabAutofitMaxSize(const int Value);
|
|
bool __fastcall GetTabBackgroundBorders(void);
|
|
void __fastcall SetTabBackgroundBorders(const bool Value);
|
|
Graphics::TColor __fastcall GetTabBackgroundColor(void);
|
|
void __fastcall SetTabBackgroundColor(const Graphics::TColor Value);
|
|
TSpTBXTabCloseButton __fastcall GetTabCloseButton(void);
|
|
void __fastcall SetTabCloseButton(const TSpTBXTabCloseButton Value);
|
|
int __fastcall GetTabCloseButtonImageIndex(void);
|
|
void __fastcall SetTabCloseButtonImageIndex(const int Value);
|
|
bool __fastcall GetTabDragReorder(void);
|
|
void __fastcall SetTabDragReorder(const bool Value);
|
|
int __fastcall GetTabMaxSize(void);
|
|
void __fastcall SetTabMaxSize(const int Value);
|
|
TSpTBXTabPosition __fastcall GetTabPosition(void);
|
|
void __fastcall SetTabPosition(const TSpTBXTabPosition Value);
|
|
void __fastcall SetTabVisible(const bool Value);
|
|
TSpTBXTabToolbar* __fastcall GetTabToolbar(void);
|
|
HIDESBASE MESSAGE void __fastcall CMColorchanged(Messages::TMessage &Message);
|
|
MESSAGE void __fastcall CMSpTBXControlsInvalidate(Messages::TMessage &Message);
|
|
HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TMessage &Message);
|
|
MESSAGE void __fastcall WMInvalidateTabBackground(Messages::TMessage &Message);
|
|
HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
|
|
|
|
protected:
|
|
Graphics::TBitmap* FBackground;
|
|
virtual void __fastcall DoDrawBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, const Sptbxitem::TSpTBXPaintStage PaintStage, bool &PaintDefault);
|
|
virtual bool __fastcall GetFullRepaint(void);
|
|
virtual bool __fastcall CanActiveTabChange(const int TabIndex, const int NewTabIndex);
|
|
virtual void __fastcall DoActiveTabChange(const int TabIndex);
|
|
virtual bool __fastcall CanActiveTabReorder(const int TabIndex, const int NewTabIndex);
|
|
virtual void __fastcall DoActiveTabReorder(const int TabIndex);
|
|
virtual void __fastcall ItemNotification(Tb2item::TTBCustomItem* Ancestor, bool Relayed, Tb2item::TTBItemChangedAction Action, int Index, Tb2item::TTBCustomItem* Item);
|
|
virtual void __fastcall TabInserted(TSpTBXTabItem* Item);
|
|
virtual void __fastcall TabDeleting(TSpTBXTabItem* Item, bool FreeTabSheet = true);
|
|
virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
|
|
virtual Sptbxitem::TSpTBXToolbarClass __fastcall GetToolbarClass(void);
|
|
virtual void __fastcall Loaded(void);
|
|
__property Color = {default=-16777201};
|
|
__property ParentColor = {default=0};
|
|
__property int ActiveTabIndex = {read=GetActiveTabIndex, write=SetActiveTabIndex, nodefault};
|
|
__property bool TabAutofit = {read=GetTabAutofit, write=SetTabAutofit, default=0};
|
|
__property int TabAutofitMaxSize = {read=GetTabAutofitMaxSize, write=SetTabAutofitMaxSize, default=200};
|
|
__property Graphics::TColor TabBackgroundColor = {read=GetTabBackgroundColor, write=SetTabBackgroundColor, default=536870911};
|
|
__property bool TabBackgroundBorders = {read=GetTabBackgroundBorders, write=SetTabBackgroundBorders, default=0};
|
|
__property TSpTBXTabCloseButton TabCloseButton = {read=GetTabCloseButton, write=SetTabCloseButton, default=0};
|
|
__property int TabCloseButtonImageIndex = {read=GetTabCloseButtonImageIndex, write=SetTabCloseButtonImageIndex, default=-1};
|
|
__property bool TabDragReorder = {read=GetTabDragReorder, write=SetTabDragReorder, default=0};
|
|
__property int TabMaxSize = {read=GetTabMaxSize, write=SetTabMaxSize, default=-1};
|
|
__property TSpTBXTabPosition TabPosition = {read=GetTabPosition, write=SetTabPosition, default=0};
|
|
__property bool TabVisible = {read=FTabVisible, write=SetTabVisible, default=1};
|
|
__property Sptbxskins::TSpTBXSkinType SkinType = {read=GetSkinType, write=SetSkinType, default=2};
|
|
__property TSpTBXTabChangeEvent OnActiveTabChange = {read=FOnActiveTabChange, write=FOnActiveTabChange};
|
|
__property TSpTBXTabChangingEvent OnActiveTabChanging = {read=FOnActiveTabChanging, write=FOnActiveTabChanging};
|
|
__property TSpTBXTabChangeEvent OnActiveTabReorder = {read=FOnActiveTabReorder, write=FOnActiveTabReorder};
|
|
__property TSpTBXTabChangingEvent OnActiveTabReordering = {read=FOnActiveTabReordering, write=FOnActiveTabReordering};
|
|
__property Sptbxitem::TSpTBXDrawEvent OnDrawBackground = {read=FOnDrawBackground, write=FOnDrawBackground};
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXCustomTabSet(Classes::TComponent* AOwner);
|
|
__fastcall virtual ~TSpTBXCustomTabSet(void);
|
|
TSpTBXTabItem* __fastcall Add(System::WideString ACaption);
|
|
HIDESBASE TSpTBXTabItem* __fastcall Insert(int NewIndex, System::WideString ACaption);
|
|
bool __fastcall DrawBackground(HDC DC, const Types::TRect &ARect);
|
|
int __fastcall GetTabSetHeight(void);
|
|
virtual void __fastcall InvalidateBackground(bool InvalidateChildren = true);
|
|
void __fastcall MakeVisible(TSpTBXTabItem* ATab);
|
|
void __fastcall ScrollLeft(void);
|
|
void __fastcall ScrollRight(void);
|
|
void __fastcall ScrollState(/* out */ bool &Left, /* out */ bool &Right);
|
|
virtual void __fastcall TabClick(TSpTBXTabItem* ATab);
|
|
__property Canvas;
|
|
__property TSpTBXTabToolbar* Toolbar = {read=GetTabToolbar};
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXCustomTabSet(HWND ParentWindow) : Sptbxitem::TSpTBXCompoundItemsControl(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXTabSet;
|
|
class PASCALIMPLEMENTATION TSpTBXTabSet : public TSpTBXCustomTabSet
|
|
{
|
|
typedef TSpTBXCustomTabSet inherited;
|
|
|
|
__published:
|
|
__property Align = {default=0};
|
|
__property Anchors = {default=3};
|
|
__property BiDiMode;
|
|
__property Color = {default=-16777201};
|
|
__property Constraints;
|
|
__property DockSite = {default=0};
|
|
__property DragCursor = {default=-12};
|
|
__property DragKind = {default=0};
|
|
__property DragMode = {default=0};
|
|
__property Enabled = {default=1};
|
|
__property Font;
|
|
__property ParentColor = {default=0};
|
|
__property ParentBiDiMode = {default=1};
|
|
__property ParentFont = {default=1};
|
|
__property ParentShowHint = {default=1};
|
|
__property PopupMenu;
|
|
__property ShowHint;
|
|
__property Visible = {default=1};
|
|
__property OnCanResize;
|
|
__property OnContextPopup;
|
|
__property OnDockDrop;
|
|
__property OnDockOver;
|
|
__property OnDragDrop;
|
|
__property OnDragOver;
|
|
__property OnEndDock;
|
|
__property OnEndDrag;
|
|
__property OnEnter;
|
|
__property OnExit;
|
|
__property OnGetSiteInfo;
|
|
__property OnMouseDown;
|
|
__property OnMouseMove;
|
|
__property OnMouseUp;
|
|
__property OnResize;
|
|
__property OnStartDock;
|
|
__property OnStartDrag;
|
|
__property OnUnDock;
|
|
__property ActiveTabIndex;
|
|
__property Images;
|
|
__property TabAutofit = {default=0};
|
|
__property TabAutofitMaxSize = {default=200};
|
|
__property TabBackgroundColor = {default=536870911};
|
|
__property TabBackgroundBorders = {default=0};
|
|
__property TabCloseButton = {default=0};
|
|
__property TabCloseButtonImageIndex = {default=-1};
|
|
__property TabDragReorder = {default=0};
|
|
__property TabMaxSize = {default=-1};
|
|
__property TabPosition = {default=0};
|
|
__property TabVisible = {default=1};
|
|
__property SkinType = {default=2};
|
|
__property OnActiveTabChange;
|
|
__property OnActiveTabChanging;
|
|
__property OnActiveTabReorder;
|
|
__property OnActiveTabReordering;
|
|
__property OnDrawBackground;
|
|
public:
|
|
/* TSpTBXCustomTabSet.Create */ inline __fastcall virtual TSpTBXTabSet(Classes::TComponent* AOwner) : TSpTBXCustomTabSet(AOwner) { }
|
|
/* TSpTBXCustomTabSet.Destroy */ inline __fastcall virtual ~TSpTBXTabSet(void) { }
|
|
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXTabSet(HWND ParentWindow) : TSpTBXCustomTabSet(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
class PASCALIMPLEMENTATION TSpTBXCustomTabControl : public TSpTBXCustomTabSet
|
|
{
|
|
typedef TSpTBXCustomTabSet inherited;
|
|
|
|
private:
|
|
TSpTBXTabSheet* FEmptyTabSheet;
|
|
void __fastcall RealignTabSheets(void);
|
|
TSpTBXTabSheet* __fastcall GetActivePage(void);
|
|
TSpTBXTabSheet* __fastcall GetPages(int Index);
|
|
int __fastcall GetPagesCount(void);
|
|
void __fastcall SetActivePage(const TSpTBXTabSheet* Value);
|
|
HIDESBASE MESSAGE void __fastcall CMSpTBXControlsInvalidate(Messages::TMessage &Message);
|
|
HIDESBASE MESSAGE void __fastcall WMSpSkinChange(Messages::TMessage &Message);
|
|
|
|
protected:
|
|
Classes::TList* FPages;
|
|
virtual void __fastcall DoActiveTabChange(const int ItemIndex);
|
|
virtual bool __fastcall GetFullRepaint(void);
|
|
virtual void __fastcall TabInserted(TSpTBXTabItem* Item);
|
|
virtual void __fastcall TabDeleting(TSpTBXTabItem* Item, bool FreeTabSheet = true);
|
|
|
|
public:
|
|
__fastcall virtual TSpTBXCustomTabControl(Classes::TComponent* AOwner);
|
|
__fastcall virtual ~TSpTBXCustomTabControl(void);
|
|
TSpTBXTabSheet* __fastcall GetPage(TSpTBXTabItem* Item);
|
|
__property TSpTBXTabSheet* ActivePage = {read=GetActivePage, write=SetActivePage};
|
|
__property TSpTBXTabSheet* Pages[int Index] = {read=GetPages};
|
|
__property int PagesCount = {read=GetPagesCount, nodefault};
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXCustomTabControl(HWND ParentWindow) : TSpTBXCustomTabSet(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
class DELPHICLASS TSpTBXTabControl;
|
|
class PASCALIMPLEMENTATION TSpTBXTabControl : public TSpTBXCustomTabControl
|
|
{
|
|
typedef TSpTBXCustomTabControl inherited;
|
|
|
|
__published:
|
|
__property Align = {default=0};
|
|
__property Anchors = {default=3};
|
|
__property BiDiMode;
|
|
__property Color = {default=-16777201};
|
|
__property Constraints;
|
|
__property DockSite = {default=0};
|
|
__property DragCursor = {default=-12};
|
|
__property DragKind = {default=0};
|
|
__property DragMode = {default=0};
|
|
__property Enabled = {default=1};
|
|
__property Font;
|
|
__property ParentColor = {default=0};
|
|
__property ParentBiDiMode = {default=1};
|
|
__property ParentFont = {default=1};
|
|
__property ParentShowHint = {default=1};
|
|
__property PopupMenu;
|
|
__property ShowHint;
|
|
__property Visible = {default=1};
|
|
__property OnCanResize;
|
|
__property OnContextPopup;
|
|
__property OnDockDrop;
|
|
__property OnDockOver;
|
|
__property OnDragDrop;
|
|
__property OnDragOver;
|
|
__property OnEndDock;
|
|
__property OnEndDrag;
|
|
__property OnEnter;
|
|
__property OnExit;
|
|
__property OnGetSiteInfo;
|
|
__property OnMouseDown;
|
|
__property OnMouseMove;
|
|
__property OnMouseUp;
|
|
__property OnResize;
|
|
__property OnStartDock;
|
|
__property OnStartDrag;
|
|
__property OnUnDock;
|
|
__property ActiveTabIndex;
|
|
__property Images;
|
|
__property TabAutofit = {default=0};
|
|
__property TabAutofitMaxSize = {default=200};
|
|
__property TabBackgroundColor = {default=536870911};
|
|
__property TabBackgroundBorders = {default=0};
|
|
__property TabCloseButton = {default=0};
|
|
__property TabCloseButtonImageIndex = {default=-1};
|
|
__property TabDragReorder = {default=0};
|
|
__property TabMaxSize = {default=-1};
|
|
__property TabPosition = {default=0};
|
|
__property TabVisible = {default=1};
|
|
__property SkinType = {default=2};
|
|
__property OnActiveTabChange;
|
|
__property OnActiveTabChanging;
|
|
__property OnActiveTabReorder;
|
|
__property OnActiveTabReordering;
|
|
__property OnDrawBackground;
|
|
public:
|
|
/* TSpTBXCustomTabControl.Create */ inline __fastcall virtual TSpTBXTabControl(Classes::TComponent* AOwner) : TSpTBXCustomTabControl(AOwner) { }
|
|
/* TSpTBXCustomTabControl.Destroy */ inline __fastcall virtual ~TSpTBXTabControl(void) { }
|
|
|
|
public:
|
|
/* TWinControl.CreateParented */ inline __fastcall TSpTBXTabControl(HWND ParentWindow) : TSpTBXCustomTabControl(ParentWindow) { }
|
|
|
|
};
|
|
|
|
|
|
//-- var, const, procedure ---------------------------------------------------
|
|
static const Word C_SpTBXTabGroupIndex = 0x1e61;
|
|
static const Word WM_INVALIDATETABBACKGROUND = 0x2261;
|
|
extern PACKAGE Tb2item::TTBItemViewer* __fastcall SpGetNextTabItemViewer(Tb2item::TTBView* View, Tb2item::TTBItemViewer* IV, bool GoForward, Sptbxitem::TSpTBXSearchItemViewerType SearchType);
|
|
extern PACKAGE void __fastcall SpDrawXPTab(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool Enabled, bool Checked, bool HotTrack, bool Focused, TSpTBXTabPosition Position, Sptbxskins::TSpTBXSkinType SkinType, TSpTBXTabEdge Edge = (TSpTBXTabEdge)(0x0));
|
|
extern PACKAGE void __fastcall SpDrawXPTabControlBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, Graphics::TColor AColor, bool BottomTabs, Sptbxskins::TSpTBXSkinType SkinType);
|
|
|
|
} /* namespace Sptbxtabs */
|
|
using namespace Sptbxtabs;
|
|
#pragma pack(pop)
|
|
#pragma option pop
|
|
|
|
#pragma delphiheader end.
|
|
//-- end unit ----------------------------------------------------------------
|
|
#endif // SptbxtabsHPP
|