23#include <osl/diagnose.h>
42 refStrm->SetEndian(SvStreamEndian::LITTLE);
49 StreamMode::STD_READ);
71 ((RndStdIds::FLY_AT_PARA == rAnchor.
GetAnchorId()) ||
72 (RndStdIds::FLY_AT_CHAR == rAnchor.
GetAnchorId())) &&
73 rIdx == *pAnchorNode )
83 bool bSaveRelFile,
const std::vector<OUString>& rStrings,
84 const std::vector<ww::bytes>& rExtra)
88 const OUString aOldURL( rBlocks.
GetBaseURL() );
109 if( aStart < aDocEnd )
113 sal_uInt16 nGlosEntry = 0;
116 SwPaM aPam( aStart );
121 if(
nullptr == pCNd )
146 const ww::bytes &rData = rExtra[nGlosEntry];
147 sal_uInt16
n = SVBT16ToUInt16( &(rData[2]) );
151 const OUString &rLNm = rStrings[nGlosEntry];
153 OUString sShortcut = rLNm;
156 sal_Int32 nStart = 0;
157 sal_uInt16 nCurPos = rBlocks.
GetIndex( sShortcut );
158 while( sal_uInt16(-1) != nCurPos )
160 sShortcut = rLNm + OUString::number(++nStart);
161 nCurPos = rBlocks.
GetIndex( sShortcut );
196 std::vector<OUString> aStrings;
197 std::vector<ww::bytes>
aData;
199 rtl_TextEncoding eStructCharSet =
207 m_nStrings =
static_cast< sal_uInt16
>(aStrings.size());
219 OSL_ENSURE(
false,
"Where is the TextNode?" );
238 sal_uInt32 nGlossaryFibOffset = 0;
242 nGlossaryFibOffset = ( rFib.
m_pnNext * 512 );
244 return nGlossaryFibOffset;
@ CheckPosInFly
check if target position is in fly anchored at source range
virtual bool CopyRange(SwPaM &rPam, SwPosition &rPos, SwCopyFlags flags) const =0
Copy a selected content range to a position.
virtual SwTextFormatColl * GetTextCollFromPool(sal_uInt16 nId, bool bRegardLanguage=true)=0
Return "Auto-Collection with ID.
tools::SvRef< SotStorageStream > OpenSotStream(const OUString &rEleName, StreamMode=StreamMode::STD_READWRITE)
virtual sal_Int32 Len() const
SwDoc * GetDoc()
returns Doc. But be careful!
IDocumentContentOperations const & getIDocumentContentOperations() const
IDocumentStylePoolAccess const & getIDocumentStylePoolAccess() const
const sw::FrameFormats< sw::SpzFrameFormat * > * GetSpzFrameFormats() const
Marks a node in the document model.
Base class of the Writer document model elements.
SwStartNode * GetStartNode()
SwTextNode * GetTextNode()
Inline methods from Node.hxx.
const SwStartNode * StartOfSectionNode() const
SwNodeOffset EndOfSectionIndex() const
SwContentNode * GetContentNode()
SwTextNode * MakeTextNode(SwNode &rWhere, SwTextFormatColl *pColl, bool bNewFrames=true)
Implementations of "Make...Node" are in the given .cxx-files.
SwNode & GetEndOfContent() const
Regular ContentSection (i.e. the BodyText).
SwContentNode * GoNext(SwNodeIndex *) const
PaM is Point and Mark: a selection of the document model.
virtual void SetMark()
Unless this is called, the getter method of Mark will return Point.
const SwPosition * GetPoint() const
SwStartNodeType GetStartNodeType() const
bool BeginPutDoc(const OUString &, const OUString &)
void EndPutMuchBlockEntries()
OUString const & GetFileName() const
OUString GetBaseURL() const
bool StartPutMuchBlockEntries()
sal_uInt16 GetIndex(const OUString &) const
void SetBaseURL(const OUString &rURL)
Represents the style of a paragraph.
FIB - the File Information Block.
static rtl_TextEncoding GetFIBCharset(sal_uInt16 chs, LanguageType nLidLocale)
static sal_uInt32 FindGlossaryFibOffset(const WW8Fib &rFib)
tools::SvRef< SotStorage > m_xStg
WW8Glossary(tools::SvRef< SotStorageStream > &refStrm, sal_uInt8 nVersion, SotStorage *pStg)
static bool MakeEntries(SwDoc *pD, SwTextBlocks &rBlocks, bool bSaveRelFile, const std::vector< OUString > &rStrings, const std::vector< ww::bytes > &rExtra)
tools::SvRef< SotStorageStream > & m_rStrm
tools::SvRef< SotStorageStream > m_xTableStream
bool Load(SwTextBlocks &rBlocks, bool bSaveRelFile)
static bool HasBareGraphicEnd(SwDoc *pD, SwNode const &rIdx)
std::shared_ptr< WW8GlossaryFib > m_xGlossary
static SwNode * GetStartNode(SwOutlineNodes const *pOutlNds, int nOutlineLevel, SwOutlineNodes::size_type *nOutl)
constexpr TypedWhichId< SwFlyFrameFormat > RES_FLYFRMFMT(162)
constexpr TypedWhichId< SwDrawFrameFormat > RES_DRAWFRMFMT(165)
constexpr OUStringLiteral a0Table
constexpr OUStringLiteral aData
constexpr OUStringLiteral a1Table
SVL_DLLPUBLIC Link< OUString *, bool > const & GetMaybeFileHdl()
SVL_DLLPUBLIC OUString SmartRel2Abs(INetURLObject const &rTheBaseURIRef, OUString const &rTheRelURIRef, Link< OUString *, bool > const &rMaybeFileHdl=Link< OUString *, bool >(), bool bCheckFileExists=true, bool bIgnoreFragment=false, INetURLObject::EncodeMechanism eEncodeMechanism=INetURLObject::EncodeMechanism::WasEncoded, INetURLObject::DecodeMechanism eDecodeMechanism=INetURLObject::DecodeMechanism::ToIUri, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8, FSysStyle eStyle=FSysStyle::Detect)
std::vector< sal_uInt8 > bytes
o3tl::strong_int< sal_Int32, struct Tag_SwNodeOffset > SwNodeOffset
@ RES_POOLCOLL_STANDARD
Standard.
Marks a position in the document model.
void Adjust(SwNodeOffset nDelta)
Adjust node position, and resets content position to zero.
void Assign(const SwNode &rNd, SwNodeOffset nDelta, sal_Int32 nContentOffset=0)
These all set both nNode and nContent.
void SetContent(sal_Int32 nContentIndex)
Set content index, only valid to call this if the position points to a SwContentNode subclass.
void WW8ReadSTTBF(bool bVer8, SvStream &rStrm, sal_uInt32 nStart, sal_Int32 nLen, sal_uInt16 nExtraLen, rtl_TextEncoding eCS, std::vector< OUString > &rArray, std::vector< ww::bytes > *pExtraArray, std::vector< OUString > *pValueArray)
reads array of strings (see MS documentation: String Table stored in File) returns NOT the original p...