summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-10-28Bugfix: TfpgX11Application.HandleDNDposition's XdndStatus message sent did ↵Graeme Geldenhuys
not correctly set the ActionType parameter if the drag was not accepted.
2010-10-28OnDragLeave event now has the Sender parameter set, and points to the target ↵Graeme Geldenhuys
component
2010-10-28TfpgDrag.Execute: replaced Assert() calls with Exceptions.Graeme Geldenhuys
This does error checking before and DND gets triggered. The error messages must still be replaced with resource strings though.
2010-10-28TfpgDrag.Execute now has a default TfpgDropAction drop action of daCopy.Graeme Geldenhuys
2010-10-27X11 DND: We never checked if drop was really accepted in HandleDNDDropGraeme Geldenhuys
If the Drop occured, but AcceptDrops = False, we must not do any Selections conversions. This is now so. We must still send the XdndFinished message though, so data object can be freed, and to simply comply with XDND protocol. We now correctly set the Accept or Decine status in the XDNDFinished message.
2010-10-27Renamed TfpgWindowBase.DoEnabledDrops() to DoDNDEnabled()Graeme Geldenhuys
This will hopefully reduce the confusion between the other TfpgWidget.AcceptDrops property - they had too similar names. * Applied rename changes to all other descendants too * Updated DND demo project
2010-10-27X11 DND: Incorrectly assumed there will always be a 'text/plain' mime-typeGraeme Geldenhuys
If the developer did not set the AMimeChoice in OnDragEnter, then the incorrect default could have been used. By default it used to deflaut to 'text/plain' and never actually checked the mime-type list to see if that exists. :-( Now the default AMimeChoice is set the the first mime-type in the mime-type list. This keeps with the methodology that the mime-type list must be from most specific to least specific mime types.
2010-10-26X11: in HandleDNDposition() we never recursed through all childrenGraeme Geldenhuys
The bug was that it only checked for the immediate children of the toplevel window. It never recursed through all levels of children finding the correct child the mouse cursor is over. This is now fixed. This also allows embedded frames or forms to work with DND.
2010-10-26X11: make sure that AcceptDrops are True before we fire OnDragDropGraeme Geldenhuys
There was a bug where if the component had a OnDragDrop event handler and AcceptDrops was False, it still triggered the event. Not any more.
2010-10-26X11: improved DND debug messagesGraeme Geldenhuys
I also made sure that all writeln() statements are wrapped in IFDEF's.
2010-10-25Improved event firing of OnDoubleClick and OnClickGraeme Geldenhuys
* Single click produces one OnClick event * On a Double Click in produces a OnClick, then a OnDoubleClick event. Old behaviour used to procuder yet another OnClick at the end. This is not needed. * OnMouseDown and OnMouseUp events behaviour has not changed. The reason we introduce the FOnClickPending instead of fully handling the events in TfpgWidget.MsgMouseUp is because a TfpgButton has slightly different behavior (eg: When clicking on a button, keep mouse down, and move mouse out of button rectangle, then an OnClick must not fire.) The extra FOnClickPending allows us to toggle this behaviour of HandleLButtonUp (which normally fires the OnClick event)
2010-10-21colorlistbox demo event handlers are now moved to private.Graeme Geldenhuys
This adheres to general coding style.
2010-10-21changed system color for all inactive color variables.Graeme Geldenhuys
This applies to: clInactiveSel, clUnset, clGridInactiveSel I wasn't fond of the purple / faded blue color from before.
2010-10-21GDI: Removed definition of MW_MOUSEWHEEL. it already exists in FPC.Graeme Geldenhuys
2010-10-15BaseNumericEdit NegativeColor property was used instead of field variable.Graeme Geldenhuys
The property does more that just set the color. It calls FormatEdit, which changes the color of TextColor property. This meant the parent color was never stored in FOldColor field variable.
2010-10-15BaseNumericEdit did not specify the default property color.Graeme Geldenhuys
By defining the default color, the UI Designer can omit that line in generated code, if the color did not change.
2010-10-15fpg_edit: removed pointless property declarationsGraeme Geldenhuys
Those properties are exactly the same visibility as inherited classes, so no point in simply listing them again. TextColor was the exception, it was public, so you can't decrease the visibility in descendants.
2010-10-15memo CursorLine property improvements and sanity checksGraeme Geldenhuys
* The selection variables were not updated before * Little error checking was done, so you could get index out of bounds errors.
2010-10-15Memo: introduced a new CursorPos propertyGraeme Geldenhuys
You can now set the Cursor X position via code.
2010-10-15Minor improvement in fpgCheckTimers procedure.Graeme Geldenhuys
2010-10-15fpgApplication.OnIdle was never triggered under Windows.Graeme Geldenhuys
2010-10-15TfpgMemo now has BeginUpdate and EndUpdate methodsGraeme Geldenhuys
This allows you to add/delete many lines and the memo only repaints once.
2010-10-14Moved the remaineder of tiOPF support units to tiOPF repository.Graeme Geldenhuys
2010-10-14Moved tiOPF related units into the tiOPF repository.Graeme Geldenhuys
It makes more sense to have the tiOPF related units with the rest of the tiOPF. It's easier to keep changes in sync, and have atomic commits across the various GUI toolkits supported by tiOPF.
2010-10-14tiOPF: changes required due to changes in base mediators in tiOPFGraeme Geldenhuys
2010-10-12minor code formattingGraeme Geldenhuys
2010-10-12tiOPF: Fix StringGrid mediator last column sizing bugGraeme Geldenhuys
* The last column was already resized to whatever space is available ignoring the developers preferred (minimum) size. Now the last column in grows in size, not shrink.
2010-10-12tiOPF: Renamed conflicting class name to TtiListBoxListMediatorViewGraeme Geldenhuys
* It conflicted with the ListBox item mediator introduced in a earlier commit.
2010-10-12tiOPF: implemented two ListBox item mediatorsGraeme Geldenhuys
* one is ItemIndex based returning an int * one is Dynamic List based returning an object from ValueList
2010-10-12listbox: published a few more events and the Text propertyGraeme Geldenhuys
2010-10-12listbox: Text property is now a read/write propertyGraeme Geldenhuys
2010-10-11TfpgButton: experimental feature allowing multi-line textGraeme Geldenhuys
2010-10-11minor changes required due to last commits from Jarrod.Graeme Geldenhuys
2010-10-11fpgApplication.ProcessMessages now process other events (eg: timers) too.Graeme Geldenhuys
The DoMessagesPending() only processed OS events, now ProccessMessages processes all events like the real event loop does. This gives a more expected behaviour to developers that write blocking loops etc.
2010-10-11new method, Pause(), introduced to TfpgTimerGraeme Geldenhuys
2010-10-11TfpgTimer constructor and Reset can now be extended in descendantsGraeme Geldenhuys
2010-10-11Added a default parameter value for CreatePanel() functionGraeme Geldenhuys
2010-10-11Fix uses clause of fpGUI Lazarus IDE add-on package.Graeme Geldenhuys
2010-10-05After the Align algorithm change Splitter Demo needed a minor fixup.Graeme Geldenhuys
2010-10-05tiOPF demo 21: minor code change using shorter mediator syntax.Graeme Geldenhuys
2010-10-05StringGrid mediator was missing SetActive() implementation.Graeme Geldenhuys
This meant ClearList was never called anywhere. ClearList() was also slightly incorrect in the ListView mediator.
2010-10-05StringGrid mediator bugfix in ClearList methodGraeme Geldenhuys
2010-10-04uidesigner: Made Align property available for all registered widgets.Graeme Geldenhuys
2010-10-04uidesigner: Registered Splitter in component palette.Graeme Geldenhuys
2010-10-04Published Align property for all widgets.Graeme Geldenhuys
2010-10-04Added missing predefined color for Splitter Grabbar.Graeme Geldenhuys
2010-10-04Reworked algorythm for Align propertyGraeme Geldenhuys
* It used to have a hard-coded processing of alignment. Top, Bottom, Left, Right and then Client. * This meant extra "fake" panels was required to get a specific design. * Align property is now processed in the creation order of the widgets.
2010-10-04Splitter more visible in designer modeGraeme Geldenhuys
Add extra border painting so it will be more visible in the UI Designer.
2010-10-04splitter bugfix: Splitter was sometimes non-movable because FControl was nilGraeme Geldenhuys
The detection of which neighbouring control to resize was not 100% which resulted in a non-movable splitter. This is now fixed.
2010-10-04Splitter grabbar color is now a system color.Graeme Geldenhuys