// CodeGear C++Builder // Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc. // All rights reserved // (DO NOT EDIT: machine generated header) 'uCEFBufferPanel.pas' rev: 37.00 (Windows) #ifndef uCEFBufferPanelHPP #define uCEFBufferPanelHPP #pragma delphiheader begin #pragma option push #if defined(__BORLANDC__) && !defined(__clang__) #pragma option -w- // All warnings off #pragma option -Vx // Zero-length empty class member #endif #pragma pack(push,8) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //-- user supplied ----------------------------------------------------------- namespace Ucefbufferpanel { //-- forward type declarations ----------------------------------------------- class DELPHICLASS TBufferPanel; //-- type declarations ------------------------------------------------------- typedef void __fastcall (__closure *TOnIMECommitTextEvent)(System::TObject* Sender, const Uceftypes::ustring aText, const Uceftypes::PCefRange replacement_range, int relative_cursor_pos); typedef void __fastcall (__closure *TOnIMESetCompositionEvent)(System::TObject* Sender, const Uceftypes::ustring aText, const Uceftypes::TCefCompositionUnderlineDynArray underlines, const Uceftypes::TCefRange &replacement_range, const Uceftypes::TCefRange &selection_range); typedef void __fastcall (__closure *TOnHandledMessageEvent)(System::TObject* Sender, Winapi::Messages::TMessage &aMessage, bool &aHandled); class PASCALIMPLEMENTATION TBufferPanel : public Vcl::Extctrls::TCustomPanel { typedef Vcl::Extctrls::TCustomPanel inherited; protected: int FScanlineSize; bool FTransparent; System::Classes::TNotifyEvent FOnPaintParentBkg; float FForcedDeviceScaleFactor; float FDeviceScaleFactor; bool FCopyOriginalBuffer; bool FMustInitBuffer; Vcl::Graphics::TBitmap* FBuffer; Ucefbitmapbitbuffer::TCEFBitmapBitBuffer* FOrigBuffer; Ucefbitmapbitbuffer::TCEFBitmapBitBuffer* FOrigPopupBuffer; int FOrigPopupScanlineSize; Winapi::Windows::THandle FSyncObj; Ucefosrimehandler::TCEFOSRIMEHandler* FIMEHandler; System::Classes::TNotifyEvent FOnIMECancelComposition; TOnIMECommitTextEvent FOnIMECommitText; TOnIMESetCompositionEvent FOnIMESetComposition; TOnHandledMessageEvent FOnCustomTouch; TOnHandledMessageEvent FOnPointerDown; TOnHandledMessageEvent FOnPointerUp; TOnHandledMessageEvent FOnPointerUpdate; void __fastcall CreateSyncObj(); void __fastcall DestroySyncObj(); void __fastcall DestroyBuffer(); void * __fastcall GetBufferBits(); int __fastcall GetBufferWidth(); int __fastcall GetBufferHeight(); int __fastcall GetOrigBufferWidth(); int __fastcall GetOrigBufferHeight(); virtual float __fastcall GetScreenScale(); virtual bool __fastcall GetRealScreenScale(float &aResultScale); void * __fastcall GetOrigPopupBufferBits(); int __fastcall GetOrigPopupBufferWidth(); int __fastcall GetOrigPopupBufferHeight(); Uceftypes::TCefWindowHandle __fastcall GetParentFormHandle(); Vcl::Forms::TCustomForm* __fastcall GetParentForm(); void __fastcall SetTransparent(bool aValue); bool __fastcall CopyBuffer(); bool __fastcall SaveBufferToFile(const System::UnicodeString aFilename); virtual void __fastcall Paint(); virtual void __fastcall CreateParams(Vcl::Controls::TCreateParams &Params); virtual void __fastcall WndProc(Winapi::Messages::TMessage &aMessage); MESSAGE void __fastcall WMCEFInvalidate(Winapi::Messages::TMessage &aMessage); HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Winapi::Messages::TWMEraseBkgnd &aMessage); MESSAGE void __fastcall WMTouch(Winapi::Messages::TMessage &aMessage); MESSAGE void __fastcall WMPointerDown(Winapi::Messages::TMessage &aMessage); MESSAGE void __fastcall WMPointerUpdate(Winapi::Messages::TMessage &aMessage); MESSAGE void __fastcall WMPointerUp(Winapi::Messages::TMessage &aMessage); HIDESBASE void __fastcall WMIMEStartComp(Winapi::Messages::TMessage &aMessage); HIDESBASE void __fastcall WMIMEEndComp(Winapi::Messages::TMessage &aMessage); void __fastcall WMIMESetContext(Winapi::Messages::TMessage &aMessage); void __fastcall WMIMEComposition(Winapi::Messages::TMessage &aMessage); virtual void __fastcall DoOnIMECancelComposition(); virtual void __fastcall DoOnIMECommitText(const Uceftypes::ustring aText, const Uceftypes::PCefRange replacement_range, int relative_cursor_pos); virtual void __fastcall DoOnIMESetComposition(const Uceftypes::ustring aText, const Uceftypes::TCefCompositionUnderlineDynArray underlines, const Uceftypes::TCefRange &replacement_range, const Uceftypes::TCefRange &selection_range); public: __fastcall virtual TBufferPanel(System::Classes::TComponent* AOwner); __fastcall virtual ~TBufferPanel(); virtual void __fastcall AfterConstruction(); bool __fastcall SaveToFile(const System::UnicodeString aFilename); bool __fastcall InvalidatePanel(); bool __fastcall BeginBufferDraw(); void __fastcall EndBufferDraw(); void __fastcall BufferDraw(int x, int y, Vcl::Graphics::TBitmap* const aBitmap)/* overload */; void __fastcall BufferDraw(Vcl::Graphics::TBitmap* const aBitmap, const Winapi::Windows::TRect &aSrcRect, const Winapi::Windows::TRect &aDstRect)/* overload */; bool __fastcall UpdateBufferDimensions(int aWidth, int aHeight); bool __fastcall UpdateOrigBufferDimensions(int aWidth, int aHeight); bool __fastcall UpdateOrigPopupBufferDimensions(int aWidth, int aHeight); void __fastcall UpdateDeviceScaleFactor(); bool __fastcall BufferIsResized(bool aUseMutex = true); void __fastcall CreateIMEHandler(); void __fastcall ChangeCompositionRange(const Uceftypes::TCefRange &selection_range, const Uceftypes::TCefRectDynArray character_bounds); void __fastcall DrawOrigPopupBuffer(const Winapi::Windows::TRect &aSrcRect, const Winapi::Windows::TRect &aDstRect); __property int ScanlineSize = {read=FScanlineSize, nodefault}; __property int BufferWidth = {read=GetBufferWidth, nodefault}; __property int BufferHeight = {read=GetBufferHeight, nodefault}; __property void * BufferBits = {read=GetBufferBits}; __property float ScreenScale = {read=GetScreenScale}; __property float ForcedDeviceScaleFactor = {read=FForcedDeviceScaleFactor, write=FForcedDeviceScaleFactor}; __property bool MustInitBuffer = {read=FMustInitBuffer, write=FMustInitBuffer, nodefault}; __property Vcl::Graphics::TBitmap* Buffer = {read=FBuffer}; __property Ucefbitmapbitbuffer::TCEFBitmapBitBuffer* OrigBuffer = {read=FOrigBuffer}; __property int OrigBufferWidth = {read=GetOrigBufferWidth, nodefault}; __property int OrigBufferHeight = {read=GetOrigBufferHeight, nodefault}; __property Ucefbitmapbitbuffer::TCEFBitmapBitBuffer* OrigPopupBuffer = {read=FOrigPopupBuffer}; __property int OrigPopupBufferWidth = {read=GetOrigPopupBufferWidth, nodefault}; __property int OrigPopupBufferHeight = {read=GetOrigPopupBufferHeight, nodefault}; __property void * OrigPopupBufferBits = {read=GetOrigPopupBufferBits}; __property int OrigPopupScanlineSize = {read=FOrigPopupScanlineSize, nodefault}; __property Uceftypes::TCefWindowHandle ParentFormHandle = {read=GetParentFormHandle, nodefault}; __property Vcl::Forms::TCustomForm* ParentForm = {read=GetParentForm}; __property DockManager; __property Canvas; __published: __property System::Classes::TNotifyEvent OnIMECancelComposition = {read=FOnIMECancelComposition, write=FOnIMECancelComposition}; __property TOnIMECommitTextEvent OnIMECommitText = {read=FOnIMECommitText, write=FOnIMECommitText}; __property TOnIMESetCompositionEvent OnIMESetComposition = {read=FOnIMESetComposition, write=FOnIMESetComposition}; __property TOnHandledMessageEvent OnCustomTouch = {read=FOnCustomTouch, write=FOnCustomTouch}; __property TOnHandledMessageEvent OnPointerDown = {read=FOnPointerDown, write=FOnPointerDown}; __property TOnHandledMessageEvent OnPointerUp = {read=FOnPointerUp, write=FOnPointerUp}; __property TOnHandledMessageEvent OnPointerUpdate = {read=FOnPointerUpdate, write=FOnPointerUpdate}; __property System::Classes::TNotifyEvent OnPaintParentBkg = {read=FOnPaintParentBkg, write=FOnPaintParentBkg}; __property bool Transparent = {read=FTransparent, write=SetTransparent, default=0}; __property bool CopyOriginalBuffer = {read=FCopyOriginalBuffer, write=FCopyOriginalBuffer, default=0}; __property Align = {default=0}; __property Alignment = {default=2}; __property Anchors = {default=3}; __property AutoSize = {default=0}; __property BevelEdges = {default=15}; __property BevelKind = {default=0}; __property Ctl3D; __property Locked = {default=0}; __property ParentBackground = {default=1}; __property ParentCtl3D = {default=1}; __property OnCanResize; __property BevelInner = {default=0}; __property BevelOuter = {default=2}; __property BevelWidth = {default=1}; __property BiDiMode; __property BorderWidth = {default=0}; __property BorderStyle = {default=0}; __property Caption = {default=0}; __property Color = {default=-16777201}; __property Constraints; __property UseDockManager = {default=1}; __property DockSite = {default=0}; __property DoubleBuffered; __property DragCursor = {default=-12}; __property DragKind = {default=0}; __property DragMode = {default=0}; __property Enabled = {default=1}; __property FullRepaint = {default=1}; __property Font; __property ParentBiDiMode = {default=1}; __property ParentColor = {default=0}; __property ParentFont = {default=1}; __property ParentShowHint = {default=1}; __property PopupMenu; __property ShowHint; __property TabOrder = {default=-1}; __property TabStop = {default=0}; __property Visible = {default=1}; __property OnClick; __property OnConstrainedResize; __property OnContextPopup; __property OnDockDrop; __property OnDockOver; __property OnDblClick; __property OnDragDrop; __property OnDragOver; __property OnEndDock; __property OnEndDrag; __property OnEnter; __property OnExit; __property OnGetSiteInfo; __property OnMouseDown; __property OnMouseMove; __property OnMouseUp; __property OnMouseWheel; __property OnKeyDown; __property OnKeyPress; __property OnKeyUp; __property OnResize; __property OnStartDock; __property OnStartDrag; __property OnUnDock; __property VerticalAlignment = {default=2}; __property OnAlignInsertBefore; __property OnAlignPosition; __property Padding; __property OnMouseActivate; __property OnMouseEnter; __property OnMouseLeave; __property ShowCaption = {default=1}; __property ParentDoubleBuffered = {default=1}; __property Touch; __property OnGesture; __property StyleElements = {default=7}; public: /* TWinControl.CreateParented */ inline __fastcall TBufferPanel(HWND ParentWindow) : Vcl::Extctrls::TCustomPanel(ParentWindow) { } }; //-- var, const, procedure --------------------------------------------------- } /* namespace Ucefbufferpanel */ #if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_UCEFBUFFERPANEL) using namespace Ucefbufferpanel; #endif #pragma pack(pop) #pragma option pop #pragma delphiheader end. //-- end unit ---------------------------------------------------------------- #endif // uCEFBufferPanelHPP