symmetry getdesignerdc, releasedesignerdc

git-svn-id: trunk@4774 -
This commit is contained in:
micha 2003-11-07 18:48:52 +00:00
parent f0b5c03d21
commit 8bf74c83fb
5 changed files with 53 additions and 29 deletions

View File

@ -178,7 +178,7 @@ type
procedure DoShowTabOrderEditor;
procedure GiveComponentsNames;
procedure NotifyComponentAdded(AComponent: TComponent);
// popup menu
procedure BuildPopupMenu;
procedure OnAlignPopupMenuClick(Sender: TObject);
@ -912,13 +912,13 @@ begin
//RaiseException('');
end;
LastPaintSender:=Sender;
// client grid
if (not InternalPaint) and (Sender is TWinControl)
and (csAcceptsControls in Sender.ControlStyle) then begin
PaintClientGrid(TWinControl(Sender),DDC);
end;
// marker (multi selection markers)
if (ControlSelection.SelectionForm=Form)
and (ControlSelection.IsSelected(Sender)) then begin
@ -2049,7 +2049,7 @@ begin
//writeln('TDesigner.DrawDesignerItems A ',dfNeedPainting in FFlags);
if OnlyIfNeeded and (not (dfNeedPainting in FFlags)) then exit;
Exclude(FFlags,dfNeedPainting);
if (Form=nil) or (not Form.HandleAllocated) then exit;
//writeln('TDesigner.DrawDesignerItems B painting');
@ -2057,7 +2057,7 @@ begin
DDC.SetDC(Form,DesignerDC);
DoPaintDesignerItems;
DDC.Clear;
ReleaseDC(Form.Handle,DesignerDC);
ReleaseDesignerDC(Form.Handle,DesignerDC);
end;
procedure TDesigner.DoPaintDesignerItems;

View File

