Revert parts of and fix other 'constness' changes (#239, #181)

Some of the previous constness changes turned out to be incomplete,
others had to be reverted because some other driver methods could
not be made 'const' - particularly those calling open_display() to
get the requested information.
This commit is contained in:
Albrecht Schlosser 2021-06-18 18:46:17 +02:00
parent f94ed7116c
commit 713d1bfd7c
6 changed files with 14 additions and 14 deletions

View File

@ -69,7 +69,7 @@ public:
static char bg2_set;
static char fg_set;
virtual float scale(int n) const { return 1; }
virtual float scale(int n) { return 1; }
virtual void scale(int n, float f) {}
static Fl_Screen_Driver *newScreenDriver();
// --- display management
@ -77,13 +77,13 @@ public:
virtual int visual(int flags);
// --- screen configuration
virtual void init() {}
virtual int x() const { return 0; }
virtual int y() const { return 0; }
virtual int w() const { return 800; } // default, override in driver!
virtual int h() const { return 600; } // default, override in driver!
virtual int x() { return 0; }
virtual int y() { return 0; }
virtual int w() { return 800; } // default, override in driver!
virtual int h() { return 600; } // default, override in driver!
virtual int screen_count();
void screen_xywh(int &X, int &Y, int &W, int &H, int mx, int my);
virtual void screen_xywh(int &X, int &Y, int &W, int &H, int n) const {
virtual void screen_xywh(int &X, int &Y, int &W, int &H, int n) {
X = 0;
Y = 0;
W = 800;
@ -109,14 +109,14 @@ public:
virtual void grab(Fl_Window *win) {}
// --- global colors
/* the default implementation of parse_color() may be enough */
virtual int parse_color(const char *p, uchar &r, uchar &g, uchar &b) const;
virtual int parse_color(const char *p, uchar &r, uchar &g, uchar &b);
virtual void get_system_colors() {}
/* the default implementation of get_system_scheme() may be enough */
virtual const char *get_system_scheme();
// --- global timers
virtual void add_timeout(double time, Fl_Timeout_Handler cb, void *argp) {}
virtual void repeat_timeout(double time, Fl_Timeout_Handler cb, void *argp) {}
virtual int has_timeout(Fl_Timeout_Handler cb, void *argp) const { return 0; }
virtual int has_timeout(Fl_Timeout_Handler cb, void *argp) { return 0; }
virtual void remove_timeout(Fl_Timeout_Handler cb, void *argp) {}
static int secret_input_character;

View File

@ -488,7 +488,7 @@ void Fl_Screen_Driver::open_display()
// simulation of XParseColor:
int Fl_Screen_Driver::parse_color(const char* p, uchar& r, uchar& g, uchar& b) const
int Fl_Screen_Driver::parse_color(const char* p, uchar& r, uchar& g, uchar& b)
{
if (*p == '#') p++;
size_t n = strlen(p);

View File

@ -85,7 +85,7 @@ public:
virtual void repeat_timeout(double time, Fl_Timeout_Handler cb, void *argp);
virtual int has_timeout(Fl_Timeout_Handler cb, void *argp);
virtual void remove_timeout(Fl_Timeout_Handler cb, void *argp);
virtual int has_marked_text();
virtual int has_marked_text() const;
virtual void reset_marked_text();
virtual void insertion_point_location(int x, int y, int height);
int insertion_point_location(int *px, int *py, int *pheight);

View File

@ -210,8 +210,8 @@ void Fl_Cocoa_Screen_Driver::get_system_colors()
}
int Fl_Cocoa_Screen_Driver::has_marked_text() {
return true;
int Fl_Cocoa_Screen_Driver::has_marked_text() const {
return 1;
}

View File

@ -92,7 +92,7 @@ public:
virtual int dnd(int unused);
virtual int compose(int &del);
virtual void compose_reset();
virtual int text_display_can_leak();
virtual int text_display_can_leak() const;
virtual Fl_RGB_Image *read_win_rectangle(int X, int Y, int w, int h, Fl_Window *win, bool may_capture_subwins, bool *did_capture_subwins);
virtual int get_mouse(int &x, int &y);
virtual void enable_im();

View File

@ -701,7 +701,7 @@ void Fl_X11_Screen_Driver::compose_reset()
if (fl_xim_ic) XmbResetIC(fl_xim_ic);
}
int Fl_X11_Screen_Driver::text_display_can_leak() {
int Fl_X11_Screen_Driver::text_display_can_leak() const {
#if USE_XFT
return 1;
#else