Version: 3.3.0
wxRichTextImageBlock Class Reference

#include <wx/richtext/richtextbuffer.h>

+ Inheritance diagram for wxRichTextImageBlock:

Detailed Description

This class stores information about an image, in binary in-memory form.

Library:  wxRichText
Category:  Rich Text
See also
wxRichTextBuffer, wxRichTextCtrl

Public Member Functions

 wxRichTextImageBlock ()
 Constructor. More...
 
 wxRichTextImageBlock (const wxRichTextImageBlock &block)
 Copy constructor. More...
 
virtual ~wxRichTextImageBlock ()
 
void Init ()
 Initialises the block. More...
 
void Clear ()
 Clears the block. More...
 
virtual bool MakeImageBlock (const wxString &filename, wxBitmapType imageType, wxImage &image, bool convertToJPEG=true)
 Load the original image into a memory block. More...
 
virtual bool MakeImageBlock (wxImage &image, wxBitmapType imageType, int quality=80)
 Make an image block from the wxImage in the given format. More...
 
virtual bool MakeImageBlockDefaultQuality (const wxImage &image, wxBitmapType imageType)
 Uses a const wxImage for efficiency, but can't set quality (only relevant for JPEG) More...
 
virtual bool DoMakeImageBlock (const wxImage &image, wxBitmapType imageType)
 Makes the image block. More...
 
bool Write (const wxString &filename)
 Writes the block to a file. More...
 
bool WriteHex (wxOutputStream &stream)
 Writes the data in hex to a stream. More...
 
bool ReadHex (wxInputStream &stream, int length, wxBitmapType imageType)
 Reads the data in hex from a stream. More...
 
void Copy (const wxRichTextImageBlock &block)
 Copy from block. More...
 
bool Load (wxImage &image)
 
void operator= (const wxRichTextImageBlock &block)
 Assignment operation. More...
 
unsigned char * GetData () const
 Returns the raw data. More...
 
size_t GetDataSize () const
 Returns the data size in bytes. More...
 
wxBitmapType GetImageType () const
 Returns the image type. More...
 
void SetData (unsigned char *image)
 
void SetDataSize (size_t size)
 Sets the data size. More...
 
void SetImageType (wxBitmapType imageType)
 Sets the image type. More...
 
bool IsOk () const
 Returns true if the data is non-null. More...
 
bool Ok () const
 
wxString GetExtension () const
 Gets the extension for the block's type. More...
 
- Public Member Functions inherited from wxObject
 wxObject ()
 Default ctor; initializes to nullptr the internal reference data. More...
 
 wxObject (const wxObject &other)
 Copy ctor. More...
 
virtual ~wxObject ()
 Destructor. More...
 
virtual wxClassInfoGetClassInfo () const
 This virtual function is redefined for every class that requires run-time type information, when using the wxDECLARE_CLASS macro (or similar). More...
 
wxObjectRefDataGetRefData () const
 Returns the wxObject::m_refData pointer, i.e. the data referenced by this object. More...
 
bool IsKindOf (const wxClassInfo *info) const
 Determines whether this class is a subclass of (or the same class as) the given class. More...
 
bool IsSameAs (const wxObject &obj) const
 Returns true if this object has the same data pointer as obj. More...
 
void Ref (const wxObject &clone)
 Makes this object refer to the data in clone. More...
 
void SetRefData (wxObjectRefData *data)
 Sets the wxObject::m_refData pointer. More...
 
void UnRef ()
 Decrements the reference count in the associated data, and if it is zero, deletes the data. More...
 
void UnShare ()
 This is the same of AllocExclusive() but this method is public. More...
 
void operator delete (void *buf)
 The delete operator is defined for debugging versions of the library only, when the identifier __WXDEBUG__ is defined. More...
 
void * operator new (size_t size, const wxString &filename=nullptr, int lineNum=0)
 The new operator is defined for debugging versions of the library only, when the identifier __WXDEBUG__ is defined. More...
 

Static Public Member Functions

static unsigned char * ReadBlock (wxInputStream &stream, size_t size)
 Implementation. More...
 
static unsigned char * ReadBlock (const wxString &filename, size_t size)
 Allocates and reads from a file as a block of memory. More...
 
static bool WriteBlock (wxOutputStream &stream, unsigned char *block, size_t size)
 Writes a memory block to stream. More...
 
static bool WriteBlock (const wxString &filename, unsigned char *block, size_t size)
 Writes a memory block to a file. More...
 

Protected Attributes

unsigned char * m_data
 
size_t m_dataSize
 
wxBitmapType m_imageType
 
- Protected Attributes inherited from wxObject
wxObjectRefDatam_refData
 Pointer to an object which is the object's reference-counted data. More...
 

Additional Inherited Members

- Protected Member Functions inherited from wxObject
void AllocExclusive ()
 Ensure that this object's data is not shared with any other object. More...
 
virtual wxObjectRefDataCreateRefData () const
 Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it. More...
 
