diff options
author | graemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf> | 2007-06-05 11:46:44 +0000 |
---|---|---|
committer | graemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf> | 2007-06-05 11:46:44 +0000 |
commit | 47340659a723589f6381cadbc95fd88298412269 (patch) | |
tree | 9d25251d07f37b3ec38c1932c484caa4e0b0380e | |
parent | 5c84b5c66c967254400370c991170a61533a8014 (diff) | |
download | fpGUI-47340659a723589f6381cadbc95fd88298412269.tar.xz |
* Finally fixed the menu dropdown issue where you had to click twice to get the menu to drow down.
-rw-r--r-- | AUTHORS.txt | 15 | ||||
-rw-r--r-- | examples/gfx/helloworld/helloworld.lpi | 7 | ||||
-rw-r--r-- | examples/gfx/imgtest/imgtest.lpi | 7 | ||||
-rw-r--r-- | examples/img/masktest/masktest.lpi | 1 | ||||
-rw-r--r-- | gui/fpgui.pas | 7 | ||||
-rw-r--r-- | gui/fpguibin.inc | 2 | ||||
-rw-r--r-- | gui/fpguibuttons.inc | 2 | ||||
-rw-r--r-- | gui/fpguicheckbox.inc | 2 | ||||
-rw-r--r-- | gui/fpguicombobox.inc | 2 | ||||
-rw-r--r-- | gui/fpguicontainer.inc | 2 | ||||
-rw-r--r-- | gui/fpguidialogs.inc | 2 | ||||
-rw-r--r-- | gui/fpguiedit.inc | 2 | ||||
-rw-r--r-- | gui/fpguiform.inc | 2 | ||||
-rw-r--r-- | gui/fpguigrid.inc | 2 | ||||
-rw-r--r-- | gui/fpguigroupbox.inc | 2 | ||||
-rw-r--r-- | gui/fpguilabel.inc | 2 | ||||
-rw-r--r-- | gui/fpguilayouts.inc | 2 | ||||
-rw-r--r-- | gui/fpguilistbox.inc | 16 | ||||
-rw-r--r-- | gui/fpguimemo.inc | 2 | ||||
-rw-r--r-- | gui/fpguimenus.inc | 19 | ||||
-rw-r--r-- | gui/fpguipanel.inc | 2 | ||||
-rw-r--r-- | gui/fpguipopupwindow.inc | 2 | ||||
-rw-r--r-- | gui/fpguiprogressbar.inc | 2 | ||||
-rw-r--r-- | gui/fpguiradiobutton.inc | 2 | ||||
-rw-r--r-- | gui/fpguiscrollbox.inc | 2 | ||||
-rw-r--r-- | gui/fpguiseparator.inc | 2 | ||||
-rw-r--r-- | gui/fpguiwidget.inc | 13 |
27 files changed, 76 insertions, 47 deletions
diff --git a/AUTHORS.txt b/AUTHORS.txt index 9efac32c..e18c6002 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -1,11 +1,18 @@ -Original Author --------- ------ + + Here is a list of people that have worked or are working on + the fpGUI project. + + +Original Author (not active anymore) +------------------------------------ Sebastian Guenther <sg@freepascal.org> -Main Author ------------ + +Current Author +-------------- Graeme Geldenhuys <graemeg@gmail.com> + Contributors ------------ Felipe Monteiro de Carvalho <felipemonteiro.carvalho@gmail.com> diff --git a/examples/gfx/helloworld/helloworld.lpi b/examples/gfx/helloworld/helloworld.lpi index 6347b8e1..ecdd333f 100644 --- a/examples/gfx/helloworld/helloworld.lpi +++ b/examples/gfx/helloworld/helloworld.lpi @@ -28,12 +28,17 @@ <PackageName Value="fpgfxpackage"/> </Item1> </RequiredPackages> - <Units Count="1"> + <Units Count="2"> <Unit0> <Filename Value="helloworld.pas"/> <IsPartOfProject Value="True"/> <UnitName Value="HelloWorld"/> </Unit0> + <Unit1> + <Filename Value="../subwindow/subwindow.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="subwindow"/> + </Unit1> </Units> </ProjectOptions> <CompilerOptions> diff --git a/examples/gfx/imgtest/imgtest.lpi b/examples/gfx/imgtest/imgtest.lpi index 57b067c6..c507609d 100644 --- a/examples/gfx/imgtest/imgtest.lpi +++ b/examples/gfx/imgtest/imgtest.lpi @@ -1,7 +1,7 @@ <?xml version="1.0"?> <CONFIG> <ProjectOptions> - <PathDelim Value="\"/> + <PathDelim Value="/"/> <Version Value="5"/> <General> <Flags> @@ -9,7 +9,7 @@ </Flags> <SessionStorage Value="InProjectDir"/> <MainUnit Value="0"/> - <IconPath Value=".\"/> + <IconPath Value="./"/> <TargetFileExt Value=""/> </General> <PublishOptions> @@ -20,7 +20,7 @@ <RunParams> <local> <FormatVersion Value="1"/> - <LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/> + <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> </local> </RunParams> <RequiredPackages Count="1"> @@ -39,7 +39,6 @@ </ProjectOptions> <CompilerOptions> <Version Value="5"/> - <PathDelim Value="\"/> <CodeGeneration> <Generate Value="Faster"/> </CodeGeneration> diff --git a/examples/img/masktest/masktest.lpi b/examples/img/masktest/masktest.lpi index dda2a998..e250102f 100644 --- a/examples/img/masktest/masktest.lpi +++ b/examples/img/masktest/masktest.lpi @@ -14,7 +14,6 @@ </VersionInfo> <PublishOptions> <Version Value="2"/> - <IgnoreBinaries Value="False"/> <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/> <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/> </PublishOptions> diff --git a/gui/fpgui.pas b/gui/fpgui.pas index ca17a278..22fcfcc9 100644 --- a/gui/fpgui.pas +++ b/gui/fpgui.pas @@ -38,6 +38,7 @@ interface uses {$IFDEF mswindows} + // used for system theme color detection Windows, GFX_GDI, // This must be removed!!! {$ENDIF} SysUtils @@ -74,9 +75,9 @@ resourcestring type - TFWidget = class; - TEventObj = class; - TFCustomForm = class; + TFWidget = class; + TEventObj = class; + TFCustomForm = class; TFWidgetState = set of ( diff --git a/gui/fpguibin.inc b/gui/fpguibin.inc index 3915ae32..529b7534 100644 --- a/gui/fpguibin.inc +++ b/gui/fpguibin.inc @@ -3,7 +3,7 @@ Bin widget declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguibuttons.inc b/gui/fpguibuttons.inc index 216f5044..f8281491 100644 --- a/gui/fpguibuttons.inc +++ b/gui/fpguibuttons.inc @@ -3,7 +3,7 @@ Button class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguicheckbox.inc b/gui/fpguicheckbox.inc index d2615a1c..7bfd40c9 100644 --- a/gui/fpguicheckbox.inc +++ b/gui/fpguicheckbox.inc @@ -3,7 +3,7 @@ Checkbox class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguicombobox.inc b/gui/fpguicombobox.inc index 5eef10d8..371113aa 100644 --- a/gui/fpguicombobox.inc +++ b/gui/fpguicombobox.inc @@ -3,7 +3,7 @@ ComboBox class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguicontainer.inc b/gui/fpguicontainer.inc index 6b9611c9..dbe87d25 100644 --- a/gui/fpguicontainer.inc +++ b/gui/fpguicontainer.inc @@ -3,7 +3,7 @@ Container class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguidialogs.inc b/gui/fpguidialogs.inc index 413b11c3..97932917 100644 --- a/gui/fpguidialogs.inc +++ b/gui/fpguidialogs.inc @@ -3,7 +3,7 @@ Dialogs class declarations - Copyright (C) 2000 - 2007 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiedit.inc b/gui/fpguiedit.inc index 79bb2a70..34e822cc 100644 --- a/gui/fpguiedit.inc +++ b/gui/fpguiedit.inc @@ -3,7 +3,7 @@ Edit class declarations - Copyright (C) 2000 - 2007 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiform.inc b/gui/fpguiform.inc index 2ff0ad37..b87e47fe 100644 --- a/gui/fpguiform.inc +++ b/gui/fpguiform.inc @@ -3,7 +3,7 @@ Form class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguigrid.inc b/gui/fpguigrid.inc index be11ae2e..b23a7fae 100644 --- a/gui/fpguigrid.inc +++ b/gui/fpguigrid.inc @@ -3,7 +3,7 @@ Grid class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguigroupbox.inc b/gui/fpguigroupbox.inc index cf51071b..25c4d70e 100644 --- a/gui/fpguigroupbox.inc +++ b/gui/fpguigroupbox.inc @@ -3,7 +3,7 @@ GroupBox class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguilabel.inc b/gui/fpguilabel.inc index 80ca2346..31f11aef 100644 --- a/gui/fpguilabel.inc +++ b/gui/fpguilabel.inc @@ -3,7 +3,7 @@ Label class declarations - Copyright (C) 2000 - 2007 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguilayouts.inc b/gui/fpguilayouts.inc index 2c45cf84..72f8ee92 100644 --- a/gui/fpguilayouts.inc +++ b/gui/fpguilayouts.inc @@ -3,7 +3,7 @@ Layout Managers class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguilistbox.inc b/gui/fpguilistbox.inc index 6858940a..cbba2067 100644 --- a/gui/fpguilistbox.inc +++ b/gui/fpguilistbox.inc @@ -1,3 +1,19 @@ +{ + fpGUI - Free Pascal GUI Library + + ListBox class declarations + + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this + distribution, for details of the copyright. + + See the file COPYING.modifiedLGPL, included in this distribution, + for details about redistributing fpGUI. + + 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. +} + {%mainunit fpgui.pas} { Listbox widget implementation } diff --git a/gui/fpguimemo.inc b/gui/fpguimemo.inc index c9682e2d..7fec6cad 100644 --- a/gui/fpguimemo.inc +++ b/gui/fpguimemo.inc @@ -3,7 +3,7 @@ Memo class declarations - Copyright (C) 2000 - 2007 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguimenus.inc b/gui/fpguimenus.inc index 94a61e03..8a2c121b 100644 --- a/gui/fpguimenus.inc +++ b/gui/fpguimenus.inc @@ -3,7 +3,7 @@ Menu class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, @@ -16,12 +16,9 @@ {%mainunit fpgui.pas} -{ - All menu and menu item implementations -} - {$IFDEF read_interface} + // forward class declarations TFPopupMenu = class; TFMenuBar = class; @@ -67,13 +64,10 @@ { TFMenuBar } TFMenuBar = class(TFCustomBoxLayout) - private - protected public constructor Create(AOwner: TComponent); override; function AddMenu(const pTitle: string): TFMenuItem; function AddMenu(const pTitle: string; const pHotKeyDef: string; pHandlerProc: TNotifyEvent): TFMenuItem; - published end; {$ENDIF read_interface} @@ -95,16 +89,20 @@ procedure TFMenuItem.InternalShowPopupMenu; begin if Assigned(FSubMenu) and FSubMenu.Visible then begin +// writeln('Closing submenu'); FSubMenu.Close; Exit; //==> end; if not Assigned(FSubMenu) then begin +// writeln('Creating submenu'); FSubMenu := TFPopupMenu.Create(Self); end; +// writeln('set submenu position...'); FSubMenu.SetPosition(ClientToScreen(Point(0, Height))); +// writeln('show submenu...'); FSubMenu.Show; FSubMenu.Wnd.SetMinMaxClientSize(MaxSize, MaxSize); end; @@ -150,10 +148,14 @@ procedure TFMenuItem.Click; begin if (wsMouseInside in WidgetState) and Assigned(FSubMenu) then begin +// writeln('Passed'); InternalShowPopupMenu; end else + begin +// writeln('Failed'); inherited Click; + end; if FindForm is TFPopupMenu then TFPopupMenu(FindForm).Close; @@ -182,6 +184,7 @@ begin BorderWidth := 1; Color := clBlack; Name := '_MenuPopup'; + Visible := False; FMenu := TFMenuBar.Create(self); FMenu.Name := '_VBoxMenu'; diff --git a/gui/fpguipanel.inc b/gui/fpguipanel.inc index 3d77e891..b0fbf655 100644 --- a/gui/fpguipanel.inc +++ b/gui/fpguipanel.inc @@ -3,7 +3,7 @@ Panel class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguipopupwindow.inc b/gui/fpguipopupwindow.inc index 9b735c2d..8a995e6b 100644 --- a/gui/fpguipopupwindow.inc +++ b/gui/fpguipopupwindow.inc @@ -3,7 +3,7 @@ PopupWindow class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiprogressbar.inc b/gui/fpguiprogressbar.inc index 3bdc91f3..0f8f4dd0 100644 --- a/gui/fpguiprogressbar.inc +++ b/gui/fpguiprogressbar.inc @@ -3,7 +3,7 @@ Progress Bar class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiradiobutton.inc b/gui/fpguiradiobutton.inc index d17360c7..58240ac6 100644 --- a/gui/fpguiradiobutton.inc +++ b/gui/fpguiradiobutton.inc @@ -3,7 +3,7 @@ RadioButton class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiscrollbox.inc b/gui/fpguiscrollbox.inc index d6b22a24..9c66b987 100644 --- a/gui/fpguiscrollbox.inc +++ b/gui/fpguiscrollbox.inc @@ -3,7 +3,7 @@ ScrollBox class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiseparator.inc b/gui/fpguiseparator.inc index d4566801..d415956d 100644 --- a/gui/fpguiseparator.inc +++ b/gui/fpguiseparator.inc @@ -3,7 +3,7 @@ Separator class declarations - Copyright (C) 2000 - 2006 See the file AUTHORS.txt, included in this + Copyright (C) 2006 - 2007 See the file AUTHORS.txt, included in this distribution, for details of the copyright. See the file COPYING.modifiedLGPL, included in this distribution, diff --git a/gui/fpguiwidget.inc b/gui/fpguiwidget.inc index baf5e927..249c1ce2 100644 --- a/gui/fpguiwidget.inc +++ b/gui/fpguiwidget.inc @@ -402,15 +402,14 @@ end; function TMouseMoveEventObj.SendToChild(AChild: TFWidget): Boolean; begin - if AChild.WidgetState * [wsEnabled, wsIsVisible] = [wsEnabled, wsIsVisible] - then + if AChild.WidgetState * [wsEnabled, wsIsVisible] = [wsEnabled, wsIsVisible] then begin - if PtInRect(AChild.BoundsRect, Position) and not - (wsMouseInside in AChild.WidgetState) then + if PtInRect(AChild.BoundsRect, Position) and not (wsMouseInside in AChild.WidgetState) then AChild.DoMouseEnter(Shift, Position - AChild.Origin); Result := inherited SendToChild(AChild); - end else + end + else Result := False; end; @@ -645,10 +644,10 @@ end; procedure TFWidget.Redraw; begin - Redraw(Rect(0, 0, BoundsSize.cx, BoundsSize.cy)); {$IFDEF DEBUG} - writeln(ClassName + '.Redraw'); + writeln(Format('TFWidget.Redraw -> %s:%s', [Text, ClassName])); {$ENDIF} + Redraw(Rect(0, 0, BoundsSize.cx, BoundsSize.cy)); end; procedure TFWidget.Redraw(const ARect: TRect); |