Add virtual void Fl_Graphics_Driver::set_status() and implement for X11 platform.

This commit is contained in:
ManoloFLTK 2022-01-07 07:50:23 +01:00
parent 9d474dfcdf
commit 27c175dad8
7 changed files with 11 additions and 8 deletions

View File

@ -356,8 +356,10 @@ public:
virtual float scale_font_for_PostScript(Fl_Font_Descriptor *desc, int s);
// default implementation may be enough
virtual float scale_bitmap_for_PostScript();
// next 3 are related to X Input Method
virtual void set_spot(int font, int size, int X, int Y, int W, int H, Fl_Window *win);
virtual void reset_spot();
virtual void set_status(int X, int Y, int W, int H);
// each platform implements these 3 functions its own way
virtual void add_rectangle_to_region(Fl_Region r, int x, int y, int w, int h);
virtual Fl_Region XRectangleRegion(int x, int y, int w, int h);

View File

@ -124,6 +124,8 @@ void Fl_Graphics_Driver::set_spot(int font, int size, int X, int Y, int W, int H
// nothing to do, reimplement in driver if needed
}
void Fl_Graphics_Driver::set_status(int X, int Y, int W, int H) {}
/** see fl_reset_spot() */
void Fl_Graphics_Driver::reset_spot()

View File

@ -141,11 +141,6 @@ static CFStringRef kTISPropertyInputSourceType;
typedef void (*KeyScript_type)(short);
static KeyScript_type KeyScript;
/* fltk-utf8 placekeepers */
void fl_set_status(int x, int y, int w, int h)
{
}
/*
* Mac keyboard lookup table

View File

@ -328,8 +328,6 @@ static struct FD {
extern unsigned int fl_codepage;
void fl_set_status(int x, int y, int w, int h) {}
void Fl_WinAPI_System_Driver::add_fd(int n, int events, void (*cb)(FL_SOCKET, void *), void *v) {
remove_fd(n, events);
int i = nfds++;

View File

@ -585,7 +585,7 @@ static void fl_new_ic()
}
void fl_set_status(int x, int y, int w, int h)
void Fl_Xlib_Graphics_Driver::set_status(int x, int y, int w, int h)
{
XVaNestedList status_attr;
status_area.x = x;

View File

@ -208,6 +208,7 @@ protected:
virtual float scale_bitmap_for_PostScript();
virtual void set_spot(int font, int size, int X, int Y, int W, int H, Fl_Window *win);
virtual void reset_spot();
virtual void set_status(int X, int Y, int W, int H);
virtual const char* get_font_name(Fl_Font fnum, int* ap);
virtual int get_font_sizes(Fl_Font fnum, int*& sizep);
#if !USE_XFT

View File

@ -58,3 +58,8 @@ void fl_reset_spot()
{
Fl_Graphics_Driver::default_driver().reset_spot();
}
void fl_set_status(int X, int Y, int W, int H)
{
Fl_Graphics_Driver::default_driver().set_status(X, Y, W, H);
}