lazarus/lcl/include/graphiccontrol.inc
2002-09-13 11:49:47 +00:00

138 lines
4.5 KiB
PHP

{******************************************************************************
TGraphicControl
******************************************************************************
*****************************************************************************
* *
* This file is part of the Lazarus Component Library (LCL) *
* *
* See the file COPYING.LCL, included in this distribution, *
* for details about the copyright. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* *
*****************************************************************************
}
{------------------------------------------------------------------------------
Method: TGraphicControl.Create
Params: none
Returns: Nothing
Constructor for the class.
------------------------------------------------------------------------------}
constructor TGraphicControl.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FCanvas := TControlCanvas.Create;
TControlCanvas(FCanvas).Control := Self;
end;
{------------------------------------------------------------------------------
Method: TGraphicControl.Destroy
Params: None
Returns: Nothing
Destructor for the class.
------------------------------------------------------------------------------}
destructor TGraphicControl.Destroy;
begin
{ if CaptureControl = Self then
SetCaptureControl(nil); }
FCanvas.Free;
inherited Destroy;
end;
{------------------------------------------------------------------------------
Method: TGraphicControl.WMPaint
Params: Msg: The paint message
Returns: nothing
Paint event handler.
------------------------------------------------------------------------------}
procedure TGraphicControl.WMPaint(var Message: TLMPaint);
begin
if Message.DC <> 0 then
begin
Canvas.Lock;
try
Canvas.Handle := Message.DC;
try
Paint;
finally
Canvas.Handle := 0;
end;
finally
Canvas.Unlock;
end;
end;
end;
{------------------------------------------------------------------------------
Method: TGraphicControl.Paint
Params: none
Returns: nothing
Default paint handler. Derived classed should paint themselves
------------------------------------------------------------------------------}
procedure TGraphicControl.Paint;
begin
Assert(False, Format('Trace:[TGraphicControl.Paint] %s', [ClassName]));
end;
{ =============================================================================
$Log$
Revision 1.5 2002/09/13 11:49:47 lazarus
Cleanups, extended TStatusBar, graphic control cleanups.
Revision 1.4 2002/08/26 17:28:21 lazarus
MG: fixed speedbutton in designmode
Revision 1.3 2002/05/10 06:05:52 lazarus
MG: changed license to LGPL
Revision 1.2 2001/04/02 14:45:26 lazarus
MG: bugfixes for TBevel
Revision 1.1 2000/07/13 10:28:25 michael
+ Initial import
Revision 1.2 2000/05/09 02:07:40 lazarus
Replaced writelns with Asserts. CAW
Revision 1.1 2000/04/02 20:49:56 lazarus
MWE:
Moved lazarus/lcl/*.inc files to lazarus/lcl/include
Revision 1.4 2000/03/15 00:51:57 lazarus
MWE:
+ Added LM_Paint on expose
+ Added forced creation of gdkwindow if needed
~ Modified DrawFrameControl
+ Added BF_ADJUST support on DrawEdge
- Commented out LM_IMAGECHANGED in TgtkObject.IntSendMessage3
(It did not compile)
Revision 1.3 1999/12/14 00:16:43 lazarus
MWE:
Renamed LM... message handlers to WM... to be compatible and to
get more edit parts to compile
Started to implement GetSystemMetrics
Removed some Lazarus specific parts from mwEdit
Revision 1.2 1999/12/07 01:19:25 lazarus
MWE:
Removed some double events
Changed location of SetCallBack
Added call to remove signals
Restructured somethings
Started to add default handlers in TWinControl
Made some parts of TControl and TWinControl more delphi compatible
... and lots more ...
}