summaryrefslogtreecommitdiff
path: root/src/Fl.cxx
AgeCommit message (Collapse)Author
2008-09-13WP1 merged from my branch, WP2 reserved, todo list updated.Fabien Costantini
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6231 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-02Avoiding a hidden mouse pointer after a window is hiddenMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5654 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-18Fixed mousewheel event propagation (STR #1521)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5607 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-12-20STR #1542: implemented the prototyped Fl::has_check() functionMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-12-20Enabled 'add_check()' on OS X (STR #1534)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5562 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-29Another try at the shortcut fix...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5534 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-29Shortcut events could be sent to the wrong window (STR #1451)Michael R Sweet
src/Fl.cxx: - Fl::event_inside(): Only return true for widgets if the first_window() (focused window) is the same as the widget's window. - Fl::handle(): Send shortcuts to the first window (that has focus) before all others. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5531 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-29Updated OSX subwindow simulation code to better add and remove from the ↵Matthias Melcher
clipping list git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5379 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-07-16STR #1341: Fixed Fl_Window::visible() and shown() for OS XMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5257 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-20Another attempt at the window stacking problem in WIN32. It does fix the ↵Matthias Melcher
issue described in STR #1296 without the negative effects described by Torsten Giebl. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5217 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-19It seems that the long standing window stacking order problem in MSWindows ↵Matthias Melcher
is now finally solved. The solution is too silly to belive. It seems like WIN32 needs a HideWindow before the DestroyWindow, or the window manager gets confused. DOH! git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5215 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-09Added an event variable "Fl::event_original_key()" which returns the current ↵Matthias Melcher
key code (see Fl::event_key()) before it gets mangled through the NumLock keypad conversion. This way, an application can differentiate between an arrow key and a numeric keypad w/NumLock off. On Win32, releasing a numeric keypad key w/NumLock off wiould return the wrong keycode (keypad instead of arrow key). Documentation changed accordingly. X11 code is yet to be tested. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-05-30Fixed shortcut and default focus for message dialogs (STR #1298).Matthias Melcher
Default focus is now on the button that also reacts to the 'Enter' key. This should avoid confusion about Enter triggering the button1 or button 0. Also, I changed the shortcut call to the new convention which works on MSWindows. I don't have a Linux system right now for testing... . Fixed focus issues (STR #1286, STR #1289, STR #1296) fl_xfocus was not always updated, making widgets or even whole windows loose focus when any focus changes were not accompanied by a click into the same window. Also, Fl_Tabs would not redraw correctly if focus returned to the active tab. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5165 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-05-05STR #1152: Fixed Cygwin compiler warningsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5085 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-27STR #1162: Fl_Menu_Button::popup was trying to access a previously deleted ↵Matthias Melcher
widget (itself). The delayed deleting mechanism in 'Fl::delete_widget' did not work in this case because the main loop is called before the callback returns. The fix implements a type of automatic pointer that will be cleared to NULL should the widget get deleted. This may not be a 'nice' solution, but it does fix the problem reliably. We could actually use this for all widget pointers and remove the delayed delete mechanism alltogether git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5037 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-20Static destuctor must be public of courseMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5015 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-20STR #1231: moved clearing of resources out of Fl::run() into a static class ↵Matthias Melcher
destructor. Although this should work, I was unable to test this (no Windows machine at this time). Also, since the order in which static destructors are called is undefined, this code can still lead to a crash if the main window was alos statically allocate in global space. Suggestions welcome. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5004 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15More copyright updates.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4748 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-02STR #1135: Triggering a timout would not break the event loop, giving no ↵Matthias Melcher
opportunity to FLTK to call flush. As a result, all redrawing that depended on timeouts only would not get done unless some other event was received. If the idle function was set, the event loop would break and redraw wold work again. I moved all timeout functions from Fl.cxx to Fl_mac.cxx since they are very system specific and made the timeout break the main event loop, just like it does on all other platforms. This bug must have been around for at least two months... . git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4730 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-15Fl::wait() returns immediately if no windows are open.Michael R Sweet
Fl::wait(double) still waits for the specified time. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4712 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-14Change FOREVER back to 1e20 (minimal CPU usage) and change fl_wait()Michael R Sweet
implementation on WIN32 to check for idle and to use a time_to_wait() of 0... (STR #1120) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4704 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-28STR ##1081, 1083, 1084: in a previous change that improved timer behaviour, ↵Matthias Melcher
the idle management was accidentaly removed from the code. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4665 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-25OSX fixes...Michael R Sweet
src/Fl.cxx: - Don't compile in static functions that aren't used. src/Fl_mac.cxx: - Coding style... src/Fl_Sys_Menu_Bar.cxx: - Fix FL_META handling - FL_META incorrectly set the CTRL modifier, and it was not possible to get all combos of modifiers. The new coding should work properly for all combos... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4651 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-10-12Rework event loop handling on all platforms for better timer and idleMichael R Sweet
processing (STR #861) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4589 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-15STR #1007: removed one superfluous ReleaseDC. All demos are running nicely ↵Matthias Melcher
again. I did not see any rendering mistakes. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4569 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-12Clipboard will persist if owner window is hidden (STR #1019)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4565 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-12STR #1007: Applied second patch by hand. OP: could you please check if all ↵Matthias Melcher
changes were made correctly? Thanks! git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-06-01Fixed WIndows line endingsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4388 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16Update source file headers with STR web page.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05The keyboard shortcut handling code did not handle 8-bitMichael R Sweet
characters properly (STR #731) src/Fl.cxx: - Fl::handle(): use unsigned char * for event_text() shortcut key conversion. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4064 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24Copyright updates.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-20FL_MOUSEWHEEL events are now sent first to the widget under theMichael R Sweet
mouse pointer and then to the first widget which accepts them. This is similar to the way shortcut events are handled and is consistent with the way the mouse wheel is handled by other toolkits. src/Fl.cxx: - Fl::handle(): Send FL_MOUSEWHEEL events to grab() or current window instead of focus widget. src/Fl_Group.cxx: - Fl_Group::handle(): Send FL_MOUSEWHEEL events first to an event_inside() widget, then to the first non-inside widget that accepts them. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4045 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-14Fl::wait() could block on WIN32 if the window was deleted viaMichael R Sweet
Fl::delete_widget() (STR #679) src/Fl.cxx: - Post an application message when a window is hidden on WIN32. src/Fl_win32.cxx: - Change async select message to WM_APP + 1, and document our use of WM_APP. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4043 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-14Fl_Window::hide() didn't delete the current clipping region onMichael R Sweet
WIN32, causing a GDI resource leak in some situations (STR #723) src/Fl.cxx: - Fl_Window::hide(): move XDestroyRegion() call outside of the X11-specific code. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4041 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-04Remove duplicate definitions and argument-hides-function warning.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4008 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-12-06Fixed a compiler warning in Fl_Window.H (STR #641)Michael R Sweet
Tooltips disabled shortcut processing (STR #643) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-12-03Fl::event_number() didn't always match the value sent to theMichael R Sweet
handle() method (STR #634) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3930 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-11-23Fix compiler errors...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3918 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-11-23Added the 2.0 Fl_Widget::copy_label() method to allow FLTK 1.xMichael R Sweet
applications to have their label strings managed by FLTK (STR #630) Added Fl::delete_widget() method to safely delete widgets in callback methods (STR #629) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3917 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-11-23Fl_Widget::damage(uchar,int,int,int,int) didn't clip theMichael R Sweet
bounding box properly (STR #626) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3916 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-09-12Tooltips would not reappear on the same widget, and the initialMichael R Sweet
tooltip delay was not used after a tooltip was shown (STR #465) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3822 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-09-09Quartz port:Matthias Melcher
- removed all #warning statemnets and explained caveats with regular // warning lines - made GL text rendering work again (may use wrong fonts since agl doesn't really support ATS) - removed horizontal jittering in Fl_Input_ caused by fractional text positions. Unfortunatly, this does not work for Fl_Text_Display, which not only jitters, but also became horendously slow due to the complex font rendering in Quartz) I will fix some of the speed issues in fl_measure this afternoon, and also improve on the 'innards' for rgb data rendering. After that, I will have to leave the Quartz port alone for a while due to lack of time. I suggest we make another rc in the next days. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3812 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-31Quartz for FLTK1.1Matthias Melcher
- Pixmaps now correctly support transparency/masking - subimage drawing aligned correctly - lines with a size over 1 always anti-alias - fl_begin_points/fl_end_points works - fixed refresh problem for multiple open windows Will check Linux compile right after this commit to make sure that I didn't destroy anything. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3800 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-27Quartz:Matthias Melcher
- made multiple contexts for windows, popups and menus work - still missing: double buffer handling git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3793 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-26Quartz implementation for FLTK 1.1:Matthias Melcher
- added very crude font support - added line drawing support - added line color support - added filled shapes support - added some arc and circle support (no ovals) - attempt at getting the clipping working, however the stack oriented design of Quartz is starting to become a real hassle git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3784 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-25Updated config stuff to allow for --enable-quartz ofr Mac OS X which inMatthias Melcher
turn defined USE_QUARTZ to 1 and defines __APPLE_QUARTZ__. If Quartz is not disabled, it will define __APPLE_QD__ for Quickdraw. I also replaced all relevand #ifdef __APPLE__ with #ifdef __APPLE_QD__ #elif defined(__APPLE_QUARTZ__). This does not affect the compile at this time and both version will generate the same Quickdraw code. I will start to replace all QD calls with Quartz calls for the remainder of the week until I can completely remove all QD calls from the Quartz branch. Thanks to Robert Smith for a great initial Quartz implementation. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3782 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-11Copyright updates and prep for 1.1.5rc1.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-05-20Fix OSX subwindow hide (STR #22)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2984 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-04-09Fix coredump problem in Fl::send() function...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2970 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-30Copyright update for 1.1.3 release (not quite yet, but soon...)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121