83 lines
1.9 KiB
PHP
83 lines
1.9 KiB
PHP
|
|
{
|
|
Carbon Interface
|
|
|
|
Dummy implementation. Not tested.
|
|
Waiting for someone with a Mac to implement it
|
|
}
|
|
|
|
type
|
|
TTimerList = class
|
|
end;
|
|
|
|
var
|
|
FTimerList: TTimerList;
|
|
|
|
function CF_UNICODETEXT: TClipboardFormat;
|
|
begin
|
|
//todo
|
|
Result := TClipboardFormat(0);
|
|
end;
|
|
|
|
{
|
|
Only a few functions are necessary to compile VirtualTreeView:
|
|
BitBlt
|
|
GetCurrentObject
|
|
Set/KillTimer (Look at Qt/Gtk implementation)
|
|
}
|
|
|
|
{$define HAS_GETCURRENTOBJECT}
|
|
{.$define HAS_MAPMODEFUNCTIONS}
|
|
{.$define HAS_GETTEXTEXTENTEXPOINT}
|
|
{.$define HAS_GETDOUBLECLICKTIME}
|
|
{.$define HAS_GETTEXTALIGN}
|
|
{.$define HAS_GETWINDOWDC}
|
|
{.$define HAS_INVERTRECT}
|
|
{.$define HAS_OFFSETRGN}
|
|
{.$define HAS_REDRAWWINDOW}
|
|
{.$define HAS_SCROLLWINDOW}
|
|
{.$define HAS_SETBRUSHORGEX}
|
|
|
|
|
|
{$i ../generic/stubs.inc}
|
|
{$i ../generic/independentfunctions.inc}
|
|
{$i ../generic/unicodefunctions.inc}
|
|
|
|
|
|
function BitBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc,
|
|
YSrc: Integer; Rop: DWORD): Boolean;
|
|
begin
|
|
Result := StretchMaskBlt(DestDC, X, Y, Width, Height, SrcDC, XSrc, YSrc,
|
|
Width, Height, 0, 0, 0, Rop);
|
|
end;
|
|
|
|
function GetCurrentObject(hdc: HDC; uObjectType: UINT): HGDIOBJ;
|
|
var
|
|
CarbonDC: TCarbonDeviceContext absolute hdc;
|
|
begin
|
|
Result := 0;
|
|
with CarbonDC do
|
|
begin
|
|
case uObjectType of
|
|
OBJ_BITMAP:
|
|
begin
|
|
if CarbonDC is TCarbonBitmapContext then
|
|
Result := HGDIOBJ(TCarbonBitmapContext(CarbonDC).Bitmap);
|
|
end;
|
|
OBJ_BRUSH: Result := HGDIOBJ(CurrentBrush);
|
|
OBJ_FONT: Result := HGDIOBJ(CurrentFont);
|
|
OBJ_PEN: Result := HGDIOBJ(CurrentPen);
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function KillTimer(hWnd: THandle; nIDEvent: UINT_PTR):Boolean;
|
|
begin
|
|
Result := LCLIntf.KillTimer(hWnd, nIDEvent);
|
|
end;
|
|
|
|
function SetTimer(hWnd: THandle; nIDEvent: UINT_PTR; uElapse: LongWord; lpTimerFunc: TTimerNotify): UINT_PTR;
|
|
begin
|
|
Result := LCLIntf.SetTimer(hWnd, nIDEvent, uElapse, nil{lpTimerFunc});
|
|
end;
|