| [ Return to Bugs & Features | Roadmap 1.1 | SVN ⇄ GIT ]
STR #931
Application: | FLTK Library |
Status: | 1 - Closed w/Resolution |
Priority: | 2 - Low, e.g. a documentation error or undocumented side-effect |
Scope: | 2 - Specific to an operating system |
Subsystem: | Documentation |
Summary: | Win32 and multiple monitor positioning |
Version: | 1.1.6 |
Created By: | dicuccio.comcast |
Assigned To: | mike |
Fix Version: | 1.1-current (SVN: v4471) |
Update Notification: | |
Trouble Report Files:
Trouble Report Comments:
|
#1 | dicuccio.comcast 11:29 Jul 06, 2005 |
| Fl::x() / Fl::y() / Fl::w() / Fl::h() do not work well in multi-monitor setups. Since these are used to clamp offsets for windows, this leads to a number of serious problems with hanging/detached windows when multiple monitors are used in Windows. The attacked patch changes the implementation of these functions on Windows to use GetSystemMetrics() to return the sizes of the virtual screen. | |
|
#2 | matt 12:21 Jul 24, 2005 |
| Use the function below. It returns the correct bounding box for the screen that contains mx, my
// Return the screen bounding rect for the given mouse position... void Fl::screen_xywh(int &x, int &y, int &w, int &h, int mx, int my) {
or this one to get the rectangle of every screen:
// Return the screen bounding rect for the given screen... void Fl::screen_xywh(int &x, int &y, int &w, int &h, int n) { | |
|
#3 | matt 12:22 Jul 24, 2005 |
| I leave this STR open because these function must still be documented, IIRC. | |
|
#4 | dicuccio.comcast 18:10 Jul 24, 2005 |
| The point is not that I can't get the size of the window. The point is that the constructor of Fl_Window will place a window in a box bounded by Fl::x(), Fl::y(), Fl::w(), and Fl::h(). I can fix this by updating the position after creating each and every window I want to create, or fix Fl_Window's constructor, or fix Fl::[x,y,w,h](). The last option offers no side-effects to FLTK, and solves the problem for all cases. | |
|
#5 | mike 17:01 Aug 07, 2005 |
| Documentation updated in Subversion repository.
FWIW, FLTK 1.1.7 uses a new screen API to handle multi-monitor configurations properly... | |
[ Return to Bugs & Features ]
|
| |