summaryrefslogtreecommitdiff
path: root/src/corelib/gdi
AgeCommit message (Collapse)Author
2012-02-29changed alias class definitions to class descendants.Graeme Geldenhuys
FPC doesn't have a problem with the original code, but other tools like fpdoc does. So to make everybody's life easier, I am making this change. The benefit now is that fpdoc will be able to generate a nice class hierarchy of fpGUI classes - without problems.
2012-02-21Adds PNG loading support.Graeme Geldenhuys
The unit uses the fcl-image backend to load the image. This is slightly slower than the native implementations for BMP and JPG. But at least now we have PNG support too.
2011-12-02version bump to 0.8Graeme Geldenhuys
2011-11-21TfpgWindowBase now introduces a BringToFront() method.Graeme Geldenhuys
2011-08-17GDI: Fixed the rubbish timer implementation.Graeme Geldenhuys
I was clearly smoking something that day! Anyway, the GDI timer is now correctly implemented, and doesn't push up the CPU load any more. No matter how long the timer runs for. The timer is much more accurate/consistent in firing as well. :-)
2011-08-17TfpgTimer refactoring.Graeme Geldenhuys
Refactored the TfpgTimer by introducing a TfpgBaseTimer and X11 & GDI Timer descendants. This now allows use to add platform specific extensions to the timer implementation.
2011-07-14GDI: minor change to IUnknown interface code for FPC 2.5.1 compatibilityGraeme Geldenhuys
2011-06-17gdi implementation of GetWindowStateGraeme Geldenhuys
Now we can retrieve the WindowState of TfpgForm under both Linux and Windows.
2011-05-19New component TfpgReadOnly added to fpGUI.Graeme Geldenhuys
This component allows you to set all components on a form or embedded containers as ReadOnly = True/False by just toggling one property on TfpgReadOnly.
2011-05-06Skeleton style units.Graeme Geldenhuys
These will later contain the various style implementations.
2011-03-08applied the missing setting for Lazarus IDE so package unit is not added to ↵Graeme Geldenhuys
a project uses clause.
2011-01-14GDI: OnDragDrop the Sender and Source parameters are now populated.Graeme Geldenhuys
Sender: the widget the mouse was over when drop occurs. Source: If whole DND is inside the same app, then Source is the original Widget the DND started from.
2011-01-14GDI: OnDragEnter now has Sender and Source parameters populatedGraeme Geldenhuys
Sender = widget the mouse entered and triggered the event Source = if the whole DND is inside the same app, then Source is the original Widget drag started from.
2011-01-11fixes Alignment and Anchor calculation even before we have a window handleGraeme Geldenhuys
Updated the following methods by rather checking the ComponentState, than the HasHandle result. Why? Because we want alignment and anchor calculations to work, even before we have a window handle. Something that happens often when using a Frame-type design for the UI. * HandleMove() * HandleResize() * UpdateWindowPosition() Due to removing the HasHandle check in UpdateWindowPosition, we had to do the HasHandle check in each backend code instead. We don't want to trigger API calls when we don't have a window handle yet.
2011-01-10DoWaitWindowMessage() defined as virtual abstract in fpg_baseGraeme Geldenhuys
* All fpGUI backends must override it as supply an implementation. * Moved DowaitWindowMessage() implementations to the protected section in the GDI and X11 backends.
2011-01-10DoMessagesPending() renamed to MessagesPending()Graeme Geldenhuys
Also made MessagesPending() a virtual abstract method in fpg_base.pas which every fpGUI backend must supply an implementation.
2010-11-15A new compiler define for debuging GDI key input messages.Graeme Geldenhuys
2010-11-11Bumped the version number so it's newer than the last release.Graeme Geldenhuys
2010-10-29Code cleanup by removing leftover writeln() statements.Graeme Geldenhuys
2010-10-29Fixed Windows DND memory leaks.Graeme Geldenhuys
2010-10-29More DND debugging code for TfpgGDIDrag class.Graeme Geldenhuys
2010-10-29Moved OnDragStartDetected from TfpgWidget to TfpgWindowBaseGraeme Geldenhuys
* also introduced virtual DoDragStartDetected which executes the OnDragStartDetected event * We also added a override of DoDragStartDetected in GDI for some extra tasks.
2010-10-29Added DND debugging entries and minor code formatting improvements.Graeme Geldenhuys
2010-10-29Applied same logic in X11 to OLE DND regarding preferred mime choiceGraeme Geldenhuys
Mime types should be registered from most specific (first item in mime list) to least specific (last item in mime list). The preferred mime choice will be the first item in the list. Raise an error if the mime list doesn't contain data.
2010-10-29Bugfix in EnumDataToStringList()Graeme Geldenhuys
We can't just go adding mime types without actual data associated with each entry. So now we match the mime stringlist to exact data count in IDataObject
2010-10-29Slight improvement to the WindowsClipboardLookup method.Graeme Geldenhuys
* Introduced a new parameter to know if we translated the mime type to a known Windows CF_ clipboard type. * Fixed the spelling mistake in the function name
2010-10-29Implemented a working TfpgGDIDrag.ExecuteGraeme Geldenhuys
Finally we are getting somewhere with OLE DND.
2010-10-29GDI: Implemented StringToHandle in TfpgGDIDrag classGraeme Geldenhuys
This is needed so we can store a string in a global buffer for DND. This will also reduce code duplication a bit, by simply allowing us to call this function.
2010-10-29Added a new private Drag property to TfpgGDIApplicationGraeme Geldenhuys
This allows use to easily find the TfpgDrag instance we are working with. Same was done in X11 backend.
2010-10-28GDI: Implement last remaining part to allow DropTarget to receive data.Graeme Geldenhuys
2010-10-28GDI: store user selected information from DragEnter event handlerGraeme Geldenhuys
2010-10-28GDI: Choose a more specific base class for DropTarget reference.Graeme Geldenhuys
2010-10-28GDI: Reference to where I got info to implement Windows OLE DNDGraeme Geldenhuys
2010-10-28GDI: When creating a list of clipboard formats, add mime equivalents too.Graeme Geldenhuys
2010-10-28Implemented a bare minimum MimeType to Win Clipboard lookup function.Graeme Geldenhuys
2010-10-28GDI: Created a help function, GetFormatEtc, that sets up a TFormatEtc recordGraeme Geldenhuys
2010-10-28interface implementation methods can be private. We only work withGraeme Geldenhuys
the interface anyway, not an actual object instance.
2010-10-28GDI: Implemented HandleDNDLeave, DNDEnter and DNDPosition event handlersGraeme Geldenhuys
2010-10-28GDI: implemented a helper function for DropAction conversionGraeme Geldenhuys
2010-10-28GDI: Implemented DoDragLeave for droptargetGraeme Geldenhuys
2010-10-28GDI: Fixed DragEnter implementation.Graeme Geldenhuys
We should not modify the dwEffect variable before the user gets a chance to look at it.
2010-10-28GDI: implemented some helper functions for OLE DND clipboard typesGraeme Geldenhuys
2010-10-28GDI: Changed TfpgOLEDragDropEffect type to DWORD to match OLE APIGraeme Geldenhuys
2010-10-28GDI: Added OLE DND into TfpgGDIWindow.Graeme Geldenhuys
AcceptDrops: is implemented and can be toggled at runtime or designtime. Windows cursor also changes to show that target windows can accept drops.
2010-10-28GDI: A near complete Windows OLE Drag-n-Drop implementationGraeme Geldenhuys
2010-10-28TfpgWindowBase introduced a new abstract methodGraeme Geldenhuys
* This abstract method is called from TfpgWidget's AcceptDrops setter function * Template implementation in X11 * Actual implementation in GDI
2010-10-28Ad conversion helper functions from OLE DND to fpGUI DropActionsGraeme Geldenhuys
2010-10-28GDI: introduced a template TGDIDragManager classGraeme Geldenhuys
* implements the IDropTarget interface * Also initialize/uninitialize OLE at application startup/stop
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-21GDI: Removed definition of MW_MOUSEWHEEL. it already exists in FPC.Graeme Geldenhuys