summaryrefslogtreecommitdiff
path: root/src/Fl_Window.cxx
AgeCommit message (Collapse)Author
2016-01-271) Added a new way to detect whether the drawing operation is using the ↵Manolo Gouy
platform's native driver and whether we are printing: virtual int Fl_Graphics_Driver::has_feature(driver_feature feature) This is also because it is not convenient to derive a printer-specific driver with its own implementation of virtual functions when this implementation differs only in one line of code. 2) Solved the problem of inclusion of non public header by the public header FL/Fl_Device.H: bracket this with #if FL_LIBRARY / #endif so this non public header is included only when building FLTK itself. 3) Removed several (but not all) of the FLTK_ABI_VERSION guards that are no longer useful for code targeting FLTK 1.4. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11063 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-11More accurate documentation of Fl_Window::wait_for_expose() for Mac OS.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10829 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-11Improved Mac OS implementation of Fl_Window::wait_for_expose().Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10828 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-07- Implement Fl_Window::wait_for_expose() for Mac OS:Manolo Gouy
The -[NSWindow makeKeyAndOrderFront:] message used to make the window appear on the screen, but, starting with 10.10 (approximately), this changed, and it became necessary to query for events for a new window to appear on the screen. With 10.11 two event messages are needed. The solution is therefore to implement Fl_Window::wait_for_expose(). - Calling NSDisableScreenUpdates()()/NSEnableScreenUpdates() before and after window updates greatly accelerates multi-window update operations. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10826 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-17Clarify documentation of Fl_Window::wait_for_expose().Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10635 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-29Added missing Doxygen documentation for 4 Fl_Window member functions.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10405 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-26Add Fl_Window::wait_for_expose() and test program (STR #3124).Albrecht Schlosser
Also modified .gitignore, svn-properties, Makefile and CMake-Files. Todo: test/twowin.cxx and test/windowfocus.cxx need to be added to ide files (MS VC++ and Xcode). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10339 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-21STR#3093 continued: deleted the Fl_Shaped_Window class. Instead, added new ↵Manolo Gouy
member function Fl_Window::shape(Fl_Image*) that gives a non-rectangular shape to a standard window. The benefit is that it works with Fl_Double_Window and Fl_Menu_Window as well. It also works for free with Fl_Gl_Window on the X11 platform only. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-06-16Add ability to set custom icons for windows. STR #2816.Pierre Ossman
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10197 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-06-16Add method to set any custom cursor, based on a Fl_RGB_Image object.Pierre Ossman
Also change our fallback cursors to use this method, so that fallback cursors are handled in a platform independent manner. STR #2660. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10196 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-12Switched to const_cast<> for calling as_window().Greg Ercolano
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9876 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-12Small fixes to new top_window_offset() method as per discussion in STR #2948.Greg Ercolano
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9875 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-10As per notes from STR#2948:Greg Ercolano
Moved top_window_offset() to being a member of Fl_Widget (was Fl_Window) and moved its code near implementations of top_window() and window(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9872 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-10Solve STR#2948: Add new method Fl_Widget::top_window() to return the ↵Greg Ercolano
widget's top-level window. Docs for existing Fl_Widget::window() revised to clarify the difference between these two methods. Docs for window() also moved from .H -> .cxx as per CMP (docs should be where code implementation is). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9871 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-10While suggesting a new top_window() method for STR#2948,Greg Ercolano
it's realized that for consistency, the recently added window_offset() method (a few days ago) should be renamed to top_window_offset(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9870 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-08Fix for STR #2944 [2]: Fix Apple-specifc nested window problem for ↵Greg Ercolano
Fl_Gl_Window's. Added new method Fl_Widget::window_offset(x,y) to access the top-level window offset of the current widget. Open to alternative names for the new method. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9866 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-11-06Replaced 10302 with 10301 for FLTK_ABI_VERSIONMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9706 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-05-05Fix STR #2836: copy_label() with old label() value failed.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9443 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-03-23Fix STR#2641: true fullscreen windows that cover all their screen including ↵Manolo Gouy
menu bar, task bar, dock. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9299 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-09-16Don't draw the resize window corner under Mac OS X 10.7-Lion.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9039 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19Modifications to all LGPL headers for STR #2685.Greg Ercolano
(to clarify static exception LGPL by changing license references) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-25Un-inlined Fl_Window::icon() methods to make them easier to extend w/oAlbrecht Schlosser
breaking the ABI. See discussion in STR #2563. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8472 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-01-06Fix STR #2504 (first part). Replaced HAVE _CAIRO by FLTK_HAVE_CAIRO and ↵Manolo Gouy
USE_CAIRO by FLTK_USE_CAIRO everywhere. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8198 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-15Removed possible compilation warningsManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8031 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28Fixed Copyright to 2010.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-17Documentation updates for Fl_Window::xclass(), default_xclass(),Albrecht Schlosser
and show(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-16Fixed xclass support for Fl_Window (STR #2053)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7863 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-29Removed more Cocoa/Quartz references. Finally moved OS X font down a pixel.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7357 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-29OS X: removed all Carbon and Quickdraw references. Starting with 1.3, we ↵Matthias Melcher
only support Cocoa and Quartz. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7351 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-02-28Removed saving the flags() in Fl_Window::iconlabel(const char *iname) becauseAlbrecht Schlosser
this could result in wrong flags() contents after return. Fl_Widget::label() (that is called internally) takes care of copied labels and sets the flags() appropriately. See also STR #2161. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7176 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-12-06Moved OS X code base to the more moder Cocoa toolkit thanks to the awesome ↵Matthias Melcher
work of Manolo Gouy (STR #2221). This is a big one! I tested all test applications under 32-bit autoconf and Xcode, and a few apps under 64bit intel. No PPC testing was done. Please verify this patch if you have the machine! git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6951 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-27Consolidated all possible flag values into a single enum in Fl_Widget (STR ↵Matthias Melcher
#2161) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6905 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-27Starting to consolidate all bits used in Fl_Widget::flags_Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6904 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-02-25 Fl_Window::draw() now doesn't reset its x/y-coordinates to 0 anymoreAlbrecht Schlosser
before drawing itself and its children. The problem was that subwindows "lost" their x/y-coordinates during draw(), and child widgets couldn't get their parent window's coordinates. Currently this is needed (maybe only) in fl_set_spot() for Windows, but it had been solved there with a Windows-specific coordinate transformation (MapWindowPoints). Todo: rewrite Fl_win32.cxx/fl_set_spot(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6669 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01Changed Copyright in 'src' directoryMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo libFabien Costantini
+ added new USE_CAIRO config preprocessor def. to differentiate from HAVE_CAIRO so that we can use the cairo lib without forcing the full fltk lib to be linked against it. In that case, cairo autolink context functionality which needs fltk lib instrumentation is disabled. + added new --enable-cairoext, which correspond to previous --enable-cairo. now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib from referencing cairo. In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is created. This lib, similarly to local versions of png,jpeg and zlib, is not generated if cairo is not enabled. + added cairo to fltk-config : now new --use-cairo flag is available + modified all unix like makefiles to now generate minimum cairo deps and also new libfltk_cairo lib. + added new cairo subdir to permit conditional fltk_cairo lib generation. + vc2005 project minimum update to compile without be broken, but still needs to create a similar fltk_cairo independent lib. For now, it works as before with a dedicated cairo env. similar to --enable-cairoext context in unix. + regression tested ok with cairo disabled on win32, mac osx, mingw. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-04Completed and corrected Fl and related Fl_Window documentation, added cross ↵Fabien Costantini
references, especially to back compatibility functions to the new ones. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6372 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-25+ Cairo branch merged after successful testing on Mac OS X 10.5.4, Linux ↵Fabien Costantini
Ubuntu 8.04,Windows XPSP2. This integration is minimum as discussed, in particular it does not feature any fltk cairo drawing substitution as in fltk2. Still it provides all the fundations to go further even in next 1.4 ... By default *no* cairo features are implemented nor linked, it can only be activated by --enable-cairo whose default is false. Please visit the README.cairo for complete description. + fixed UTF8 compilation pb on linux ubuntu + minor comments fixes on the fly git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6350 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-18Doxygen documentation: Fixed most important warnings for the Fl_Widget, ↵Fabien Costantini
Fl_Window, Fl_Valuator classes that should be now a 100% documented. For the rest I drastically reduced the undocumented APIs, but many others (less important) remains. It looks and feels pretty good now :-) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6299 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-16Doxygen documentation : took the opportunity to update copyright info as we ↵Fabien Costantini
modified already in batch almost all sources, added also a fil doxygen command to class headers to harmonize with original matt Fl_Widget dox. format. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-15Doxygen documentation. Fixed somes typos and also H4 remanent misplaced ↵Fabien Costantini
tags and comments. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6258 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
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
2008-04-23First attempt at consistently using Fl_Font as a type for the font index and ↵Matthias Melcher
Fl_Font_Size as a type to measure font height (or rather size). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6113 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-28Fixed Fl_Window::copy_label() losing copy (STR #1332)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5251 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-05STR #1309: resize indicator not showing if size range does not permit resizing.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5177 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-03-29Fixing STR #1222 (case sensitive include fl_draw.H correction)Fabien Costantini
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4883 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-14STR $1099: The Quartz version of FLTK now draws a very nice resizeMatthias Melcher
control in the lower right corner of top-level windows if that window is resizable. The color of the control adapts to the background color of the window. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4711 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-04-09Added missing Fl_Window::copy_label() method.Michael R Sweet
Cleaned up screen_xywh() conditional stuff. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4251 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-20Preliminary template save support in FLUID, plus some bug fixes.Michael R Sweet
fluid/Fl_Type.h: - Added read_image() declaration to Fl_Window_Type class. fluid/Fl_Window_Type.cxx: - Added Overlay_Window::read_image() and Fl_Window_Type::read_image() functions. - Fl_Window_Type::fix_overlay(): update menu indices. - toggle_overlays(): update menu indices. fluid/fluid.cxx: - save_template_cb(): Added to save to ~/.fltk/fltk.org/fluid/templates, along with PNG screenshot of first window. - "Save To" instead of "Save to". - Use fl_alert() for errors, not fl_message(). - Add "File/Save Template..." and "File/Print..." (not yet implemented) menu items. - toggle_widgetbin_cb(): update menu indices. fluid/undo.cxx: - Update menu item indices. - Don't need extra slash in undo checkpoint filename. src/Fl_PNG_Image.cxx: - Fix typo in #endif comment. src/Fl_Window.cxx: - Fl_Window::draw(): save/restore flags() when changing label. - Fl_Window::iconlabel(): save/restore flags() when changing label. src/fl_rect.cxx: - fl_not_clipped(): don't use current window for gross clipping. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4147 ea41ed52-d2ee-0310-a9c1-e6b18d33e121