Fixed LINKAGEMODE use

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2002-04-10 16:17:50 +00:00
parent 6a4e5f03cf
commit f5f05abf22

View File

@@ -33,7 +33,7 @@
// a color different from the start pixel is reached (wxFLOOD_SURFACE) // a color different from the start pixel is reached (wxFLOOD_SURFACE)
// or fill color is reached (wxFLOOD_BORDER) // or fill color is reached (wxFLOOD_BORDER)
static LINKAGEMODE bool MatchPixel(wxImage *img, int x, int y, int w, int h, const wxColour& c) static bool LINKAGEMODE MatchPixel(wxImage *img, int x, int y, int w, int h, const wxColour& c)
{ {
if ((x<0)||(x>=w)||(y<0)||(y>=h)) return FALSE; if ((x<0)||(x>=w)||(y<0)||(y>=h)) return FALSE;
@@ -43,26 +43,26 @@ static LINKAGEMODE bool MatchPixel(wxImage *img, int x, int y, int w, int h, con
return c.Red() == r && c.Green() == g && c.Blue() == b ; return c.Red() == r && c.Green() == g && c.Blue() == b ;
} }
static LINKAGEMODE bool MatchBoundaryPixel(wxImage *img, int x, int y, int w, int h, const wxColour & fill, const wxColour& bound) static bool LINKAGEMODE MatchBoundaryPixel(wxImage *img, int x, int y, int w, int h, const wxColour & fill, const wxColour& bound)
{ {
if ((x<0)||(x>=w)||(y<0)||(y>=h)) return TRUE; if ((x<0)||(x>=w)||(y<0)||(y>=h)) return TRUE;
unsigned char r = img->GetRed(x,y); unsigned char r = img->GetRed(x,y);
unsigned char g = img->GetGreen(x,y); unsigned char g = img->GetGreen(x,y);
unsigned char b = img->GetBlue(x,y); unsigned char b = img->GetBlue(x,y);
if ( fill.Red() == r && fill.Green() == g && fill.Blue() == b ) if ( fill.Red() == r && fill.Green() == g && fill.Blue() == b )
return TRUE; return TRUE;
if ( bound.Red() == r && bound.Green() == g && bound.Blue() == b ) if ( bound.Red() == r && bound.Green() == g && bound.Blue() == b )
return TRUE; return TRUE;
return FALSE; return FALSE;
} }
static LINKAGEMODE static void LINKAGEMODE
void wxImageFloodFill(wxImage *image, wxImageFloodFill(wxImage *image,
wxCoord x, wxCoord y, const wxBrush & fillBrush, wxCoord x, wxCoord y, const wxBrush & fillBrush,
const wxColour& testColour, int style, const wxColour& testColour, int style,
int LogicalFunction) int LogicalFunction)
{ {
/* A diamond flood-fill using a circular queue system. /* A diamond flood-fill using a circular queue system.
Each pixel surrounding the current pixel is added to Each pixel surrounding the current pixel is added to
@@ -273,7 +273,7 @@ void wxImageFloodFill(wxImage *image,
} }
void wxDoFloodFill(wxDC *dc, wxCoord x, wxCoord y, void wxDoFloodFill(wxDC *dc, wxCoord x, wxCoord y,
const wxColour& col, int style) const wxColour& col, int style)
{ {
if (dc->GetBrush().GetStyle() == wxTRANSPARENT) if (dc->GetBrush().GetStyle() == wxTRANSPARENT)
@@ -294,7 +294,7 @@ void wxDoFloodFill(wxDC *dc, wxCoord x, wxCoord y,
memdc.SelectObject(wxNullBitmap); memdc.SelectObject(wxNullBitmap);
wxImage image = bitmap.ConvertToImage(); wxImage image = bitmap.ConvertToImage();
wxImageFloodFill(&image, x,y, dc->GetBrush(), col, style, wxImageFloodFill(&image, x,y, dc->GetBrush(), col, style,
dc->GetLogicalFunction()); dc->GetLogicalFunction());
bitmap = wxBitmap(image); bitmap = wxBitmap(image);
memdc.SelectObject(bitmap); memdc.SelectObject(bitmap);