- virtual void BeginCharacterFormatting(const wxTextAttrEx& currentStyle, const wxTextAttrEx& thisStyle, wxOutputStream& stream );
- virtual void EndCharacterFormatting(const wxTextAttrEx& WXUNUSED(currentStyle), const wxTextAttrEx& thisStyle, wxOutputStream& stream );
-
- /// Output paragraph formatting
- virtual void OutputParagraphFormatting(const wxTextAttrEx& WXUNUSED(currentStyle), const wxTextAttrEx& thisStyle, wxOutputStream& stream/*, bool start*/);
-
- /// Converts an image to its base64 equivalent
- void Image_to_Base64(wxRichTextImage* image, wxOutputStream& stream);
-
- /// Builds required indentation
- void Indent( const wxTextAttrEx& thisStyle, wxTextOutputStream& str );
-
- /// Left indent
- void LIndent( const wxTextAttrEx& thisStyle, wxTextOutputStream& str );
-
- /// Converts from pt to size property compatible height
- long Pt_To_Size(long size);
-
- /// Typical base64 encoder
- wxChar* b64enc( unsigned char* input, size_t in_len );
-
- /// Gets the mime type of the given wxBITMAP_TYPE
- wxChar* GetMimeType(int imageType);
-
- /// Gets the html equivalent of the specified value
- wxString GetAlignment( const wxTextAttrEx& thisStyle );
-
- /// Generates array for indentations
- wxString SymbolicIndent(long indent);
-
- /// Finds the html equivalent of the specified bullet
- void TypeOfList( const wxTextAttrEx& thisStyle, wxString& tag );
-
- /// Closes existings or Opens new tables for navigation to an item's horizontal position.
- void NavigateToListPosition( const wxTextAttrEx& thisStyle, wxTextOutputStream& str );
-
- /// Indentation values of the table tags
- wxArrayInt m_indents;
-
- /// Horizontal position of the current table
- long m_indent;
-
- /// Is there any opened font tag
- bool m_font;
-
- /// Is there any opened ul/ol tag
- bool m_list;
-
- /// type of list, ul or ol?
- bool m_is_ul;
+ void BeginCharacterFormatting(const wxTextAttr& currentStyle, const wxTextAttr& thisStyle, const wxTextAttr& paraStyle, wxTextOutputStream& stream );
+ void EndCharacterFormatting(const wxTextAttr& currentStyle, const wxTextAttr& thisStyle, const wxTextAttr& paraStyle, wxTextOutputStream& stream );
+
+ /// Output paragraph formatting
+ void BeginParagraphFormatting(const wxTextAttr& currentStyle, const wxTextAttr& thisStyle, wxTextOutputStream& stream);
+ void EndParagraphFormatting(const wxTextAttr& currentStyle, const wxTextAttr& thisStyle, wxTextOutputStream& stream);
+
+ /// Output font tag
+ void OutputFont(const wxTextAttr& style, wxTextOutputStream& stream);
+
+ /// Closes lists to level (-1 means close all)
+ void CloseLists(int level, wxTextOutputStream& str);
+
+ /// Writes an image to its base64 equivalent, or to the memory filesystem, or to a file
+ void WriteImage(wxRichTextImage* image, wxOutputStream& stream);
+
+ /// Converts from pt to size property compatible height
+ long PtToSize(long size);
+
+ /// Typical base64 encoder
+ wxChar* b64enc(unsigned char* input, size_t in_len);
+
+ /// Gets the mime type of the given wxBITMAP_TYPE
+ const wxChar* GetMimeType(int imageType);
+
+ /// Gets the html equivalent of the specified value
+ wxString GetAlignment(const wxTextAttr& thisStyle);
+
+ /// Generates array for indentations
+ wxString SymbolicIndent(long indent);
+
+ /// Finds the html equivalent of the specified bullet
+ int TypeOfList(const wxTextAttr& thisStyle, wxString& tag);
+#endif
+
+// Data members
+
+ wxRichTextBuffer* m_buffer;
+
+ /// Indentation values of the table tags
+ wxArrayInt m_indents;
+
+ /// Stack of list types: 0 = ol, 1 = ul
+ wxArrayInt m_listTypes;
+
+ /// Is there any opened font tag?
+ bool m_font;
+
+ /// Are we in a table?
+ bool m_inTable;
+
+ /// A list of the image files or in-memory images created by the last operation.
+ wxArrayString m_imageLocations;
+
+ /// A location for the temporary files
+ wxString m_tempDir;
+
+ /// A mapping from point size to HTML font size
+ wxArrayInt m_fontSizeMapping;