wxWidgets: wxRichTextHTMLHandler Class Reference

| Version: 3.2.5

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
wxRichTextHTMLHandler Class Reference
Class List by Category » Rich Text

`#include <wx/richtext/richtexthtml.h>`

Inheritance diagram for wxRichTextHTMLHandler:
[legend]

## Detailed Description

Handles HTML output (only) for wxRichTextCtrl content.

The most flexible way to use this class is to create a temporary object and call its functions directly, rather than use wxRichTextBuffer::SaveFile or wxRichTextCtrl::SaveFile.

Image handling requires a little extra work from the application, to choose an appropriate image format for the target HTML viewer and to clean up the temporary images later. If you are planning to load the HTML into a standard web browser, you can specify the handler flag wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_BASE64 (the default) and no extra work is required: the images will be written with the HTML.

However, if you want wxHTML compatibility, you will need to use `wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_MEMORY` or `wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_FILES`.

In this case, you must either call wxRichTextHTMLHandler::DeleteTemporaryImages before the next load operation, or you must store the image locations and delete them yourself when appropriate.

You can call wxRichTextHTMLHandler::GetTemporaryImageLocations to get the array of temporary image names.

# Handler flags

The following flags can be used with this handler, via the handler's SetFlags() function or the buffer or control's SetHandlerFlags() function:

- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_MEMORY Images are saved to the memory filesystem: suitable for showing wxHTML windows.
- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_FILES Images are saved to temporary files: suitable for showing in wxHTML windows.
- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_BASE64 Images are written with the HTML files in Base 64 format: suitable for showing in web browsers.
- wxRICHTEXT_HANDLER_NO_HEADER_FOOTER Don't include header and footer tags (HTML, HEAD, BODY), so that the HTML can be used as part of a larger document.
- wxRICHTEXT_HANDLER_USE_CSS Use CSS where possible, otherwise use workarounds that will show in wxHtmlWindow.

##

Library: wxRichText
Category: Rich Text