virtual wxObjectRefDataCloneRefData (const wxObjectRefData *data) const
 Creates a new instance of the wxObjectRefData-derived class specific to this object and initializes it copying data. More...
 

Constructor & Destructor Documentation

◆ wxRichTextImageBlock() [1/2]

wxRichTextImageBlock::wxRichTextImageBlock ( )

Constructor.

◆ wxRichTextImageBlock() [2/2]

wxRichTextImageBlock::wxRichTextImageBlock ( const wxRichTextImageBlock block)

Copy constructor.

◆ ~wxRichTextImageBlock()

virtual wxRichTextImageBlock::~wxRichTextImageBlock ( )
virtual

Member Function Documentation

◆ Clear()

void wxRichTextImageBlock::Clear ( )

Clears the block.

◆ Copy()

void wxRichTextImageBlock::Copy ( const wxRichTextImageBlock block)

Copy from block.

◆ DoMakeImageBlock()

virtual bool wxRichTextImageBlock::DoMakeImageBlock ( const wxImage image,
wxBitmapType  imageType 
)
virtual

Makes the image block.

◆ GetData()

unsigned char* wxRichTextImageBlock::GetData ( ) const
inline

Returns the raw data.

◆ GetDataSize()

size_t wxRichTextImageBlock::GetDataSize ( ) const
inline

Returns the data size in bytes.

◆ GetExtension()

wxString wxRichTextImageBlock::GetExtension ( ) const

Gets the extension for the block's type.

◆ GetImageType()

wxBitmapType wxRichTextImageBlock::GetImageType ( ) const
inline

Returns the image type.

◆ Init()

void wxRichTextImageBlock::Init ( )

Initialises the block.

◆ IsOk()

bool wxRichTextImageBlock::IsOk ( ) const
inline

Returns true if the data is non-null.

◆ Load()

bool wxRichTextImageBlock::Load ( wxImage image)

◆ MakeImageBlock() [1/2]

virtual bool wxRichTextImageBlock::MakeImageBlock ( const wxString filename,
wxBitmapType  imageType,
wxImage image,
bool  convertToJPEG = true 
)
virtual

Load the original image into a memory block.

If the image is not a JPEG, we must convert it into a JPEG to conserve space. If it's not a JPEG we can make use of image, already scaled, so we don't have to load the image a second time.

◆ MakeImageBlock() [2/2]

virtual bool wxRichTextImageBlock::MakeImageBlock ( wxImage image,
wxBitmapType  imageType,
int  quality = 80 
)
virtual

Make an image block from the wxImage in the given format.

◆ MakeImageBlockDefaultQuality()

virtual bool wxRichTextImageBlock::MakeImageBlockDefaultQuality ( const wxImage image,
wxBitmapType  imageType 
)
virtual

Uses a const wxImage for efficiency, but can't set quality (only relevant for JPEG)

◆ Ok()

bool wxRichTextImageBlock::Ok ( ) const
inline

◆ operator=()

void wxRichTextImageBlock::operator= ( const wxRichTextImageBlock block)

Assignment operation.

◆ ReadBlock() [1/2]

static unsigned char* wxRichTextImageBlock::ReadBlock ( const wxString filename,
size_t  size 
)
static

Allocates and reads from a file as a block of memory.

◆ ReadBlock() [2/2]

static unsigned char* wxRichTextImageBlock::ReadBlock ( wxInputStream stream,
size_t  size 
)
static

Implementation.

Allocates and reads from a stream as a block of memory.

◆ ReadHex()

bool wxRichTextImageBlock::ReadHex ( wxInputStream stream,
int  length,
wxBitmapType  imageType 
)

Reads the data in hex from a stream.

◆ SetData()

void wxRichTextImageBlock::SetData ( unsigned char *  image)
inline

◆ SetDataSize()

void wxRichTextImageBlock::SetDataSize ( size_t  size)
inline

Sets the data size.

◆ SetImageType()

void wxRichTextImageBlock::SetImageType ( wxBitmapType  imageType)
inline

Sets the image type.

◆ Write()

bool wxRichTextImageBlock::Write ( const wxString filename)

Writes the block to a file.

◆ WriteBlock() [1/2]

static bool wxRichTextImageBlock::WriteBlock ( const wxString filename,
unsigned char *  block,
size_t  size 
)
static

Writes a memory block to a file.

◆ WriteBlock() [2/2]

static bool wxRichTextImageBlock::WriteBlock ( wxOutputStream stream,
unsigned char *  block,
size_t  size 
)
static

Writes a memory block to stream.

◆ WriteHex()

bool wxRichTextImageBlock::WriteHex ( wxOutputStream stream)

Writes the data in hex to a stream.

Member Data Documentation

◆ m_data

unsigned char* wxRichTextImageBlock::m_data
protected

◆ m_dataSize

size_t wxRichTextImageBlock::m_dataSize
protected

◆ m_imageType

wxBitmapType wxRichTextImageBlock::m_imageType
protected