From ee408796067d06ad52f23fed73b42717ab64846a Mon Sep 17 00:00:00 2001 From: lazarus Date: Tue, 6 Feb 2001 14:52:47 +0000 Subject: [PATCH] Changed TSpeedbutton in gtkobject so it erases itself when it's set to visible=false; Shane git-svn-id: trunk@174 - --- ide/uniteditor.pp | 1 + lcl/include/speedbutton.inc | 6 ++++++ lcl/include/wincontrol.inc | 17 ++--------------- lcl/interfaces/gtk/gtkobject.inc | 14 +++++++++++++- 4 files changed, 22 insertions(+), 16 deletions(-) diff --git a/ide/uniteditor.pp b/ide/uniteditor.pp index e098684cb9..8a436f5db6 100644 --- a/ide/uniteditor.pp +++ b/ide/uniteditor.pp @@ -805,6 +805,7 @@ if Command >= ecFirstParent then except GotoLine(0); end; + TMainIDE(TSourceNotebook(FAOwner).MainIDE).SpeedButton4.Visible := False; end; ecPeriod : Begin diff --git a/lcl/include/speedbutton.inc b/lcl/include/speedbutton.inc index d1a533384e..4c3f602cb8 100644 --- a/lcl/include/speedbutton.inc +++ b/lcl/include/speedbutton.inc @@ -236,6 +236,8 @@ begin FState := bsDisabled; FDragging := False; end +// else +// if not Visible then exit else begin if FState = bsDisabled then begin @@ -524,6 +526,10 @@ end; { ============================================================================= $Log$ + Revision 1.5 2001/02/06 14:52:47 lazarus + Changed TSpeedbutton in gtkobject so it erases itself when it's set to visible=false; + Shane + Revision 1.4 2001/01/12 18:46:50 lazarus Named the speedbuttons in MAINIDE and took out some writelns. Shane diff --git a/lcl/include/wincontrol.inc b/lcl/include/wincontrol.inc index bb6c642d6d..811e82f9ba 100644 --- a/lcl/include/wincontrol.inc +++ b/lcl/include/wincontrol.inc @@ -1543,19 +1543,6 @@ end; ------------------------------------------------------------------------------} procedure TWinControl.WMWindowPosChanged(var Message : TLMWindowPosChanged); begin - - { if Message.WindowPos <> nil - then with Message.WindowPos^ do - begin - FLeft := X; - FWidth := cX; - FTop := Y; - FHeight := cY; - Assert(False, Format('Trace:[TWinControl.WMWindowPosChanged] %s --> Message.WindowPos(%d, %d)(%d, %d)', [ClassName, X, Y, cx, cy])); - end - else Assert(False, Format('Trace:[TWinControl.WMWindowPosChanged] %s --> Message.WindowPos = nil', [ClassName])); - } - inherited WMWindowPosChanged(Message); end; @@ -1917,8 +1904,8 @@ end; { ============================================================================= $Log$ - Revision 1.16 2001/02/06 13:55:23 lazarus - Changed the files from mode delphi to mode objfpc + Revision 1.17 2001/02/06 14:52:47 lazarus + Changed TSpeedbutton in gtkobject so it erases itself when it's set to visible=false; Shane Revision 1.15 2001/02/04 04:18:12 lazarus diff --git a/lcl/interfaces/gtk/gtkobject.inc b/lcl/interfaces/gtk/gtkobject.inc index b4c28d4ca7..8762b72dea 100644 --- a/lcl/interfaces/gtk/gtkobject.inc +++ b/lcl/interfaces/gtk/gtkobject.inc @@ -227,6 +227,7 @@ var GList : pGList; // Only used for listboxes, replace with widget!!!!! SelectionMode : TGtkSelectionMode; // currently only used for listboxes ListItem : PGtkListItem; // currently only used for listboxes + Rect : TRect; begin result := 0; //default value just in case nothing sets it @@ -525,7 +526,14 @@ activate_time : the time at which the activation event occurred. if not (sender is TSpeedbutton) then ReDraw(PgtkWidget(Handle)) else - (Sender as TSpeedButton).perform(LM_PAINT,0,0); + if (sender is TSpeedButton) then + If TSpeedbutton(sender).Visible then (Sender as TSpeedButton).perform(LM_PAINT,0,0) + else + Begin + Rect := TSpeedButton(sender).BoundsRect; + InvalidateRect(TSpeedButton(sender).Parent.Handle,@Rect,True); + + end; end; LM_AddPage : @@ -2666,6 +2674,10 @@ end; { ============================================================================= $Log$ + Revision 1.28 2001/02/06 14:52:47 lazarus + Changed TSpeedbutton in gtkobject so it erases itself when it's set to visible=false; + Shane + Revision 1.27 2001/02/04 04:18:12 lazarus Code cleanup and JITFOrms bug fix. Shane