## Public Member Functions
| wxRichTextHTMLHandler (const wxString &name="HTML", const wxString &ext="html", int type=wxRICHTEXT_TYPE_HTML)
| Constructor. More...
void | ClearTemporaryImageLocations ()
| Clears the image locations generated by the last operation. More...
bool | DeleteTemporaryImages ()
| Deletes the in-memory or temporary files generated by the last operation. More...
wxArrayInt | GetFontSizeMapping () const
| Returns the mapping for converting point sizes to HTML font sizes. More...
const wxString & | GetTempDir () const
| Returns the directory used to store temporary image files. More...
const wxArrayString & | GetTemporaryImageLocations () const
| Returns the image locations for the last operation. More...
void | SetFontSizeMapping (const wxArrayInt &fontSizeMapping)
| Sets the mapping for converting point sizes to HTML font sizes. More...
void | SetTempDir (const wxString &tempDir)
| Sets the directory for storing temporary files. More...
void | SetTemporaryImageLocations (const wxArrayString &locations)
| Sets the list of image locations generated by the last operation. More...
Public Member Functions inherited from wxRichTextFileHandler
| wxRichTextFileHandler (const wxString &name=wxEmptyString, const wxString &ext=wxEmptyString, int type=0)
| Creates a file handler object. More...
bool | LoadFile (wxRichTextBuffer *buffer, wxInputStream &stream)
| Loads the buffer from a stream. More...
bool | SaveFile (wxRichTextBuffer *buffer, wxOutputStream &stream)
| Saves the buffer to a stream. More...
virtual bool | LoadFile (wxRichTextBuffer *buffer, const wxString &filename)
| Loads the buffer from a file. More...
virtual bool | SaveFile (wxRichTextBuffer *buffer, const wxString &filename)
| Saves the buffer to a file. More...
virtual bool | CanHandle (const wxString &filename) const
| Returns true if we handle this filename (if using files). More...
virtual bool | CanSave () const
| Returns true if we can save using this handler. More...
virtual bool | CanLoad () const
| Returns true if we can load using this handler. More...
virtual bool | IsVisible () const
| Returns true if this handler should be visible to the user. More...
virtual void | SetVisible (bool visible)
| Sets whether the handler should be visible to the user (via the application's load and save dialogs). More...
void | SetName (const wxString &name)
| Sets the name of the handler. More...
wxString | GetName () const
| Returns the name of the handler. More...
void | SetExtension (const wxString &ext)
| Sets the default extension to recognise. More...
wxString | GetExtension () const
| Returns the default extension to recognise. More...
void | SetType (int type)
| Sets the handler type. More...
int | GetType () const
| Returns the handler type. More...
void | SetFlags (int flags)
| Sets flags that change the behaviour of loading or saving. More...
int | GetFlags () const
| Returns flags controlling how loading and saving is done. More...
void | SetEncoding (const wxString &encoding)
| Sets the encoding to use when saving a file. More...
const wxString & | GetEncoding () const
| Returns the encoding to use when saving a file. More...
Public Member Functions inherited from wxObject
| wxObject ()
| Default ctor; initializes to NULL the internal reference data. More...
| wxObject (const wxObject &other)
| Copy ctor. More...
virtual | ~wxObject ()
| Destructor. More...
virtual wxClassInfo * | GetClassInfo () const
| This virtual function is redefined for every class that requires run-time type information, when using the wxDECLARE_CLASS macro (or similar). More...
wxObjectRefData * | GetRefData () 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=NULL, 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 bool | DeleteTemporaryImages (int flags, const wxArrayString &imageLocations)
| Delete the in-memory or temporary files generated by the last operation. More...
static void | SetFileCounter (int counter)
| Reset the file counter, in case, for example, the same names are required each time. More...

## Protected Member Functions
virtual bool | DoSaveFile (wxRichTextBuffer *buffer, wxOutputStream &stream)
| Saves the buffer content to the HTML stream. More...
Protected Member Functions inherited from wxRichTextFileHandler
virtual bool | DoLoadFile (wxRichTextBuffer *buffer, wxInputStream &stream)=0
| Override to load content from stream into buffer. More...
Protected Member Functions inherited from wxObject
void | AllocExclusive ()
| Ensure that this object's data is not shared with any other object. More...
virtual wxObjectRefData * | CreateRefData () const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it. More...
virtual wxObjectRefData * | CloneRefData (const wxObjectRefData *data) const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and initializes it copying data. More...

## Additional Inherited Members
Protected Attributes inherited from wxRichTextFileHandler
wxString | m_name
wxString | m_encoding
wxString | m_extension
int | m_type
int | m_flags
bool | m_visible
Protected Attributes inherited from wxObject
wxObjectRefData * | m_refData
| Pointer to an object which is the object's reference-counted data. More...

## Constructor & Destructor Documentation

## ◆ wxRichTextHTMLHandler()

wxRichTextHTMLHandler::wxRichTextHTMLHandler | ( | const wxString & | name = `"HTML"`,
|  | const wxString & | ext = `"html"`,
|  | int | type = `wxRICHTEXT_TYPE_HTML`
| ) |  |

Constructor.

## Member Function Documentation

## ◆ ClearTemporaryImageLocations()

void wxRichTextHTMLHandler::ClearTemporaryImageLocations | ( |  | ) |

Clears the image locations generated by the last operation.

## ◆ DeleteTemporaryImages() [1/2]

bool wxRichTextHTMLHandler::DeleteTemporaryImages | ( |  | ) |

Deletes the in-memory or temporary files generated by the last operation.

## ◆ DeleteTemporaryImages() [2/2]

static bool wxRichTextHTMLHandler::DeleteTemporaryImages | ( | int | flags,
|  | const wxArrayString & | imageLocations
| ) |  |
| static

Delete the in-memory or temporary files generated by the last operation.

This is a static function that can be used to delete the saved locations from an earlier operation, for example after the user has viewed the HTML file.

## ◆ DoSaveFile()

virtual bool wxRichTextHTMLHandler::DoSaveFile | ( | wxRichTextBuffer * | buffer,
|  | wxOutputStream & | stream
| ) |  |
| protectedvirtual

Saves the buffer content to the HTML stream.

Implements wxRichTextFileHandler.

## ◆ GetFontSizeMapping()

wxArrayInt wxRichTextHTMLHandler::GetFontSizeMapping | ( |  | ) | const

Returns the mapping for converting point sizes to HTML font sizes.

## ◆ GetTempDir()

const wxString& wxRichTextHTMLHandler::GetTempDir | ( |  | ) | const

Returns the directory used to store temporary image files.

## ◆ GetTemporaryImageLocations()

const wxArrayString& wxRichTextHTMLHandler::GetTemporaryImageLocations | ( |  | ) | const

Returns the image locations for the last operation.

## ◆ SetFileCounter()

static void wxRichTextHTMLHandler::SetFileCounter | ( | int | counter | ) |
| static

Reset the file counter, in case, for example, the same names are required each time.

## ◆ SetFontSizeMapping()

void wxRichTextHTMLHandler::SetFontSizeMapping | ( | const wxArrayInt & | fontSizeMapping | ) |

Sets the mapping for converting point sizes to HTML font sizes.

There should be 7 elements, one for each HTML font size, each element specifying the maximum point size for that HTML font size. For example:

wxArrayInt fontSizeMapping;
fontSizeMapping.Add(7);
fontSizeMapping.Add(9);
fontSizeMapping.Add(11);
fontSizeMapping.Add(12);
fontSizeMapping.Add(14);
fontSizeMapping.Add(22);
fontSizeMapping.Add(100);
htmlHandler.SetFontSizeMapping(fontSizeMapping);
wxArrayInt
wxArray< int > wxArrayInt
Predefined specialization of wxArray<T> for standard types.
Definition: dynarray.h:818

## ◆ SetTempDir()

void wxRichTextHTMLHandler::SetTempDir | ( | const wxString & | tempDir | ) |

Sets the directory for storing temporary files.

If empty, the system temporary directory will be used.

## ◆ SetTemporaryImageLocations()

void wxRichTextHTMLHandler::SetTemporaryImageLocations | ( | const wxArrayString & | locations | ) |

Sets the list of image locations generated by the last operation.