1{%MainUnit gtk2int.pp} 2{ $Id$ } 3 4{****************************************************************************** 5 All GTK2 interface communication implementations. 6 Initial Revision : Sat Jan 17 19:00:00 2004 7 8 9 !! Keep alphabetical !! 10 11 Support routines go to gtk2proc.pp 12 13 ****************************************************************************** 14 Interface 15 ****************************************************************************** 16 17 ***************************************************************************** 18 This file is part of the Lazarus Component Library (LCL) 19 20 See the file COPYING.modifiedLGPL.txt, included in this distribution, 21 for details about the license. 22 ***************************************************************************** 23} 24 25//##apiwiz##sps## // Do not remove 26function AddEventHandler(AHandle: THandle; AFlags: dword; 27 AEventHandler: TWaitHandleEvent; AData: PtrInt): PEventHandler; override; 28function AddPipeEventHandler(AHandle: THandle; 29 AEventHandler: TPipeEvent; AData: PtrInt): PPipeEventHandler; override; 30function AddProcessEventHandler(AHandle: THandle; 31 AEventHandler: TChildExitEvent; AData: PtrInt): PProcessEventHandler; override; 32function AskUser(const DialogCaption, DialogMessage: string; DialogType: 33 LongInt; Buttons: TDialogButtons; {%H-}HelpCtx: Longint): LongInt; override; 34 35function CreateStandardCursor(ACursor: SmallInt): hCursor; override; 36function CreateRubberBand(const ARect: TRect; const ABrush: HBrush = 0): HWND; override; 37procedure DestroyRubberBand(ARubberBand: HWND); override; 38procedure DrawDefaultDockImage({%H-}AOldRect, ANewRect: TRect; AOperation: TDockImageOperation); override; 39procedure DrawGrid(DC: HDC; const R: TRect; DX, DY: Integer); override; 40 41function ExtUTF8Out(DC: HDC; X, Y: Integer; Options: Longint; Rect: PRect; 42 Str: PChar; Count: Longint; Dx: PInteger): Boolean; override; 43function FontIsMonoSpace(Font: HFont): boolean; override; 44 45function GetAcceleratorString(const AVKey: Byte; const AShiftState: TShiftState): String; override; 46function GetControlConstraints(Constraints: TObject): boolean; override; 47function GetLCLOwnerObject(Handle: HWnd): TObject; override; 48 49function PromptUser(const DialogCaption : string; 50 const DialogMessage : string; 51 DialogType : LongInt; 52 Buttons : PLongInt; 53 ButtonCount : LongInt; 54 DefaultIndex : LongInt; 55 EscapeResult : LongInt) : LongInt; override; 56 57function RawImage_CreateBitmaps(const ARawImage: TRawImage; out ABitmap, AMask: HBitmap; ASkipMask: boolean = False): boolean; override; 58function RawImage_DescriptionFromBitmap(ABitmap: HBITMAP; out ADesc: TRawImageDescription): boolean; override; 59function RawImage_DescriptionFromDevice(ADC: HDC; out ADesc: TRawImageDescription): Boolean; override; 60function RawImage_FromBitmap(out ARawImage: TRawImage; ABitmap, AMask: HBITMAP; ARect: PRect = nil): Boolean; override; 61function RawImage_FromDevice(out ARawImage: TRawImage; ADC: HDC; const ARect: TRect): Boolean; override; 62function RawImage_QueryDescription(AFlags: TRawImageQueryFlags; var ADesc: TRawImageDescription): Boolean; override; 63 64procedure RemoveEventHandler(var AHandler: PEventHandler); override; 65procedure RemovePipeEventHandler(var AHandler: PPipeEventHandler); override; 66procedure RemoveProcessEventHandler(var AHandler: PProcessEventHandler); override; 67 68function SetComboMinDropDownSize(Handle: HWND; MinItemsWidth, MinItemsHeight, MinItemCount: integer): boolean; override; 69procedure SetEventHandlerFlags(AHandler: PEventHandler; NewFlags: dword); override; 70procedure SetRubberBandRect(const ARubberBand: HWND; const ARect: TRect); override; 71 72function TextUTF8Out(DC: HDC; X, Y: Integer; Str: PChar; Count: Longint): Boolean; override; 73//##apiwiz##eps## // Do not remove, no wizard declaration after this line 74