@ -1505,6 +1505,11 @@ begin
Result := 0;
end;
function TInterfaceBase.ReleaseDesignerDC(hWnd: HWND; DC: HDC): Integer;
begin
Result := ReleaseDC(hWnd, DC);
end;
function TInterfaceBase.RestoreDC(DC: HDC; SavedDC: Integer): Boolean;
begin
Result := False;
@ -1842,6 +1847,9 @@ end;
{ =============================================================================
$Log$
Revision 1.108 2003/11/07 18:48:52 micha
symmetry getdesignerdc, releasedesignerdc
Revision 1.107 2003/11/03 22:37:41 mattias
fixed vert scrollbar, implemented GetDesignerDC

View File

@ -10,7 +10,7 @@
to be implementerd here
!! Keep this alphabetical !!
*****************************************************************************
* *
* This file is part of the Lazarus Component Library (LCL) *
@ -688,7 +688,7 @@ end;
{------------------------------------------------------------------------------
Function InvalidateFrame(aHandle : HWND; ARect : pRect; bErase : Boolean;
BorderWidth: integer) : Boolean;
Calls InvalidateRect for the borderframe.
------------------------------------------------------------------------------}
Function InvalidateFrame(aHandle : HWND; ARect : pRect; bErase : Boolean; BorderWidth: integer) : Boolean;
@ -731,7 +731,7 @@ begin
Result := InterfaceObject.LoadStockPixmap(StockID);
end;
function MaskBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc, YSrc: Integer; Mask: HBITMAP; XMask, YMask: Integer; Rop: DWORD): Boolean;
function MaskBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc, YSrc: Integer; Mask: HBITMAP; XMask, YMask: Integer; Rop: DWORD): Boolean;
begin
Result := InterfaceObject.MaskBlt(DestDC, X, Y, Width, Height, SrcDC, XSrc, YSrc, Mask, XMask, YMask, Rop);
end;
@ -789,19 +789,19 @@ begin
StartX,StartY,EndX,EndY);
end;
function PolyBezier(DC: HDC; Points: PPoint; NumPts: Integer;
Filled, Continuous: boolean): boolean;
function PolyBezier(DC: HDC; Points: PPoint; NumPts: Integer;
Filled, Continuous: boolean): boolean;
begin
Result := InterfaceObject.PolyBezier(DC,Points,NumPts,Filled,Continuous);
end;
function Polygon(DC: HDC; Points: PPoint; NumPts: Integer;
Winding: boolean): boolean;
function Polygon(DC: HDC; Points: PPoint; NumPts: Integer;
Winding: boolean): boolean;
begin
Result := InterfaceObject.Polygon(DC,Points,NumPts,Winding);
end;
function Polyline(DC: HDC; Points: PPoint; NumPts: Integer): boolean;
function Polyline(DC: HDC; Points: PPoint; NumPts: Integer): boolean;
begin
Result := InterfaceObject.Polyline(DC,Points,NumPts);
end;
@ -874,6 +874,11 @@ begin
Result := InterfaceObject.ReleaseDC(hWnd, DC);
end;
function ReleaseDesignerDC(hWnd: HWND; DC: HDC): Integer;
begin
Result := InterfaceObject.ReleaseDesignerDC(hWnd, DC);
end;
Function RequestInput(const InputCaption, InputPrompt : String; MaskInput : Boolean; var Value : String) : Boolean;
begin
Result := InterfaceObject.RequestInput(InputCaption, InputPrompt, MaskInput, Value);
@ -964,12 +969,12 @@ end;
function RestoreDC(DC: HDC; SavedDC: Integer): Boolean;
begin
Result := InterfaceObject.RestoreDC(DC, SavedDC)
Result := InterfaceObject.RestoreDC(DC, SavedDC)
end;
function SaveDC(DC: HDC) : Integer;
function SaveDC(DC: HDC) : Integer;
begin
Result := InterfaceObject.SaveDC(DC)
Result := InterfaceObject.SaveDC(DC)
end;
Function ScreenToClient(Handle : HWND; var P : TPoint) : Integer;
@ -1033,12 +1038,12 @@ function SetCaretRespondToFocus(Handle: hWnd; ShowHideOnFocus: boolean):Boolean;
begin
Result := InterfaceObject.SetCaretRespondToFocus(Handle,ShowHideOnFocus);
end;
function SetCursor(hCursor: HICON): HCURSOR;
begin
Result := InterfaceObject.SetCursor(hCursor);
end;
Function SetProp(Handle: hwnd; Str : PChar; Data : Pointer) : Boolean;
Begin
Result := InterfaceObject.SetProp(Handle,Str,Data);
@ -1082,7 +1087,7 @@ begin
Result := InterfaceObject.SetStretchBltMode(DC,StretchMode);
end;
function SetSysColors(cElements: Integer; const lpaElements; const lpaRgbValues): Boolean;
function SetSysColors(cElements: Integer; const lpaElements; const lpaRgbValues): Boolean;
begin
Result := InterfaceObject.SetSysColors(cElements, lpaElements, lpaRgbValues);
end;
@ -1383,7 +1388,7 @@ begin
dec(ARect.Top,dy);
inc(ARect.Bottom,dy);
end;
Result := True;
end;
@ -1391,7 +1396,7 @@ end;
Function: IntersectRect
Params: var DestRect: TRect; const SrcRect1, SrcRect2: TRect
Returns: Boolean
Intersects SrcRect1 and SrcRect2 into DestRect.
Intersecting means that DestRect will be the overlapping area of lprcSrc1 and
lprcSrc2. If SrcRect1 and SrcRect2 does not overlapp the Result is false, else
@ -1407,7 +1412,7 @@ begin
and (SrcRect2.Right > SrcRect1.Left)
and (SrcRect2.Top < SrcRect1.Bottom)
and (SrcRect2.Bottom > SrcRect1.Top);
if Result then begin
DestRect.Left:=Max(SrcRect1.Left,SrcRect2.Left);
DestRect.Top:=Max(SrcRect1.Top,SrcRect2.Top);
@ -1525,7 +1530,7 @@ end;
{------------------------------------------------------------------------------
Function: ScrollWindow In progress pbd
Params: Handle
XAmount +scroll down -scroll up
XAmount +scroll down -scroll up
Rect: Rect to move
ClipRect: Boundaries at which the pixels go to /dev/nul
Returns: More than a simple boolean but for compatibilty bool will do
@ -1541,7 +1546,7 @@ end;
{------------------------------------------------------------------------------
Function: SetRect
Params:
Returns:
Returns:
------------------------------------------------------------------------------}
Function SetRect(var ARect : TRect; xLeft,yTop,xRight,yBottom : Integer) : Boolean;
Begin
@ -1556,10 +1561,10 @@ End;
{------------------------------------------------------------------------------
Function: SetRectEmpty
Params: Rect to clear
Params: Rect to clear
Returns: essentially nothing
------------------------------------------------------------------------------}
function SetRectEmpty(var ARect: TRect): Boolean;
begin
@ -1687,6 +1692,9 @@ end;
{ =============================================================================
$Log$
Revision 1.101 2003/11/07 18:48:52 micha
symmetry getdesignerdc, releasedesignerdc
Revision 1.100 2003/11/03 22:37:41 mattias
fixed vert scrollbar, implemented GetDesignerDC

View File

@ -9,8 +9,8 @@
procedure MyProc;
{$ENDIF}
!! Keep this alphabetical and place a pointer to the independent part
!! if needed
!! Keep this alphabetical and place a pointer to the independent part
!! if needed
*****************************************************************************
* *
@ -247,6 +247,7 @@ function RectVisible(dc : hdc; const ARect: TRect) : Boolean; {$IFDEF IF_BASE_ME
function RegroupMenuItem(hndMenu: HMENU; GroupIndex: integer): Boolean; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
function ReleaseCapture : Boolean; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
function ReleaseDC(hWnd: HWND; DC: HDC): Integer; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
function ReleaseDesignerDC(hWnd: HWND; DC: HDC): Integer; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
function RestoreDC(DC: HDC; SavedDC: Integer): Boolean; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
function RightJustifyMenuItem(HndMenu: HMenu; bRightJustify: boolean): Boolean; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
Function RoundRect(DC : hDC; X1, Y1, X2, Y2: Integer; RX,RY : Integer): Boolean; {$IFDEF IF_BASE_MEMBER}virtual;{$ENDIF}
@ -399,6 +400,9 @@ procedure RaiseLastOSError;
{ =============================================================================
$Log$
Revision 1.91 2003/11/07 18:48:52 micha
symmetry getdesignerdc, releasedesignerdc
Revision 1.90 2003/11/03 22:37:41 mattias
fixed vert scrollbar, implemented GetDesignerDC

View File

@ -137,6 +137,7 @@ Function Rectangle(DC: HDC; X1, Y1, X2, Y2: Integer): Boolean; Override;
function RectVisible(dc : hdc; const ARect: TRect) : Boolean; Override;
Function ReleaseCapture: Boolean; Override;
Function ReleaseDC(HWnd: HWND; DC: HDC): Integer; Override;
Function ReleaseDesignerDC(HWnd: HWND; DC: HDC): Integer; Override;
Function RestoreDC(DC: HDC; SavedDC: Integer): Boolean; Override;
Function SaveDC(DC: HDC): Integer; Override;
@ -181,6 +182,9 @@ Procedure DeleteCriticalSection(var CritSection: TCriticalSection); Override;
{ =============================================================================
$Log$
Revision 1.37 2003/11/07 18:48:52 micha
symmetry getdesignerdc, releasedesignerdc
Revision 1.36 2003/11/04 13:18:22 micha
Implement GetDesignerDC