summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Fl_Menu.cxx8
-rw-r--r--src/Fl_win32.cxx36
2 files changed, 36 insertions, 8 deletions
diff --git a/src/Fl_Menu.cxx b/src/Fl_Menu.cxx
index 58048946c..9b14afdd4 100644
--- a/src/Fl_Menu.cxx
+++ b/src/Fl_Menu.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Menu.cxx,v 1.15 1999/01/29 07:52:21 bill Exp $"
+// "$Id: Fl_Menu.cxx,v 1.16 1999/02/19 15:34:08 mike Exp $"
//
// Menu code for the Fast Light Tool Kit (FLTK).
//
@@ -272,9 +272,9 @@ void menuwindow::position(int X, int Y) {
// scroll so item i is visible on screen
void menuwindow::autoscroll(int i) {
int Y = y()+Fl::box_dx(box())+2+i*itemheight;
- if (Y <= 0) Y = -Y+10;
+ if (Y <= Fl::y()) Y = Fl::y()-Y+10;
else {
- Y = Y+itemheight-Fl::h();
+ Y = Y+itemheight-Fl::h()-Fl::y();
if (Y < 0) return;
Y = -Y-10;
}
@@ -710,5 +710,5 @@ const Fl_Menu_Item* Fl_Menu_Item::test_shortcut() const {
}
//
-// End of "$Id: Fl_Menu.cxx,v 1.15 1999/01/29 07:52:21 bill Exp $".
+// End of "$Id: Fl_Menu.cxx,v 1.16 1999/02/19 15:34:08 mike Exp $".
//
diff --git a/src/Fl_win32.cxx b/src/Fl_win32.cxx
index f79112a4a..2d08091cb 100644
--- a/src/Fl_win32.cxx
+++ b/src/Fl_win32.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_win32.cxx,v 1.28 1999/02/16 21:59:51 mike Exp $"
+// "$Id: Fl_win32.cxx,v 1.29 1999/02/19 15:34:09 mike Exp $"
//
// WIN32-specific code for the Fast Light Tool Kit (FLTK).
//
@@ -156,9 +156,37 @@ double fl_wait(int timeout_flag, double time) {
////////////////////////////////////////////////////////////////
-int Fl::h() {return GetSystemMetrics(SM_CYSCREEN);}
+int Fl::x()
+{
+ RECT r;
+
+ SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
+ return r.left;
+}
+
+int Fl::y()
+{
+ RECT r;
+
+ SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
+ return r.top;
+}
-int Fl::w() {return GetSystemMetrics(SM_CXSCREEN);}
+int Fl::h()
+{
+ RECT r;
+
+ SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
+ return r.bottom - r.top;
+}
+
+int Fl::w()
+{
+ RECT r;
+
+ SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0);
+ return r.right - r.left;
+}
void Fl::get_mouse(int &x, int &y) {
POINT p;
@@ -867,5 +895,5 @@ void Fl_Window::make_current() {
}
//
-// End of "$Id: Fl_win32.cxx,v 1.28 1999/02/16 21:59:51 mike Exp $".
+// End of "$Id: Fl_win32.cxx,v 1.29 1999/02/19 15:34:09 mike Exp $".
//