git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45146
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
virtual void ComputeScaleAndOrigin();
virtual GdkWindow* GetGDKWindow() const { return NULL; }
virtual void ComputeScaleAndOrigin();
virtual GdkWindow* GetGDKWindow() const { return NULL; }
- virtual wxBitmap GetSelectedBitmap() const { return wxNullBitmap; }
protected:
// implementation
protected:
// implementation
virtual void SetTextBackground( const wxColour &col );
// implementation
virtual void SetTextBackground( const wxColour &col );
// implementation
- virtual wxBitmap GetSelectedBitmap() const { return m_selected; }
+ wxBitmap GetSelectedBitmap() const { return m_selected; }
wxBitmap m_selected;
protected:
void DoGetSize( int *width, int *height ) const;
virtual void DoSelect(const wxBitmap& bitmap);
wxBitmap m_selected;
protected:
void DoGetSize( int *width, int *height ) const;
virtual void DoSelect(const wxBitmap& bitmap);
- virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
- { return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect); }
+ virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
+ {
+ wxBitmap bmp = GetSelectedBitmap();
+ return subrect ? bmp.GetSubBitmap(*subrect) : bmp;
+ }
xsrc = source->LogicalToDeviceX(xsrc);
ysrc = source->LogicalToDeviceY(ysrc);
xsrc = source->LogicalToDeviceX(xsrc);
ysrc = source->LogicalToDeviceY(ysrc);
wxMemoryDC *memDC = wxDynamicCast(source, wxMemoryDC);
wxMemoryDC *memDC = wxDynamicCast(source, wxMemoryDC);
- wxBitmap selected = source->GetSelectedBitmap();
+ if ( memDC )
+ {
+ selected = memDC->GetSelectedBitmap();
+ if ( !selected.IsOk() )
+ return false;
+ }
bool use_bitmap_method = false;
bool is_mono = false;
bool use_bitmap_method = false;
bool is_mono = false;
- if (memDC && !selected.Ok()) return false;
-
if (selected.Ok())
{
is_mono = (selected.GetDepth() == 1);
if (selected.Ok())
{
is_mono = (selected.GetDepth() == 1);