gtk2: cleanup TgtkDeviceContext

git-svn-id: trunk@38727 -
This commit is contained in:
paul 2012-09-18 03:40:22 +00:00
parent 894333eabe
commit 6d6ec57e0a
4 changed files with 15 additions and 22 deletions

View File

@ -280,7 +280,6 @@ type
FWithChildWindows: boolean;// this DC covers sub gdkwindows
FOrigin: TPoint;
FSpecialOrigin: Boolean;
FFlags: TDeviceContextsFlags;
FSelectedColors: TDevContextSelectedColorsType;

View File

@ -78,7 +78,7 @@ begin
end;
Result := FOrigin;
if (FWidget <> nil) then
if Assigned(FWidget) then
begin
Fixed := GetFixedWidget(FWidget);
if GTK_WIDGET_NO_WINDOW(FWidget) and
@ -89,9 +89,6 @@ begin
Inc(Result.y, FWidget^.Allocation.y);
end;
end;
if not FSpecialOrigin then Exit;
if FWidget = nil then Exit;
end;
function TGtkDeviceContext.GetOwnedGDIObjects(ID: TGDIType): PGdiObject;
@ -542,7 +539,6 @@ begin
ClientWidget := AWidget;
end;
FSpecialOrigin := GtkWidgetIsA(ClientWidget, GTK_LAYOUT_GET_TYPE);
FDrawable := AWindow;
// GC is created on demand
end;
@ -583,9 +579,9 @@ begin
FOrigin.X := 0;
FOrigin.Y := 0;
FSpecialOrigin := False;
PenPos.X:=0;
PenPos.Y:=0;
PenPos.X := 0;
PenPos.Y := 0;
CurrentBitmap:=nil;
CurrentFont:=nil;
@ -666,7 +662,6 @@ begin
end;
FOrigin := ASource.FOrigin;
FSpecialOrigin := ASource.FSpecialOrigin;
PenPos := ASource.PenPos;
if dcfTextMetricsValid in ASource.Flags then

View File

@ -6861,16 +6861,15 @@ function TGtk2WidgetSet.MoveWindowOrgEx(DC: HDC; dX, dY: Integer): Boolean;
var
NewOrigin: TPoint;
begin
Result:=IsValidDC(DC);
Result := IsValidDC(DC);
if Result then
with TGtkDeviceContext(DC) do begin
//DebugLn(['[TGtk2WidgetSet.MoveWindowOrgEx] B DC=',DbgS(DC),
// ' Old=',Origin.X,',',Origin.Y,' d=',dX,',',dY,' ']);
NewOrigin:=Origin;
inc(NewOrigin.X,dX);
inc(NewOrigin.Y,dY);
Origin:=NewOrigin;
end;
with TGtkDeviceContext(DC) do
begin
NewOrigin := Origin;
inc(NewOrigin.X, dX);
inc(NewOrigin.Y, dY);
Origin := NewOrigin;
end;
end;
function TGtk2WidgetSet.OffsetRgn(RGN: HRGN; nXOffset, nYOffset: Integer): Integer;
@ -7902,7 +7901,7 @@ end;
ComplexRegion
------------------------------------------------------------------------------}
function TGtk2WidgetSet.SelectClipRGN(DC : hDC; RGN : HRGN) : Longint;
function TGtk2WidgetSet.SelectClipRGN(DC: hDC; RGN: HRGN): Longint;
var
DevCtx: TGtkDeviceContext absolute DC;
@ -7912,7 +7911,6 @@ var
begin
if not IsValidDC(DC) then Exit(ERROR);
// clear old clipregion
if DevCtx.ClipRegion <> nil
then begin
@ -7934,6 +7932,7 @@ begin
DevCtx.OwnedGDIObjects[gdiRegion] := DevCtx.ClipRegion;
RegObj := DevCtx.ClipRegion^.GDIRegionObject;
DCOrigin := DevCtx.Offset;
gdk_region_offset(RegObj, DCOrigin.x, DCOrigin.Y);
DevCtx.SelectRegion;

View File

@ -195,7 +195,7 @@ function RoundRect(DC : hDC; X1, Y1, X2, Y2: Integer; RX,RY : Integer): Boolean;
function SaveDC(DC: HDC): Integer; override;
function ScreenToClient(Handle : HWND; var P : TPoint) : Integer; override;
function ScrollWindowEx(hWnd: HWND; dx, dy: Integer; prcScroll, prcClip: PRect; {%H-}hrgnUpdate: HRGN; prcUpdate: PRect; flags: UINT): Boolean; override;
function SelectClipRGN(DC : hDC; RGN : HRGN) : Longint; override;
function SelectClipRGN(DC: hDC; RGN: HRGN): Longint; override;
function SelectObject(DC: HDC; GDIObj: HGDIOBJ): HGDIOBJ; override;
function SelectPalette({%H-}DC: HDC; {%H-}Palette: HPALETTE; {%H-}ForceBackground: Boolean): HPALETTE; override;
function SendMessage(HandleWnd: HWND; Msg: Cardinal; wParam: WParam; lParam: LParam): LResult; override;