Slightly improve the parameter list of member function int Fl_Graphics_Driver::start_image(...)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12079 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Manolo Gouy 2016-11-05 06:00:52 +00:00
parent 0c31411df9
commit 6eea76e187
7 changed files with 10 additions and 10 deletions

View File

@ -135,9 +135,9 @@ protected:
virtual Fl_Bitmask create_bitmask(int w, int h, const uchar *array) {return 0; }
/** Support function for image drawing */
virtual void delete_bitmask(Fl_Bitmask bm) {}
int start_image(int XP, int YP, int WP, int HP, int w, int h, int &cx, int &cy,
int &X, int &Y, int &W, int &H);
// accessor functions to protected image members
int start_image(Fl_Image *img, int XP, int YP, int WP, int HP, int &cx, int &cy,
int &X, int &Y, int &W, int &H);
static fl_uintptr_t* id(Fl_RGB_Image *rgb) {return &(rgb->id_);}
static fl_uintptr_t* id(Fl_Pixmap *pm) {return &(pm->id_);}
static fl_uintptr_t* id(Fl_Bitmap *bm) {return &(bm->id_);}

View File

@ -121,7 +121,7 @@ int Fl_Bitmap::prepare(int XP, int YP, int WP, int HP, int &cx, int &cy,
draw_empty(XP, YP);
return 1;
}
if (fl_graphics_driver->start_image(XP,YP,WP,HP,w(),h(),cx,cy,X,Y,W,H)) return 1;
if (fl_graphics_driver->start_image(this, XP,YP,WP,HP,cx,cy,X,Y,W,H)) return 1;
if (!id_)
id_ = fl_graphics_driver->cache(this, w(), h(), array);
return 0;

View File

@ -135,7 +135,7 @@ void Fl_Graphics_Driver::XDestroyRegion(Fl_Region r)
}
/** Helper function for image drawing by platform-specific graphics drivers */
int Fl_Graphics_Driver::start_image(int XP, int YP, int WP, int HP, int w, int h, int &cx, int &cy,
int Fl_Graphics_Driver::start_image(Fl_Image *img, int XP, int YP, int WP, int HP, int &cx, int &cy,
int &X, int &Y, int &W, int &H)
{
// account for current clip region (faster on Irix):
@ -143,10 +143,10 @@ int Fl_Graphics_Driver::start_image(int XP, int YP, int WP, int HP, int w, int h
cx += X-XP; cy += Y-YP;
// clip the box down to the size of image, quit if empty:
if (cx < 0) {W += cx; X -= cx; cx = 0;}
if (cx+W > w) W = w-cx;
if (cx+W > img->w()) W = img->w()-cx;
if (W <= 0) return 1;
if (cy < 0) {H += cy; Y -= cy; cy = 0;}
if (cy+H > h) H = h-cy;
if (cy+H > img->h()) H = img->h()-cy;
if (H <= 0) return 1;
return 0;
}

View File

@ -61,7 +61,7 @@ int Fl_Pixmap::prepare(int XP, int YP, int WP, int HP, int &cx, int &cy,
WP = w();
HP = h();
}
if ( fl_graphics_driver->start_image(XP,YP,WP,HP,w(),h(),cx,cy,X,Y,W,H) ) return 1;
if ( fl_graphics_driver->start_image(this, XP,YP,WP,HP,cx,cy,X,Y,W,H) ) return 1;
if (!id_) {
id_ = fl_graphics_driver->cache(this, w(), h(), data());
}

View File

@ -490,7 +490,7 @@ void Fl_GDI_Graphics_Driver::draw(Fl_RGB_Image *img, int XP, int YP, int WP, int
Fl_Graphics_Driver::draw_empty(img, XP, YP);
return;
}
if (start_image(XP, YP, WP, HP, img->w(), img->h(), cx, cy, X, Y, W, H)) {
if (start_image(img, XP, YP, WP, HP, cx, cy, X, Y, W, H)) {
return;
}
if (!*Fl_Graphics_Driver::id(img)) *Fl_Graphics_Driver::id(img) = (fl_uintptr_t)build_id(img, (void**)(Fl_Graphics_Driver::mask(img)));

View File

@ -155,7 +155,7 @@ void Fl_Quartz_Graphics_Driver::draw(Fl_RGB_Image *img, int XP, int YP, int WP,
Fl_Graphics_Driver::draw_empty(img, XP, YP);
return;
}
if (start_image(XP, YP, WP, HP, img->w(), img->h(), cx, cy, X, Y, W, H)) {
if (start_image(img, XP, YP, WP, HP, cx, cy, X, Y, W, H)) {
return;
}
if (!*Fl_Graphics_Driver::id(img)) {

View File

@ -710,7 +710,7 @@ void Fl_Xlib_Graphics_Driver::draw(Fl_RGB_Image *img, int XP, int YP, int WP, in
Fl_Graphics_Driver::draw_empty(img, XP, YP);
return;
}
if (start_image(XP, YP, WP, HP, img->w(), img->h(), cx, cy, X, Y, W, H)) {
if (start_image(img, XP, YP, WP, HP, cx, cy, X, Y, W, H)) {
return;
}
if (!*Fl_Graphics_Driver::id(img)) {