From d3b33cdaeaa17d5ee1f7208d467fd2edbb617c16 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Wed, 23 Mar 2016 20:16:23 +0000 Subject: Rewrite Fl_Window::hotspot(int X, int Y, int offscreen) under the driver model. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11412 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H | 1 + src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx | 12 ++++++++++++ 2 files changed, 13 insertions(+) (limited to 'src/drivers/WinAPI') diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H index 2cae854ef..a6fa71ec4 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H +++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H @@ -88,6 +88,7 @@ public: virtual void fullscreen_on(); virtual void fullscreen_off(int X, int Y, int W, int H); virtual void iconize(); + virtual void decoration_sizes(int *top, int *left, int *right, int *bottom); virtual void shape(const Fl_Image* img); virtual void icons(const Fl_RGB_Image *icons[], int count); diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx index dd3b64168..c2afc67f3 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx +++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx @@ -613,6 +613,18 @@ void Fl_WinAPI_Window_Driver::iconize() { ShowWindow(fl_xid(pWindow), SW_SHOWMINNOACTIVE); } + +void Fl_WinAPI_Window_Driver::decoration_sizes(int *top, int *left, int *right, int *bottom) { + if (size_range_set() && (maxw() != minw() || maxh() != minh())) { + *left = *right = GetSystemMetrics(SM_CXSIZEFRAME); + *top = *bottom = GetSystemMetrics(SM_CYSIZEFRAME); + } else { + *left = *right = GetSystemMetrics(SM_CXFIXEDFRAME); + *top = *bottom = GetSystemMetrics(SM_CYFIXEDFRAME); + } + *top += GetSystemMetrics(SM_CYCAPTION); +} + // // End of "$Id$". // -- cgit v1.2.3