git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14912
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
void wxDC::DoFloodFill( wxCoord x, wxCoord y, const wxColour& col,
int style )
{
void wxDC::DoFloodFill( wxCoord x, wxCoord y, const wxColour& col,
int style )
{
if (GetBrush().GetStyle() == wxTRANSPARENT)
{
wxLogDebug(wxT("In FloodFill, Current Brush is transparent, no filling done"));
if (GetBrush().GetStyle() == wxTRANSPARENT)
{
wxLogDebug(wxT("In FloodFill, Current Brush is transparent, no filling done"));
memdc.Blit(0, 0, width, height, (wxDC*) this, 0, 0);
memdc.SelectObject(wxNullBitmap);
memdc.Blit(0, 0, width, height, (wxDC*) this, 0, 0);
memdc.SelectObject(wxNullBitmap);
+ wxImage image = bitmap.ConvertToImage() ;
image.DoFloodFill (x,y, GetBrush(), col, style, GetLogicalFunction());
bitmap = wxBitmap(image);
memdc.SelectObject(bitmap);
this->Blit(0, 0, width, height, &memdc, 0, 0);
memdc.SelectObject(wxNullBitmap);
image.DoFloodFill (x,y, GetBrush(), col, style, GetLogicalFunction());
bitmap = wxBitmap(image);
memdc.SelectObject(bitmap);
this->Blit(0, 0, width, height, &memdc, 0, 0);
memdc.SelectObject(wxNullBitmap);
bool wxDC::DoGetPixel( wxCoord x, wxCoord y, wxColour *col ) const
{
wxCHECK_MSG( Ok(), false, wxT("wxDC::DoGetPixel Invalid DC") );
bool wxDC::DoGetPixel( wxCoord x, wxCoord y, wxColour *col ) const
{
wxCHECK_MSG( Ok(), false, wxT("wxDC::DoGetPixel Invalid DC") );
class wxConditionInternal
{
public:
class wxConditionInternal
{
public:
+ wxConditionInternal(wxMutex& mutex) : m_mutex(mutex)
{
m_excessSignals = 0 ;
}
{
m_excessSignals = 0 ;
}
wxArrayLong m_waiters ;
wxInt32 m_excessSignals ;
wxArrayLong m_waiters ;
wxInt32 m_excessSignals ;
-wxCondition::wxCondition()
+wxCondition::wxCondition(wxMutex& mutex)
- m_internal = new wxConditionInternal;
+ m_internal = new wxConditionInternal(mutex);
}
wxCondition::~wxCondition()
}
wxCondition::~wxCondition()
(void)m_internal->Wait(0xFFFFFFFFL);
}
(void)m_internal->Wait(0xFFFFFFFFL);
}
-bool wxCondition::Wait(unsigned long sec,
- unsigned long nsec)
+bool wxCondition::Wait(unsigned long timeout_millis)
- return m_internal->Wait(sec*1000 + nsec/1000000);
+ return m_internal->Wait(timeout_millis);
}
void wxCondition::Signal()
}
void wxCondition::Signal()
void wxDC::DoFloodFill( wxCoord x, wxCoord y, const wxColour& col,
int style )
{
void wxDC::DoFloodFill( wxCoord x, wxCoord y, const wxColour& col,
int style )
{
if (GetBrush().GetStyle() == wxTRANSPARENT)
{
wxLogDebug(wxT("In FloodFill, Current Brush is transparent, no filling done"));
if (GetBrush().GetStyle() == wxTRANSPARENT)
{
wxLogDebug(wxT("In FloodFill, Current Brush is transparent, no filling done"));
memdc.Blit(0, 0, width, height, (wxDC*) this, 0, 0);
memdc.SelectObject(wxNullBitmap);
memdc.Blit(0, 0, width, height, (wxDC*) this, 0, 0);
memdc.SelectObject(wxNullBitmap);
+ wxImage image = bitmap.ConvertToImage() ;
image.DoFloodFill (x,y, GetBrush(), col, style, GetLogicalFunction());
bitmap = wxBitmap(image);
memdc.SelectObject(bitmap);
this->Blit(0, 0, width, height, &memdc, 0, 0);
memdc.SelectObject(wxNullBitmap);
image.DoFloodFill (x,y, GetBrush(), col, style, GetLogicalFunction());
bitmap = wxBitmap(image);
memdc.SelectObject(bitmap);
this->Blit(0, 0, width, height, &memdc, 0, 0);
memdc.SelectObject(wxNullBitmap);
bool wxDC::DoGetPixel( wxCoord x, wxCoord y, wxColour *col ) const
{
wxCHECK_MSG( Ok(), false, wxT("wxDC::DoGetPixel Invalid DC") );
bool wxDC::DoGetPixel( wxCoord x, wxCoord y, wxColour *col ) const
{
wxCHECK_MSG( Ok(), false, wxT("wxDC::DoGetPixel Invalid DC") );
class wxConditionInternal
{
public:
class wxConditionInternal
{
public:
+ wxConditionInternal(wxMutex& mutex) : m_mutex(mutex)
{
m_excessSignals = 0 ;
}
{
m_excessSignals = 0 ;
}
wxArrayLong m_waiters ;
wxInt32 m_excessSignals ;
wxArrayLong m_waiters ;
wxInt32 m_excessSignals ;
-wxCondition::wxCondition()
+wxCondition::wxCondition(wxMutex& mutex)
- m_internal = new wxConditionInternal;
+ m_internal = new wxConditionInternal(mutex);
}
wxCondition::~wxCondition()
}
wxCondition::~wxCondition()
(void)m_internal->Wait(0xFFFFFFFFL);
}
(void)m_internal->Wait(0xFFFFFFFFL);
}
-bool wxCondition::Wait(unsigned long sec,
- unsigned long nsec)
+bool wxCondition::Wait(unsigned long timeout_millis)
- return m_internal->Wait(sec*1000 + nsec/1000000);
+ return m_internal->Wait(timeout_millis);
}
void wxCondition::Signal()
}
void wxCondition::Signal()