#include <ie_exp_Text.h>
enum Text_Listener::_dirOverride [private] |
Text_Listener::Text_Listener | ( | PD_Document * | pDocument, | |
IE_Exp_Text * | pie, | |||
bool | bToClipboard = false , |
|||
const char * | szEncoding = 0 , |
|||
bool | bIs16Bit = false , |
|||
bool | m_bUnicode = false , |
|||
bool | bUseBOM = false , |
|||
bool | bBigEndian = false | |||
) |
Text_Listener::~Text_Listener | ( | ) | [virtual] |
void Text_Listener::_closeBlock | ( | void | ) | [protected] |
References m_bBreakExtra, m_bFirstWrite, m_bInBlock, m_eDirMarkerPending, m_eDirOverride, m_iLineBreakLen, m_mbLineBreak, m_pie, and IE_Exp::write().
Referenced by populateStrux().
void Text_Listener::_genBOM | ( | void | ) | [protected] |
Generate correct BOM
Makes a Byte Order Mark correct for the encoding.
References m_bBigEndian, m_bIs16Bit, m_iBOMLen, and m_mbBOM.
Referenced by _outputData().
void Text_Listener::_genLineBreak | ( | void | ) | [protected] |
Generate correct line break characters
Makes a line break correct for the encoding and platform.
References _wctomb(), m_iLineBreakLen, m_mbLineBreak, UT_ASSERT_HARMLESS, and UT_ASSERT_NOT_REACHED.
Referenced by _outputData().
void Text_Listener::_handleDirMarker | ( | PT_AttrPropIndex | apiSpan | ) | [protected] |
References _outputData(), DO_LTR, DO_RTL, DO_UNSET, gchar, PD_Document::getAttrProp(), PP_AttrProp::getProperty(), m_eDirMarkerPending, m_eDirOverride, m_pDocument, UCS_LRO, UCS_RLO, UT_ASSERT_HARMLESS, UT_DEBUGMSG, and UT_SHOULD_NOT_HAPPEN.
Referenced by populate().
void Text_Listener::_outputData | ( | const UT_UCSChar * | data, | |
UT_uint32 | length | |||
) | [protected, virtual] |
Output text buffer to stream
data | Buffer to output | |
length | Size of buffer |
References _genBOM(), _genLineBreak(), _wctomb(), UT_ByteBuf::append(), UT_ByteBuf::getLength(), UT_ByteBuf::getPointer(), UT_Wctomb::initialize(), m_bFirstWrite, m_bIs16Bit, m_bUseBOM, m_iBOMLen, m_iLineBreakLen, m_mbBOM, m_mbLineBreak, m_pie, m_szEncoding, m_wctomb, UT_Wctomb::setOutCharset(), UCS_LF, UT_ASSERT_HARMLESS, and IE_Exp::write().
Referenced by _handleDirMarker(), and populate().
int Text_Listener::_wctomb | ( | char * | pC, | |
int & | length, | |||
UT_UCS4Char | wc | |||
) | [inline, protected] |
Reimplemented in ISCII_Listener.
Referenced by _genLineBreak(), and _outputData().
bool Text_Listener::change | ( | fl_ContainerLayout * | sfh, | |
const PX_ChangeRecord * | pcr | |||
) | [virtual] |
Implements PL_Listener.
References UT_ASSERT_NOT_REACHED.
virtual bool Text_Listener::insertStrux | ( | fl_ContainerLayout * | sfh, | |
const PX_ChangeRecord * | pcr, | |||
pf_Frag_Strux * | sdh, | |||
PL_ListenerId | lid, | |||
void(*)(pf_Frag_Strux *sdhNew, PL_ListenerId lid, fl_ContainerLayout *sfhNew) | pfnBindHandles | |||
) | [virtual] |
Implements PL_Listener.
bool Text_Listener::populate | ( | fl_ContainerLayout * | sfh, | |
const PX_ChangeRecord * | pcr | |||
) | [virtual] |
Implements PL_Listener.
References _handleDirMarker(), _outputData(), DO_LTR, DO_RTL, DO_UNSET, PX_ChangeRecord_Span::getBufIndex(), PX_ChangeRecord_Object::getField(), PX_ChangeRecord::getIndexAP(), PX_ChangeRecord_Span::getLength(), PX_ChangeRecord_Object::getObjectType(), PD_Document::getPointer(), PX_ChangeRecord::getType(), fd_Field::getValue(), m_eDirMarkerPending, m_pDocument, m_pie, IE_Exp::populateFields(), PTO_Annotation, PTO_Bookmark, PTO_Embed, PTO_Field, PTO_Hyperlink, PTO_Image, PTO_Math, PTO_RDFAnchor, PX_ChangeRecord::PXT_InsertFmtMark, PX_ChangeRecord::PXT_InsertObject, PX_ChangeRecord::PXT_InsertSpan, type, UT_ASSERT_HARMLESS, UT_BIDI_LTR, UT_BIDI_RTL, UT_bidiGetCharType(), UT_return_val_if_fail, and UT_TODO.
bool Text_Listener::populateStrux | ( | pf_Frag_Strux * | sdh, | |
const PX_ChangeRecord * | pcr, | |||
fl_ContainerLayout ** | psfh | |||
) | [virtual] |
Implements PL_Listener.
References _closeBlock(), DO_UNSET, gchar, PD_Document::getAttrProp(), PX_ChangeRecord::getIndexAP(), PP_AttrProp::getProperty(), PX_ChangeRecord::getType(), m_bBreakExtra, m_bFirstWrite, m_bInBlock, m_bUnicode, m_eDirMarkerPending, m_eDocDir, m_eSectionDir, m_iLineBreakLen, m_mbLineBreak, m_pDocument, m_pie, PP_evalProperty(), PTX_Block, PTX_EndAnnotation, PTX_EndCell, PTX_EndEndnote, PTX_EndFootnote, PTX_EndFrame, PTX_EndMarginnote, PTX_EndTable, PTX_EndTOC, PTX_Section, PTX_SectionAnnotation, PTX_SectionCell, PTX_SectionEndnote, PTX_SectionFootnote, PTX_SectionFrame, PTX_SectionHdrFtr, PTX_SectionMarginnote, PTX_SectionTable, PTX_SectionTOC, UT_ASSERT_HARMLESS, UT_convertToInches(), UT_return_val_if_fail, UT_TODO, and IE_Exp::write().
bool Text_Listener::signal | ( | UT_uint32 | iSignal | ) | [virtual] |
Implements PL_Listener.
References UT_ASSERT_NOT_REACHED.
bool Text_Listener::m_bBigEndian [private] |
Referenced by _genBOM().
bool Text_Listener::m_bBreakExtra [private] |
Referenced by _closeBlock(), and populateStrux().
bool Text_Listener::m_bFirstWrite [private] |
Referenced by _closeBlock(), _outputData(), and populateStrux().
bool Text_Listener::m_bInBlock [private] |
Referenced by _closeBlock(), and populateStrux().
bool Text_Listener::m_bIs16Bit [private] |
Referenced by _genBOM(), and _outputData().
bool Text_Listener::m_bUnicode [private] |
Referenced by populateStrux().
bool Text_Listener::m_bUseBOM [private] |
Referenced by _outputData().
Referenced by _closeBlock(), _handleDirMarker(), populate(), and populateStrux().
_dirOverride Text_Listener::m_eDirOverride [private] |
Referenced by _closeBlock(), and _handleDirMarker().
_dirOverride Text_Listener::m_eDocDir [private] |
Referenced by populateStrux(), and Text_Listener().
_dirOverride Text_Listener::m_eSectionDir [private] |
Referenced by populateStrux(), and Text_Listener().
int Text_Listener::m_iBOMLen [private] |
Referenced by _genBOM(), and _outputData().
int Text_Listener::m_iLineBreakLen [private] |
Referenced by _closeBlock(), _genLineBreak(), _outputData(), and populateStrux().
char Text_Listener::m_mbBOM[MY_MB_LEN_MAX] [private] |
Referenced by _genBOM(), and _outputData().
char Text_Listener::m_mbLineBreak[MY_MB_LEN_MAX *2] [private] |
Referenced by _closeBlock(), _genLineBreak(), _outputData(), and populateStrux().
PD_Document* Text_Listener::m_pDocument [private] |
Referenced by _handleDirMarker(), populate(), populateStrux(), and Text_Listener().
IE_Exp_Text* Text_Listener::m_pie [private] |
Referenced by _closeBlock(), _outputData(), populate(), and populateStrux().
const char* Text_Listener::m_szEncoding [private] |
Referenced by _outputData().
UT_Wctomb Text_Listener::m_wctomb [private] |
Referenced by _outputData().