wxGTK1 : adding missing ctors foe wxCursor & wxBitmap
This commit is contained in:
@@ -25,6 +25,7 @@ class WXDLLIMPEXP_FWD_CORE wxPixelDataBase;
|
|||||||
class WXDLLIMPEXP_FWD_CORE wxMask;
|
class WXDLLIMPEXP_FWD_CORE wxMask;
|
||||||
class WXDLLIMPEXP_FWD_CORE wxBitmap;
|
class WXDLLIMPEXP_FWD_CORE wxBitmap;
|
||||||
class WXDLLIMPEXP_FWD_CORE wxImage;
|
class WXDLLIMPEXP_FWD_CORE wxImage;
|
||||||
|
class WXDLLIMPEXP_FWD_CORE wxCursor;
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// wxMask
|
// wxMask
|
||||||
@@ -72,6 +73,7 @@ public:
|
|||||||
wxBitmap( const char* const* bits );
|
wxBitmap( const char* const* bits );
|
||||||
wxBitmap( const wxString &filename, wxBitmapType type = wxBITMAP_DEFAULT_TYPE );
|
wxBitmap( const wxString &filename, wxBitmapType type = wxBITMAP_DEFAULT_TYPE );
|
||||||
wxBitmap( const wxImage& image, int depth = -1, double WXUNUSED(scale) = 1.0 ) { (void)CreateFromImage(image, depth); }
|
wxBitmap( const wxImage& image, int depth = -1, double WXUNUSED(scale) = 1.0 ) { (void)CreateFromImage(image, depth); }
|
||||||
|
explicit wxBitmap(const wxCursor& cursor);
|
||||||
virtual ~wxBitmap();
|
virtual ~wxBitmap();
|
||||||
|
|
||||||
bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH);
|
bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH);
|
||||||
|
@@ -29,19 +29,16 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
#if wxUSE_IMAGE
|
#if wxUSE_IMAGE
|
||||||
wxCursor( const wxImage & image );
|
wxCursor( const wxImage & image );
|
||||||
|
wxCursor(const char* const* xpmData);
|
||||||
#endif
|
#endif
|
||||||
|
wxCursor(const wxString& name,
|
||||||
|
wxBitmapType type = wxCURSOR_DEFAULT_TYPE,
|
||||||
|
int hotSpotX = 0, int hotSpotY = 0);
|
||||||
wxCursor( const char bits[], int width, int height,
|
wxCursor( const char bits[], int width, int height,
|
||||||
int hotSpotX=-1, int hotSpotY=-1,
|
int hotSpotX=-1, int hotSpotY=-1,
|
||||||
const char maskBits[] = NULL,
|
const char maskBits[] = NULL,
|
||||||
const wxColour* fg = NULL, const wxColour* bg = NULL);
|
const wxColour* fg = NULL, const wxColour* bg = NULL);
|
||||||
|
|
||||||
/* WARNING: the following ctor is missing:
|
|
||||||
|
|
||||||
wxCursor(const wxString& name,
|
|
||||||
wxBitmapType type = wxCURSOR_DEFAULT_TYPE,
|
|
||||||
int hotSpotX = 0, int hotSpotY = 0);
|
|
||||||
*/
|
|
||||||
|
|
||||||
virtual ~wxCursor();
|
virtual ~wxCursor();
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
@@ -50,6 +47,9 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
void InitFromStock(wxStockCursor);
|
void InitFromStock(wxStockCursor);
|
||||||
|
#if wxUSE_IMAGE
|
||||||
|
void InitFromImage(const wxImage& image);
|
||||||
|
#endif
|
||||||
|
|
||||||
virtual wxGDIRefData *CreateGDIRefData() const;
|
virtual wxGDIRefData *CreateGDIRefData() const;
|
||||||
virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
|
virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
|
||||||
|
@@ -18,6 +18,7 @@
|
|||||||
#include "wx/icon.h"
|
#include "wx/icon.h"
|
||||||
#include "wx/math.h"
|
#include "wx/math.h"
|
||||||
#include "wx/image.h"
|
#include "wx/image.h"
|
||||||
|
#include "wx/cursor.h"
|
||||||
#endif // WX_PRECOMP
|
#endif // WX_PRECOMP
|
||||||
|
|
||||||
#include "wx/filefn.h"
|
#include "wx/filefn.h"
|
||||||
@@ -1144,6 +1145,11 @@ wxBitmap::wxBitmap( const char bits[], int width, int height, int WXUNUSED(depth
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wxBitmap::wxBitmap(const wxCursor& cursor)
|
||||||
|
{
|
||||||
|
wxUnusedVar(cursor);
|
||||||
|
}
|
||||||
|
|
||||||
wxBitmap::~wxBitmap()
|
wxBitmap::~wxBitmap()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@@ -159,9 +159,38 @@ wxCursor::wxCursor(const char bits[], int width, int height,
|
|||||||
gdk_bitmap_unref( mask );
|
gdk_bitmap_unref( mask );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wxCursor::wxCursor(const wxString& cursor_file,
|
||||||
|
wxBitmapType type,
|
||||||
|
int hotSpotX, int hotSpotY)
|
||||||
|
{
|
||||||
|
#if wxUSE_IMAGE
|
||||||
|
wxImage img;
|
||||||
|
if (!img.LoadFile(cursor_file, type))
|
||||||
|
return;
|
||||||
|
|
||||||
|
// eventually set the hotspot:
|
||||||
|
if (!img.HasOption(wxIMAGE_OPTION_CUR_HOTSPOT_X))
|
||||||
|
img.SetOption(wxIMAGE_OPTION_CUR_HOTSPOT_X, hotSpotX);
|
||||||
|
if (!img.HasOption(wxIMAGE_OPTION_CUR_HOTSPOT_Y))
|
||||||
|
img.SetOption(wxIMAGE_OPTION_CUR_HOTSPOT_Y, hotSpotY);
|
||||||
|
|
||||||
|
InitFromImage(img);
|
||||||
|
#endif // wxUSE_IMAGE
|
||||||
|
}
|
||||||
|
|
||||||
#if wxUSE_IMAGE
|
#if wxUSE_IMAGE
|
||||||
|
|
||||||
wxCursor::wxCursor( const wxImage & image )
|
wxCursor::wxCursor( const wxImage & image )
|
||||||
|
{
|
||||||
|
InitFromImage(image);
|
||||||
|
}
|
||||||
|
|
||||||
|
wxCursor::wxCursor(const char* const* xpmData)
|
||||||
|
{
|
||||||
|
InitFromImage(wxImage(xpmData));
|
||||||
|
}
|
||||||
|
|
||||||
|
void wxCursor::InitFromImage( const wxImage & image )
|
||||||
{
|
{
|
||||||
unsigned char * rgbBits = image.GetData();
|
unsigned char * rgbBits = image.GetData();
|
||||||
int w = image.GetWidth() ;
|
int w = image.GetWidth() ;
|
||||||
@@ -312,7 +341,6 @@ wxCursor::wxCursor( const wxImage & image )
|
|||||||
delete [] bits;
|
delete [] bits;
|
||||||
delete [] maskBits;
|
delete [] maskBits;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // wxUSE_IMAGE
|
#endif // wxUSE_IMAGE
|
||||||
|
|
||||||
wxCursor::~wxCursor()
|
wxCursor::~wxCursor()
|
||||||
|
Reference in New Issue
Block a user