summaryrefslogtreecommitdiff
path: root/src/gui
AgeCommit message (Collapse)Author
2008-01-26* Middle mouse button click was never detected.graemeg
* CaptureMouse and ReleaseMouse is now not used by default for the TfpgPopupWindow class. * Menu mouse behaviour improved * Fixed Combobox dropdown that did not react to mouse clicks. * Removed support for changing the focused item with the arrow keys. It's not standard behaviour.
2008-01-21* GDI: Fixed index out of bounds errors in ComboBox.graemeg
* GDI: Mouse up/down click now works similar to X11. * GDI: I still have prenty of debug writeln() statements and will only remove them once my testing is complete.
2008-01-21* Fixed some memory leaks in TfpgComboBox.graemeg
* Fixed the destruction order of TfpgComboBox. * Introduced DoRemoveWindowLookup() in gfxbase.pas so that we can offload some of the responsibility from DoReleaseWindowHandle() * Add two new debug methods to help debug fpGUI and fpGUI based applications. They are PrintCallTrace() and PrintCallTraceDbgln(). * Fixed 'Index out of bounds' error when quiting your application. * I included lots of debug output in this revision, so I can test under Windows. As soon as I confirmed everything works, I'll remove the debug output again.
2008-01-16* Fixed a bug where the Right and Centre mouse button dectection was wrong ↵graemeg
way round. * TfpgEdit now has a new PopupMenu property. If assigned that menu will appear when you Right click. If PopupMenu is nil, a default popup menu will appear with the usual Cut, Copy, Paste and Clear All items.
2008-01-14* Removed a debug writeln statement from gui_edit unit.graemeg
* Added the extra interpolation unit to fpgfx.pas so it can be auto compiled from the scripts in the src directory. * Added the missing extrafpc.cfg files from some example projects. * Renamed some of the examples main units to have the lpr extension. Consistancy with the other projects. * FreeBSD is now an official supported platform. I've compiled and ran all example and prototype projects. Everything works perfectly.
2008-01-14* ShowMessage can now Centre of Left Align the text.graemeg
* Long text with paragraphs are now handled and painted correctly in the MessageBox and Message Dialog.
2008-01-14* I wrapped libc unit and calls with IFDEF's so it should compile under ↵graemeg
FreeBSD now.
2008-01-12* Fixed MessageDialog crash on exit under Windows.graemeg
* Fixed the mbYesNoCancel button order in a MessageDialog. * Extended the FileDialog example for testing purposes of the MessageDialog class.
2008-01-11* Refactored some code so that MessageBox and MessageDialog can share some code.graemeg
* MessageDialog doesn't inherit from TfpgBaseDialog anymore. * Implemented all MessageDialog message types. * MessageDialog is pretty much working now. Buttons get created correcty. Returns the correct button clicked. Long text gets displayed and wrapped correctly. I still need to to some code cleanup and more testing and create an example program.
2008-01-11* TfpgMemo now allows the user to tab out of the component if UseTabs = False.graemeg
2008-01-11* TfpgWidget now has two new events. OnEnter and OnExit so the user can trap ↵graemeg
when a component receives or looses keyboard focus. TfpgEdit has a few new methods. Clear() which clears the Text. ClearSelection() which removes the selected text only. CopyToClipboard(), CutToClipboard() and PasteFromClipboard() is fairly obvious. TfpgEdit has some new properties. AutoSelect - in enabled (default) will auto select all text when the component receives keyboard focus. HideSelection - by default hides the selection rectangle when the components looses focus. If set to False the selections rectangle will be grayed - not the the user interfaces will look busy if many edit controls keep showing their selections, but now you have a choice.
2008-01-11* TfpgEdit now paints the selected text even if the component doesn't have ↵graemeg
focus. Different colors get used if it has focus or not.
2008-01-10* Made some nice progress with the MessageDialog class. Buttons are created ↵graemeg
dynamically. Captions get set and the default button gets set. I still have plenty to do, but it's progress.
2008-01-09* Started working on a fpGUI Message Dialog feature.graemeg
2008-01-07* Moved many methods from Public to Private or Protected in gui_menu.pasgraemeg
* Added a lot more sanity checks to prevent unnecessary processing. * Removed unnecessary requests for painting outside the HandlePaint method. * Menus are working again under Windows.
2008-01-04* GUI: Moved all MenuItem painting into the Paint event handler.graemeg
* GUI: MenuItems OnClick is now triggered on mouse button up (like all other toolkits). * GUI: Clicking outside a menu while it's open doesn't trigger the OnClick event anymore. * Examples: Extended the menu example to show when each menu item's OnClick was triggered. * All the above needs testing under Windows.
2008-01-03* Reworked the timing of when windows get removed from thegraemeg
internal lookup list. * Reordered some methods on destruction of a form. * fpGFX-X11 now reports lost windows for X11 events. * Added extra checks in the X11 event handling to make sure we have found a actual window before we try and process the event. This fixes the crashing of applications when you close a window by clicking the X button on System Menu.
2008-01-03* Applied gui_edit.pas patch from David Emersongraemeg
2008-01-02* Fixed AV that occurs when a combobox is opened and closed a few times.graemeg
* A minor improvement to the internal stringlist for ListBox components.
2007-12-27* ComboBox dropdown now opens and closes as expected when you click insidegraemeg
the body of the combobox. * When OnClick was introduced in TfpgWidget, it caused duplicate OnClick calls. This has now been fixed. * PopupWindow.Close now calls HandleClose instead of HandleHide. * Fixed a few bugs in ComboBox and ListBox components.
2007-12-14* Implemented Cell Text Alignment.graemeg
* Fixed CalendarCombo so dates are centered in grid cells. * Fixed memory leak in AbstractCombobox. * Modified the GridTest example to show the column text alignment in action.
2007-12-14* Implemented a OnClick event in TfpgWidget.graemeg
* published OnClick and OnDoubleClick in TfpgLabel, TfpgButton, TfpgBevel.
2007-12-11* Fixed TfpgApplication to call CheckSynchronize in the application loop so ↵graemeg
multithreaded applications will work. * TfpgApplication now inherits from TComponent so it can act as a container for other components like Forms. * Implemented CreateForm in TfpgApplication. * Fixed the default Height of TfpgComboBox to look at the specified Font instead of a hardcoded value.
2007-12-04* Fixed a memory leak in TfpgCombobox.graemeg
* Fixed a couple of memory leaks in gui_tree.pas
2007-12-04* Minor painting improvement in the treeview nodes.graemeg
2007-12-03* Minor painting fixed to Gauge and ProgressBar frame painting.graemeg
* Minor fix to VerticalBar gauge painting where it oversheets the outer frame. * Implemented anti-aliased line drawing in Needle Gauge and Dial Gauge, but it's only experimental.
2007-12-02* Implemented ButtonBevel and FocusRect style based drawing. Currently only ↵graemeg
active in the prototypes directory, but will later be moved to src/gui
2007-11-30* Some more minor improvements to the prototype Bitmap theme support.graemeg
2007-11-29* Created a new overloaded CentrePoint function.graemeg
* Implemented a new method TfpgPopupMenu.MenuItemByName * Created a example project showing how the ICommand and ICommandHolder interfaces can be used.
2007-11-28* Implemented a Command pattern interface.graemeg
* Added CommandHandler support to TfpgButton.
2007-11-26* Correctly set the default value for some properties in the TreeView.graemeg
* Implemented double clicking on files in the Open/Save dialog.
2007-11-08* Implemented a new mediator for use with tiOPF for the Calendar graemeg
component. * Removed the ColResize property from BaseGrid. It doesn't work as advertised. It needs to be implemented correctly. * Implemented MinDate, MaxDate properies for Calendar and did a lot more testing with a few more bugfixes. Still plenty outstanding.
2007-11-08* GUI: Changed the PgUp and PgDn directions in the Calendar component, to be ↵graemeg
consistant with the Up/Down Arrows.
2007-11-08* X11: Setting a window title via netlayer does not work for thegraemeg
IceWM. I had to add the old XSetWMName back into the code. * GUI: Renamed the ComboCalendar's Value property to DateValue. * GUI: Minor change in Gauges property visibility. * UIDesigner: Added the ComboCalendar and Gauge components to the palette.
2007-11-07* Rename TfpgCustomComboBox to TfpgAbstractCoboBox.graemeg
* Implemented a actualy Calendar Combobox. It's usable at this stage. * Improved the calendar test project to try out more things.
2007-11-07* Added a OnKeyPress event to TfpgWidget. It can now be surfaced by anygraemeg
descendants. * Added keyboard handling to Calendar component. * Surfaced OnKeyPress event in TfpgEdit and TfpgStringGrid. * Updated the lazarus code template file.
2007-11-06* Added new TfpgGauge component. Thanks to Giuliano Colla.graemeg
* Added new Gauges demo program - thanks to Giuliano Colla.
2007-11-06* SetLineStyle and LineWidth are now fully supported under X11 and GDI.graemeg
Drawing results are identical.
2007-11-05* More improvements to Calendar component.graemeg
* Lots of refactoring in the text Edit component. * Added a new property BorderStyle to the Edit component.
2007-11-05* Implemented BeginUpdate and EndUpdate for BaseGrid.graemeg
* Modified StringGrid to rather use BeginUpdate/EndUpdate instead of calling RePaint directly. * Calendar component now also uses the BeginUpdate/EndUpdate calls to drasticly improve the grid painting speed.
2007-11-03* Improved modal form in X11 to use net window hintsdrewski207
* Implemented NET_WM_PING so newer window managers can kill our process if it stops responding * Changed how Modal form are stored. fpgApplication now keeps a stack/list of Modal Forms * Added fpgApplication PushModalForm and PopModalForm * Fixed a bug in WindowAddProtocol which caused a libc doublefree error
2007-11-03* Started working on a Calendar component.graemeg
* Created a new example project to test the calendar component. Please note it is NOT complete yet. * Added a ScrollBarStyle property to BaseGrid to control the ScrollBar visibility.
2007-11-02* New Background property for TfpgBevelgraemeg
2007-10-29* Started implementing Message Dialogs (with multiple buttons, icons etc).graemeg
2007-10-28* Refactored the TfpgLabel component.graemeg
* Implemented a TfpgDBLabel (data-aware) label component. * Created a new DB test example to show how TfpgDBLabel works.
2007-10-28* Fixed the menu click issue under Windows.graemeg
* Added a new DumpStack procedure to help programmers debug there code.
2007-10-25* Added new UTF8 function used for text translations with .po files.graemeg
* Added BackgroundColor as new published property of TrackBar component. * Specified default property values for BaseGrid component. This help optimize the UI Designer generated code. * Started refactoring code from TfpgEdit to TfpgCustomEdit. This is still incomplete. * Added new prototype project for testing a new Master Maths custom theme.
2007-10-22* Fixed more default property values.graemeg
2007-10-22* Minor update to the tiOPF generic edit mediators unit.graemeg
* Correctly set the default values for Form and PageControl components. * Improved the UI Designer so only non-default values for Boolean and Enum types are written to file.
2007-10-21* GUI: Set correct default values for published properties of ProgressBar ↵graemeg
and TrackBar components. * UI Designer: Only non-default integer property values get written to units when saved. Before all values where written even if they where the defaults.