From 0629b40afd8fc49ef2d9db898d190e3a1a508d8d Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Mon, 18 Apr 2016 14:31:07 +0000 Subject: Move set_cursor() member functions from class Fl_X to classes Fl_Window_Driver and derived. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/drivers/Cocoa/Fl_Cocoa_Window_Driver.H | 6 ++++++ src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx | 1 + src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H | 5 +++++ src/drivers/X11/Fl_X11_Window_Driver.H | 3 +++ 4 files changed, 15 insertions(+) (limited to 'src/drivers') diff --git a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.H b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.H index 9f72f7725..5b0bba2f9 100644 --- a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.H +++ b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.H @@ -32,8 +32,10 @@ class Fl_Image; class Fl_Window; #ifdef __OBJC__ @class CALayer; +@class NSCursor; #else class CALayer; +class NSCursor; #endif // __OBJC__ /* @@ -69,6 +71,7 @@ public: Fl_Cocoa_Window_Driver(Fl_Window*); ~Fl_Cocoa_Window_Driver(); CGContextRef gc; // graphics context + NSCursor *cursor; static void q_release_context(Fl_Cocoa_Window_Driver *x = 0); // free all resources associated with gc // --- window data @@ -94,6 +97,9 @@ public: virtual void size_range(); virtual void iconize(); virtual void decoration_sizes(int *top, int *left, int *right, int *bottom); + // --- window cursor stuff + virtual int set_cursor(Fl_Cursor); + virtual int set_cursor(const Fl_RGB_Image*, int, int); virtual void shape(const Fl_Image* img); // that one is implemented in Fl_Cocoa.mm because it uses Objective-c diff --git a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx index a96039918..47fb70242 100644 --- a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx +++ b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx @@ -36,6 +36,7 @@ Fl_Window_Driver *Fl_Window_Driver::newWindowDriver(Fl_Window *w) Fl_Cocoa_Window_Driver::Fl_Cocoa_Window_Driver(Fl_Window *win) : Fl_Window_Driver(win) { + cursor = nil; } diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H index f1d36b6a1..a5f7f0ed8 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H +++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.H @@ -70,6 +70,8 @@ public: ~Fl_WinAPI_Window_Driver(); struct icon_data *icon_; + HCURSOR cursor; + int custom_cursor; // --- window data virtual int decorated_w(); virtual int decorated_h(); @@ -89,6 +91,9 @@ public: 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); + // --- window cursor stuff + virtual int set_cursor(Fl_Cursor); + virtual int set_cursor(const Fl_RGB_Image*, int, int); virtual void shape(const Fl_Image* img); virtual void icons(const Fl_RGB_Image *icons[], int count); diff --git a/src/drivers/X11/Fl_X11_Window_Driver.H b/src/drivers/X11/Fl_X11_Window_Driver.H index c5378475e..c79aacc11 100644 --- a/src/drivers/X11/Fl_X11_Window_Driver.H +++ b/src/drivers/X11/Fl_X11_Window_Driver.H @@ -107,6 +107,9 @@ public: virtual void decoration_sizes(int *top, int *left, int *right, int *bottom); virtual void show_with_args_begin(); virtual void show_with_args_end(int argc, char **argv); + // --- window cursor stuff + virtual int set_cursor(Fl_Cursor); + virtual int set_cursor(const Fl_RGB_Image*, int, int); virtual void shape(const Fl_Image* img); virtual void icons(const Fl_RGB_Image *icons[], int count); -- cgit v1.2.3