summaryrefslogtreecommitdiff
path: root/src/gui/gui_combobox.pas
AgeCommit message (Collapse)Author
2008-07-11Combo resize patch applied from Luiz Americo.graemeg
2008-06-26* More code clean up.graemeg
* Renamed some classes to have consistent naming convention. * Created some Base classes to create custom components from.
2008-06-24* Using Assign() to set Items of TfpgComboBox did not update the displayed text.graemeg
* Added a new option to the TfpgBaseComboBox.Options called wo_AllowUserBlank. By default a user cannot use Up arrow to reset/blank the ComboBox to FocusItem = -1. You now have to add wo_AllowUserBlank in the Options to enable that.
2008-06-23* TfpgListBox now handles the Resize message. This fixes the scrollbar issue ↵graemeg
in the UI Designer and at runtime resizing. * Implemented correct 'lazy refresh' in TfpgWidget when setting the size and position with .SetPostion() method. * Refactored the Combo components removing some code duplication. Some paint methods are now inthe BasicCombobox component.
2008-05-27* Applied Vladimir's button flag patch.graemeg
2008-05-19* Merged my private graemeg branch changes (r752:r781) into trunk. These ↵graemeg
changes are required to change all componens from 1-based indexing to 0-based indexing.
2008-05-09* Fixed bug where Up or Down arrow usage in ComboBox without drowpdown did ↵graemeg
not fire OnChange event.
2008-04-27* Removed unneeded Canvas.BeginDraw and Canvas.EndDraw calls.graemeg
2008-04-11* Implemented OnClose event for TfpgPopupWindowgraemeg
* Implemented OnDropDown and OnCloseUp for any combobox type component. * TfpgCombobox.FocusItem can now be set via code without the OnChange event firing (default). This behaviour can be modified with the TfpgComboBox.Options property.
2008-03-28* Many big changes which removes bucket loads of compiler warnins. These ↵graemeg
will probably break code, but they are easy to fix in your own code. * All Grid Columns and Rows are now Longword types and not Integer. We mixed them all over the place, even though the grids do not support negative rows or columns. * Fixed up the UI Designer because of previous change. Same goes for examples. * Made some changes to get fpGUI compilable under FPC 2.3.1 (latest trunk), but yet no fpGUI application runs yet. No idea why yet.
2008-03-23* Implemented a basic Color ListBox component. It is still incomplete and ↵graemeg
has no published properties yet.
2008-03-20* Added a property to TfpgCanvasImpl(x11) FastDoubleBufferdrewski207
* Fixed painting of ListView Column * Misc Listview painting changes * Added OnColumnPaint to ListView The new property FastDoubleBuffer will probably be moved to TfpgCanvaseBase also perhaps this can be set with an application property since it doesn't free the backbuffer until the Canvas is freed which will result in some increase in memory usage. The listview can have double buffering disabled now and it won't flicker sonce the painting is done with no overlapping rects.
2008-03-19* ComboBox and CalendarCombo now work identical under Linux and Windows. ↵graemeg
Combos close when clicking in the main combo area. Testing Win2000 and Linux.
2008-03-19* Finally I seem to have solved the mystery of the ComboBox that refuses to ↵graemeg
close. And what a silly bug it was. * Applied a minor fix to CalenderCombo so it behaves like the normal ComboBox.
2008-03-16* I implement an improved positioning of dropdown window of Combobox and ↵graemeg
EditCombo when it runs out of screen space. It also handles resizing if the dropdown is bigger that the screen is high. * Started refactoring the ComboBox and EditComboBox. There was just to much code duplication. I am still busy with it, but please test and let me know if I broke something.
2008-03-16* Applied patch [1909573] from Jean-Marc making changes to EditCombo component.graemeg
2008-03-15* Removed the old TDropdownWindow class from gui_combobox.pas unit.graemeg
* ComboBox OnChange event now fires again. * Found and tagged the Dropdown window flicker issue, but not sure how to fix it yet.
2008-03-15* TfpgComboBox - Implemented a new internal dropdown window. It is a cleaner ↵graemeg
design and does not contain the keyboard bug detected after the dropdown window is shown. * TfpgComboBox now supports Alt+Down Arrow to open the combobox dropdown. * TfpgComboBox now position the Focusitem in a much better way and takes into account the beginning, middle or end of the drowdown list and the dropdowncount.
2008-03-14* Applied ComboBox patch from Antonio to allow Up and Down keys to change ↵graemeg
selected item.
2008-03-10* Applied a partial patch from Jean-Marc regarding ComboBox autosize feature.graemeg
* I also implemented the AList parameter handling in the CreateCombo function.
2008-03-10* Fixed a minor bug in the TfpgAbstractComboBox.SetText reported by Viktor.graemeg
2008-02-22* Applied Label patch from Jean-Marc which adds WrapText and Alignment ↵graemeg
properties to the label component.
2008-02-20* Applied Vladimir's patch for arrow key support in RadioButtons.graemeg
* TfpgWidget.TabOrder is now set at creation time. * Published the TabOrder property for all components that can receive keyboard input. * Extended the UI Designer so the TabOrder property can be edited.
2008-02-18* I think I fixed the issue with PopupWindows taking focusgraemeg
under Windows. * I think I fixed the click selection issues in ComboBoxes. * Also I believe the Calendar component now works under Windows. * Menuse should now works correctly. All the above tested on Win2k. * Due to the above changes I had to modify resizer component in the UI Designer. There is still one minor issue, but that should be fixed soon.
2008-02-15* Applied Jean-Marc's TextColor and BackgroundColor patch.graemeg
* Made many more modifications based on Jean-Marc's patch and fixed a few things missed.
2008-02-06* Added a new unit gui_editcombo. This is still undergraemeg
heavy development. * Rename IsWinXP to IsWinXPOrLater. Also improved the check to support Windows Vista. * SetFirstItem() is now moved to the public section in gui_listbox.pas unit. * Updated the contributors list.
2008-02-04* Applied patch from Jean-Marc creating new properties for ComboBox and ListBox.graemeg
* Modified the edittest example to show the new changes in action.
2008-01-28* Removed the unused debug code in ComboBox and ListBox units.graemeg
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-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-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-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-10-17* Fixed a ComboBox clipping issue where long text would paint over the ↵graemeg
internal button. * Base Dialog now has a better min width and height set. * FileDialog example's form is now maintained by the UI Designer.
2007-10-02* Fixed the Generic Edit Mediator unit for the Dynamic ComboBox.graemeg
The FocusItem property is 1-based and not 0-based like it was implemented. This is where fpGUI is different from LCL or VCL. * Created a MaxLength property for TfpgMemo * Added a comment in gui_combobox so developers know the component is 1-based. Soon the documentation will also mention this.
2007-09-26* Added copyright information in the GUI units.graemeg
2007-09-14* Introduced Setter methods for BaseWindow Width and Height properties.graemeg
* Fixed a minor bug in ComboBox that maintained it's own Width property. This also fixed the issue in the uiDesigner loading forms with comboboxes and not painting the internal button.
2007-09-14* New overloaded EndDraw method for TfpgCanvas.graemeg
* Finished implementation change of ComboBox internal button. It now uses a fake (painted) button instead of a real button. Up/Down state is also supported. * Implemented Up/Down state for Scrollbar buttons. * Increased the version numbers of the fpGUI packages and uiDesigner. * If TfpgEdit is disabled, the mouse cursor doesn't change to a I beam.
2007-09-13combobox changesgraemeg
2007-08-27* Implemented List Mediators with tiOPF support and added a demo.graemeg
* Added a quick workaround for the InvertCaret function causing a AV. * MenuBar now keeps the current menu focused even if you open more than 2 levels deep of Popup Menus. * Added some TODO entries to Widgets. Also published some missing properties. * Fixed repainting issue with TfpgComobBox when you set the Width from code and made the component focusable. Not sure why it wasn't! * Updated Lazarus IDE code template for new fpGUI applications.
2007-08-24* Implement MaxLength in TfpgEditgraemeg
* Published some missing properties in TfpgTrackBar. * TfpgEdit now correctl fires off the OnChange event. * A new Text property has been implemented in TfpgComboBox. * Minor fixes to the generic Edit mediators used for tiOPF. * Added a Edit Mediator demo which tests the implementation. It works!
2007-08-18* Moved and renamed gui_popupwindows.pas unit from GUI to CoreLib.graemeg
* X11: Completed popup window support. * GUI: Amended TfpgComboBox to rather use a popup window for the dropdown portion of the control. * The previous change fixed the issue in the FileDialog where you couldn't select a combo box item with the mouse.
2007-08-17* Implemented a FileOpen and FileSave dialog. Both are the same class. It'sgraemeg
not 100% yet. See ToDo list in header of gui_dialogs unit. * Minor bug fix in ComboBox component and added missing (required) properties. * Fixed a bug in TfpgCustomGrid.Destroy. Creating a decendant of TfpgCustomGrid caused a crash in the destructor. * Fixed bug in ListBox where scrollbar did not move with mouse wheel input. * Added a new FileDialog example project.
2007-08-08* Finally fixed all painting issues with rectangles and clipping.graemeg
* Reverted the methods back to using TfpgRect instead of TRect. TfpgRect has better support for Width and Heigh - required by many Canvas methods. * Implemented helper functions like InflateRect but support TfpgRect * Fixed all painting issues and rectangle sizes in all components. * Fixed up all examples and test projects to compile and work correctly. * Fixes some clip rectangle issues under Linux. TfpgRect was a big help. * Changed the method signatures of many Canvas methods to rather use x, y, width and height. This causes much less confusion and actually less coding in widgets.
2007-08-07* Changed the parameters of DrawRectangle, FillRectangle to rather use Width ↵graemeg
and Height. * DrawLine and DrawRectangle now use the same coordinate system as Windows does. * I need to fixed corrupted painting in widgets due to this.
2007-07-31* Fixed painting of TfpgListBoxgraemeg
* Improved focus rectangle in TfpgComobBox.