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:
@@ -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);
|
||||||
|
Reference in New Issue
Block a user