Componentes.Terceros.TB2k-S.../official/2.2.2+2.4.2/SpTBXLib/Source/SpTBXFormPopupMenu.hpp

276 lines
12 KiB
C++

// CodeGear C++Builder
// Copyright (c) 1995, 2008 by CodeGear
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Sptbxformpopupmenu.pas' rev: 20.00
#ifndef SptbxformpopupmenuHPP
#define SptbxformpopupmenuHPP
#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 <Menus.hpp> // Pascal unit
#include <Stdctrls.hpp> // Pascal unit
#include <Tb2item.hpp> // Pascal unit
#include <Tb2anim.hpp> // Pascal unit
#include <Sptbxskins.hpp> // Pascal unit
#include <Sptbxitem.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Sptbxformpopupmenu
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TSpTBXPopupAnimationType { patNone, patSlide, patFade };
#pragma option pop
#pragma option push -b-
enum TSpTBXPopupBorderStyleType { pbsFrame, pbsSizeable, pbsSizeableBottom, pbsSizeableRightBottom };
#pragma option pop
struct TSpTBXPopupFormState
{
public:
Forms::TCustomForm* PopupForm;
Forms::TFormBorderStyle BorderStyle;
Types::TRect BoundsRect;
};
typedef void __fastcall (__closure *TSpTBXRollDownEvent)(System::TObject* Sender, int &FormWidth, int &FormHeight);
typedef void __fastcall (__closure *TSpTBXRollUpEvent)(System::TObject* Sender, bool Selected);
typedef void __fastcall (__closure *TSpTBXGetFormClassEvent)(System::TObject* Sender, Forms::TCustomFormClass &AFormClass);
class DELPHICLASS TSpTBXPopupSizeGrip;
class DELPHICLASS TSpTBXCustomWrapperPopupForm;
class PASCALIMPLEMENTATION TSpTBXPopupSizeGrip : public Controls::TWinControl
{
typedef Controls::TWinControl inherited;
private:
Sptbxskins::TSpTBXSkinType FSkinType;
Sptbxitem::TSpTBXDrawEvent FOnDrawBackground;
HIDESBASE MESSAGE void __fastcall WMSetCursor(Messages::TWMSetCursor &Message);
HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
protected:
TSpTBXCustomWrapperPopupForm* FPopupForm;
void __fastcall DoDrawBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect, const Sptbxitem::TSpTBXPaintStage PaintStage, bool &PaintDefault);
DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
public:
__fastcall virtual TSpTBXPopupSizeGrip(Classes::TComponent* AOwner);
Types::TRect __fastcall GetGripRect();
Types::TRect __fastcall GetGripSizerRect();
bool __fastcall IsScreenPointInGrip(const Types::TPoint &P);
__published:
__property Sptbxskins::TSpTBXSkinType SkinType = {read=FSkinType, write=FSkinType, default=2};
__property Sptbxitem::TSpTBXDrawEvent OnDrawBackground = {read=FOnDrawBackground, write=FOnDrawBackground};
public:
/* TWinControl.CreateParented */ inline __fastcall TSpTBXPopupSizeGrip(HWND ParentWindow) : Controls::TWinControl(ParentWindow) { }
/* TWinControl.Destroy */ inline __fastcall virtual ~TSpTBXPopupSizeGrip(void) { }
};
class DELPHICLASS TSpTBXFormPopupMenu;
class PASCALIMPLEMENTATION TSpTBXCustomWrapperPopupForm : public Forms::TCustomForm
{
typedef Forms::TCustomForm inherited;
private:
bool FHooksInstalled;
Forms::TMessageEvent FOldAppOnMessage;
Classes::TWndMethod FOldPopupControlWndProc;
bool FShowShadows;
TSpTBXPopupAnimationType FAnimation;
Tb2anim::TTBAnimationDirection FAnimationDirection;
TSpTBXPopupBorderStyleType FBorderStyle;
Classes::TNotifyEvent FOnRollDown;
TSpTBXRollUpEvent FOnRollUp;
HIDESBASE void __fastcall SetBorderStyle(const TSpTBXPopupBorderStyleType Value);
void __fastcall InstallHooks(void);
void __fastcall UninstallHooks(void);
HIDESBASE MESSAGE void __fastcall CMChildKey(Controls::TCMChildKey &Message);
MESSAGE void __fastcall CMCancelMode(Controls::TCMCancelMode &Message);
HIDESBASE MESSAGE void __fastcall WMActivate(Messages::TWMActivate &Message);
HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
HIDESBASE MESSAGE void __fastcall WMNCCalcSize(Messages::TWMNCCalcSize &Message);
HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Message);
HIDESBASE MESSAGE void __fastcall WMNCPaint(Messages::TMessage &Message);
MESSAGE void __fastcall WMPrint(Messages::TMessage &Message);
MESSAGE void __fastcall WMSpTBXPopupInvalidate(Messages::TMessage &Message);
MESSAGE void __fastcall WMSpTBXPopupRollUp(Messages::TMessage &Message);
protected:
Controls::TControl* FPopupControl;
TSpTBXFormPopupMenu* FFormPopupMenu;
bool FPaintingClientArea;
TSpTBXPopupSizeGrip* FSizeGrip;
virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
virtual void __fastcall PaintBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect) = 0 ;
TSpTBXPopupAnimationType __fastcall GetSysAnimation(void);
virtual void __fastcall AppOnMessageHook(tagMSG &Msg, bool &Handled);
virtual void __fastcall PopupControlWindowProc(Messages::TMessage &Message);
virtual void __fastcall DoRollDown(void);
virtual void __fastcall DoRollUp(bool Selected);
__property TSpTBXPopupAnimationType Animation = {read=FAnimation, write=FAnimation, nodefault};
__property Tb2anim::TTBAnimationDirection AnimationDirection = {read=FAnimationDirection, write=FAnimationDirection, default=0};
__property TSpTBXPopupBorderStyleType BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=0};
__property bool ShowShadows = {read=FShowShadows, write=FShowShadows, default=1};
__property Classes::TNotifyEvent OnRollDown = {read=FOnRollDown, write=FOnRollDown};
__property TSpTBXRollUpEvent OnRollUp = {read=FOnRollUp, write=FOnRollUp};
public:
__fastcall virtual TSpTBXCustomWrapperPopupForm(TSpTBXFormPopupMenu* AFormPopupMenu);
__fastcall virtual ~TSpTBXCustomWrapperPopupForm(void);
virtual void __fastcall RollDown(int X, int Y, int AWidth, int AHeight, bool FocusPopup = true)/* overload */;
virtual void __fastcall RollDown(Controls::TControl* APopupControl, int AWidth, int AHeight, bool IsVertical = false, bool FocusPopup = true)/* overload */;
virtual void __fastcall RollUp(bool Selected, bool FocusParentControl = true);
__property TSpTBXFormPopupMenu* FormPopupMenu = {read=FFormPopupMenu};
public:
/* TCustomForm.CreateNew */ inline __fastcall virtual TSpTBXCustomWrapperPopupForm(Classes::TComponent* AOwner, int Dummy) : Forms::TCustomForm(AOwner, Dummy) { }
public:
/* TWinControl.CreateParented */ inline __fastcall TSpTBXCustomWrapperPopupForm(HWND ParentWindow) : Forms::TCustomForm(ParentWindow) { }
};
class DELPHICLASS TSpTBXWrapperPopupForm;
class PASCALIMPLEMENTATION TSpTBXWrapperPopupForm : public TSpTBXCustomWrapperPopupForm
{
typedef TSpTBXCustomWrapperPopupForm inherited;
private:
Sptbxskins::TSpTBXSkinType FSkinType;
HIDESBASE MESSAGE void __fastcall CMShowingChanged(Messages::TMessage &Message);
HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
void __fastcall SetSkinType(const Sptbxskins::TSpTBXSkinType Value);
protected:
virtual void __fastcall DestroyWindowHandle(void);
virtual void __fastcall PaintBackground(Graphics::TCanvas* ACanvas, const Types::TRect &ARect);
public:
__fastcall virtual TSpTBXWrapperPopupForm(TSpTBXFormPopupMenu* AFormPopupMenu);
__fastcall virtual ~TSpTBXWrapperPopupForm(void);
__published:
__property Height;
__property Width;
__property BorderStyle = {default=0};
__property ShowShadows = {default=1};
__property OnRollDown;
__property OnRollUp;
__property Sptbxskins::TSpTBXSkinType SkinType = {read=FSkinType, write=SetSkinType, default=2};
public:
/* TCustomForm.CreateNew */ inline __fastcall virtual TSpTBXWrapperPopupForm(Classes::TComponent* AOwner, int Dummy) : TSpTBXCustomWrapperPopupForm(AOwner, Dummy) { }
public:
/* TWinControl.CreateParented */ inline __fastcall TSpTBXWrapperPopupForm(HWND ParentWindow) : TSpTBXCustomWrapperPopupForm(ParentWindow) { }
};
class PASCALIMPLEMENTATION TSpTBXFormPopupMenu : public Menus::TPopupMenu
{
typedef Menus::TPopupMenu inherited;
private:
Sptbxskins::TSpTBXSkinType FSkinType;
Classes::TList* FNotifies;
bool FItems;
bool FPopupFocus;
TSpTBXPopupFormState FPopupFormState;
TSpTBXRollUpEvent FClosePopup;
TSpTBXRollUpEvent FOnBeforeClosePopup;
TSpTBXRollDownEvent FOnBeforePopup;
TSpTBXGetFormClassEvent FOnGetPopupFormClass;
TSpTBXPopupBorderStyleType __fastcall GetBorderStyle(void);
bool __fastcall GetShowShadows(void);
void __fastcall SetBorderStyle(const TSpTBXPopupBorderStyleType Value);
void __fastcall SetShowShadows(const bool Value);
void __fastcall SetPopupForm(const Forms::TCustomForm* Value);
void __fastcall SetSkinType(const Sptbxskins::TSpTBXSkinType Value);
protected:
Forms::TCustomForm* FPopupForm;
TSpTBXWrapperPopupForm* FWrapperForm;
virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
void __fastcall BroadcastCloseMessage(bool Selected);
virtual void __fastcall DoGetPopupFormClass(Forms::TCustomFormClass &AFormClass);
virtual bool __fastcall InternalPopup(int X, int Y, bool ForceFocus, Controls::TControl* PopupControl = (Controls::TControl*)(0x0));
virtual void __fastcall InternalClosePopup(System::TObject* Sender, bool Selected);
public:
__fastcall virtual TSpTBXFormPopupMenu(Classes::TComponent* AOwner);
__fastcall virtual ~TSpTBXFormPopupMenu(void);
virtual void __fastcall Popup(int X, int Y);
void __fastcall PopupEx(int X, int Y, bool ForceFocus)/* overload */;
void __fastcall PopupEx(Controls::TControl* PopupControl, bool ForceFocus)/* overload */;
void __fastcall AddCloseNotification(System::TObject* AObject);
void __fastcall RemoveCloseNotification(System::TObject* AObject);
void __fastcall ClosePopup(bool Selected);
__property Forms::TCustomForm* PopupForm = {read=FPopupForm, write=SetPopupForm};
__published:
__property bool Items = {read=FItems, nodefault};
__property TSpTBXPopupBorderStyleType BorderStyle = {read=GetBorderStyle, write=SetBorderStyle, default=0};
__property bool PopupFocus = {read=FPopupFocus, write=FPopupFocus, default=0};
__property bool ShowShadows = {read=GetShowShadows, write=SetShowShadows, default=1};
__property Sptbxskins::TSpTBXSkinType SkinType = {read=FSkinType, write=SetSkinType, default=2};
__property TSpTBXRollUpEvent OnClosePopup = {read=FClosePopup, write=FClosePopup};
__property TSpTBXRollUpEvent OnBeforeClosePopup = {read=FOnBeforeClosePopup, write=FOnBeforeClosePopup};
__property TSpTBXRollDownEvent OnBeforePopup = {read=FOnBeforePopup, write=FOnBeforePopup};
__property TSpTBXGetFormClassEvent OnGetPopupFormClass = {read=FOnGetPopupFormClass, write=FOnGetPopupFormClass};
private:
void *__ISpTBXPopupMenu; /* Sptbxitem::ISpTBXPopupMenu */
public:
#if defined(MANAGED_INTERFACE_OPERATORS)
operator Sptbxitem::_di_ISpTBXPopupMenu()
{
Sptbxitem::_di_ISpTBXPopupMenu intf;
GetInterface(intf);
return intf;
}
#else
operator ISpTBXPopupMenu*(void) { return (ISpTBXPopupMenu*)&__ISpTBXPopupMenu; }
#endif
};
//-- var, const, procedure ---------------------------------------------------
static const Word WM_SPTBX_POPUPINVALIDATE = 0x777;
static const Word WM_SPTBX_POPUPROLLUP = 0x778;
extern PACKAGE TSpTBXFormPopupMenu* ActiveFormPopupMenu;
} /* namespace Sptbxformpopupmenu */
using namespace Sptbxformpopupmenu;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // SptbxformpopupmenuHPP