24#include <config_features.h>
25#include <config_fuzzers.h>
31#include <com/sun/star/beans/XPropertySet.hpp>
32#include <com/sun/star/text/XFlatParagraphIteratorProvider.hpp>
33#include <com/sun/star/linguistic2/XProofreadingIterator.hpp>
34#include <com/sun/star/i18n/ScriptType.hpp>
41#include <osl/diagnose.h>
68#include <lineinfo.hxx>
82#include <UndoManager.hxx>
132 catch (
const uno::Exception &)
134 OSL_FAIL(
"No GCIterator" );
145 bool bStarted =
false;
161 uno::Reference< linguistic2::XProofreadingIterator > xGCIterator(
GetGCIterator() );
162 if ( xGCIterator.is() )
165 uno::Reference< text::XFlatParagraphIteratorProvider > xFPIP( xDoc, uno::UNO_QUERY );
168 if ( xFPIP.is() && !xGCIterator->isProofreading( xDoc ) )
176 pLayout->SetNeedGrammarCheck(
false);
178 xGCIterator->startProofreading( xDoc, xFPIP );
204 : m_pNodes(new
SwNodes(*this)),
206 maOLEModifiedIdle(
"sw::SwDoc maOLEModifiedIdle" ),
207 mpMarkManager(new ::
sw::mark::MarkManager(*this)),
208 m_pMetaFieldManager(new ::
sw::MetaFieldManager()),
210 m_pDocumentDrawModelManager( new ::
sw::DocumentDrawModelManager( *this ) ),
211 m_pDocumentRedlineManager( new ::
sw::DocumentRedlineManager( *this ) ),
212 m_pDocumentStateManager( new ::
sw::DocumentStateManager( *this ) ),
213 m_pUndoManager(new ::
sw::UndoManager(
214 std::shared_ptr<
SwNodes>(new
SwNodes(*this)), *m_pDocumentDrawModelManager, *m_pDocumentRedlineManager, *m_pDocumentStateManager)),
215 m_pDocumentSettingManager(new ::
sw::DocumentSettingManager(*this)),
216 m_pDocumentChartDataProviderManager( new
sw::DocumentChartDataProviderManager( *this ) ),
217 m_pDeviceAccess( new ::
sw::DocumentDeviceManager( *this ) ),
218 m_pDocumentTimerManager( new ::
sw::DocumentTimerManager( *this ) ),
219 m_pDocumentLinksAdministrationManager( new ::
sw::DocumentLinksAdministrationManager( *this ) ),
220 m_pDocumentListItemsManager( new ::
sw::DocumentListItemsManager() ),
221 m_pDocumentListsManager( new ::
sw::DocumentListsManager( *this ) ),
222 m_pDocumentOutlineNodesManager( new ::
sw::DocumentOutlineNodesManager( *this ) ),
223 m_pDocumentContentOperationsManager( new ::
sw::DocumentContentOperationsManager( *this ) ),
224 m_pDocumentFieldsManager( new ::
sw::DocumentFieldsManager( *this ) ),
225 m_pDocumentStatisticsManager( new ::
sw::DocumentStatisticsManager( *this ) ),
226 m_pDocumentLayoutManager( new ::
sw::DocumentLayoutManager( *this ) ),
227 m_pDocumentStylePoolManager( new ::
sw::DocumentStylePoolManager( *this ) ),
228 m_pDocumentExternalDataManager( new ::
sw::DocumentExternalDataManager ),
229 mpDfltFrameFormat( new
SwFrameFormat( GetAttrPool(),
"Frameformat", nullptr ) ),
230 mpEmptyPageFormat( new
SwFrameFormat( GetAttrPool(),
"Empty Page", mpDfltFrameFormat.
get() ) ),
231 mpColumnContFormat( new
SwFrameFormat( GetAttrPool(),
"Columncontainer", mpDfltFrameFormat.
get() ) ),
233 mpDfltTextFormatColl( new
SwTextFormatColl( GetAttrPool(),
"Paragraph style" ) ),
234 mpDfltGrfFormatColl( new
SwGrfFormatColl( GetAttrPool(),
"Graphikformatvorlage" ) ),
237 mpSpzFrameFormatTable( new
sw::FrameFormats<
sw::SpzFrameFormat*>() ),
244 mpOutlineRule( nullptr ),
249 mpDocShell( nullptr ),
250 mpNumberFormatter( nullptr ),
252 mpExtInputRing( nullptr ),
253 mpGrammarContact(new
sw::GrammarContact),
254 mpOnlineAccessibilityCheck(new
sw::OnlineAccessibilityCheck(*this)),
261 mbInMailMerge(false),
262 mbInXMLImport(false),
263 mbInWriterfilterImport(false),
265 mbInLoadAsynchron(false),
266 mbIsAutoFormatRedline(false),
267 mbOLEPrtNotifyPending(false),
268 mbAllOLENotify(false),
269 mbInsOnlyTextGlssry(false),
270 mbContains_MSVBasic(false),
271 mbClipBoard( false ),
272 mbColumnSelection( false ),
273 mbIsPrepareSelAll(false),
275 mbContainsAtPageObjWithContentAnchor(false),
276 meDocType(DOCTYPE_NATIVE)
341#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS
359 static bool bHack = (getenv(
"LIBO_ONEWAY_STABLE_ODF_EXPORT") !=
nullptr);
381 i18n::ScriptType::LATIN);
384 i18n::ScriptType::ASIAN);
387 i18n::ScriptType::COMPLEX);
441 auto pCursor(pWeakCursor.lock());
443 pCursor->m_aNotifier.Broadcast(aHint);
450 for(
const auto& rpLinkSrc : aTemp )
476 while( pTmp->
GetNext() != pTmp )
523 &&
"Default-Text-Collection must always be at the start");
534 &&
"DefaultGrfCollection must always be at the start");
552#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS
728 size_t nDummyPgDsc = 0;
865 for (
const WhichPair& rPair : aRangeOfDefaults)
867 for (sal_uInt16 nWhich = rPair.first;
868 nWhich <= rPair.second; ++nWhich)
872 if (rSourceAttr !=
mpAttrPool->GetDefaultItem(nWhich))
873 aNewDefaults.
Put(rSourceAttr);
877 if (aNewDefaults.
Count())
887#define CNTNT_DOC( doc ) \
888 ((doc)->GetNodes().GetEndOfContent().GetIndex() - (doc)->GetNodes().GetEndOfExtras().GetIndex() - SwNodeOffset(2))
889#define CNTNT_IDX( idx ) \
890 ((idx).GetNode().GetIndex() - GetNodes().GetEndOfExtras().GetIndex() - 1)
895 SAL_INFO(
"sw.pageframe",
"(SwDoc::CreateCopy in" );
909 xRet->ReplaceDefaults(*
this);
911 xRet->ReplaceCompatibilityOptions(*
this);
913 xRet->ReplaceStyles(*
this);
915 uno::Reference<beans::XPropertySet>
const xThisSet(
916 GetDocShell()->GetBaseModel(), uno::UNO_QUERY_THROW);
917 uno::Reference<beans::XPropertySet>
const xRetSet(
919 uno::Sequence<beans::PropertyValue> aInteropGrabBag;
920 xThisSet->getPropertyValue(
"InteropGrabBag") >>= aInteropGrabBag;
921 xRetSet->setPropertyValue(
"InteropGrabBag",
uno::Any(aInteropGrabBag));
929 xRet->AppendDoc(*
this, 0, bCallInitNew, 0, 0);
936 xRet->SetTmpDocShell(
nullptr );
938 SAL_INFO(
"sw.pageframe",
"SwDoc::CreateCopy out)" );
947 OUString sTest = rStartingPageDesc + OUString::number( nDocNo );
962 while (aCheckedPageDescs.
count(pCurPageDesc) == 0)
968 aCheckedPageDescs.
insert(pCurPageDesc);
969 pCurPageDesc = pCurPageDesc->
GetFollow();
984 std::map<OUString, OUString> followMap{ { rSourcePageDesc.
GetName(), rTargetPageDesc.
GetName() } };
985 SwPageDesc const* pCurSourcePageDesc(&rSourcePageDesc);
986 SwPageDesc const* pCurTargetPageDesc(&rTargetPageDesc);
990 OUString sFollowPageDesc = pFollowPageDesc->
GetName();
991 if (sFollowPageDesc == pCurSourcePageDesc->
GetName())
997 auto const itMapped(followMap.find(sFollowPageDesc));
998 if (itMapped == followMap.end())
1000 OUString sNewFollowPageDesc =
lcl_FindUniqueName(&rTargetShell, sFollowPageDesc, nDocNo);
1001 pTargetFollowPageDesc = pTargetDoc->
MakePageDesc(sNewFollowPageDesc);
1002 pTargetDoc->
CopyPageDesc(*pFollowPageDesc, *pTargetFollowPageDesc,
false);
1006 pTargetFollowPageDesc = pTargetDoc->
FindPageDesc(itMapped->second);
1011 if (itMapped != followMap.end())
1015 pCurSourcePageDesc = pCurSourcePageDesc->
GetFollow();
1016 pCurTargetPageDesc = pTargetFollowPageDesc;
1017 followMap[pCurSourcePageDesc->
GetName()] = pCurTargetPageDesc->
GetName();
1024 bool const bDeletePrevious,
int pageOffset,
const sal_uLong nDocNo)
1026 SAL_INFO(
"sw.pageframe",
"(SwDoc::AppendDoc in " << bDeletePrevious );
1035 SwPaM aCpyPam( aSourceIdx, aSourceEndIdx );
1061 if ( pTargetShell ) {
1063 SAL_INFO(
"sw.docappend",
"Has target write shell" );
1075 const OUString sStartingPageDesc = rSourcePageDesc.
GetName();
1077 if( bPageStylesWithHeaderFooter )
1082 OUString sNewPageDescName =
lcl_FindUniqueName(pTargetShell, sStartingPageDesc, nDocNo );
1084 if( pTargetPageDesc )
1086 CopyPageDesc( rSourcePageDesc, *pTargetPageDesc,
false );
1095 if ( pTargetPageDesc )
1121 SwPaM aPaM(aNodeIndex);
1130 if (!aSeenMarks.
insert(pMark).second)
1139 if ( !bDeletePrevious )
1141 SAL_INFO(
"sw.pageframe",
"(Flush pagebreak AKA EndAllAction" );
1144 SAL_INFO(
"sw.pageframe",
"Flush changes AKA EndAllAction)" );
1204 nIdx <= nEndIdx; ++nIdx)
1206 SwTextNode *
const pTextNode = rDestNodes[nIdx]->GetTextNode();
1218 if ( nStartPageNumber || pTargetPageDesc ) {
1219 std::unique_ptr<SfxPoolItem> pNewItem;
1251 SAL_INFO(
"sw.docappend",
"PD New" );
1253 if ( nStartPageNumber )
1255 if ( pTargetPageDesc )
1268 if ( bDeletePrevious )
1277 aDelIdx -= iDelNodes - 1;
1279 SAL_INFO(
"sw.docappend",
"iDelNodes: " << iDelNodes
1281 <<
" EOE: " <<
GetNodes().GetEndOfExtras().GetIndex() );
1284 aStartAppendIndex = aFixupIdx;
1288 aStartAppendIndex = aFixupIdx;
1289 ++aStartAppendIndex;
1298 if (RndStdIds::FLY_AT_PAGE != aAnchor.
GetAnchorId())
1301 <<
" => " << aAnchor.
GetPageNum() + pageOffset );
1302 if ( pageOffset != 0 )
1316 SAL_INFO(
"sw.pageframe",
"SwDoc::AppendDoc out)" );
1317 return aStartAppendIndex;
@ CopyAll
copy break attributes even when source is single node
@ CheckPosInFly
check if target position is in fly anchored at source range
virtual bool AppendTextNode(SwPosition &rPos)=0
virtual bool CopyRange(SwPaM &rPam, SwPosition &rPos, SwCopyFlags flags) const =0
Copy a selected content range to a position.
virtual bool InsertPoolItem(const SwPaM &rRg, const SfxPoolItem &, const SetAttrMode nFlags=SetAttrMode::DEFAULT, SwRootFrame const *pLayout=nullptr, SwTextAttr **ppNewTextAttr=nullptr)=0
Insert an attribute.
virtual void LockExpFields()=0
virtual void UpdateFields(bool bCloseDB)=0
virtual void UnlockExpFields()=0
virtual SwFrameFormat * CopyLayoutFormat(const SwFrameFormat &rSrc, const SwFormatAnchor &rNewAnchor, bool bSetTextFlyAtt, bool bMakeFrames)=0
virtual void DelLayoutFormat(SwFrameFormat *pFormat)=0
virtual sfx2::LinkManager & GetLinkManager()=0
virtual void deleteListForListStyle(const OUString &rListStyleName)=0
Provides access to the marks of a document.
virtual void repositionMark(::sw::mark::IMark *io_pMark, const SwPaM &rPaM)=0
Moves an existing mark to a new selection and performs needed updates.
virtual const SwExtraRedlineTable & GetExtraRedlineTable() const =0
virtual const SwRedlineTable & GetRedlineTable() const =0
virtual void ResetModified()=0
virtual void SetModified()=0
Must be called manually at changes of format.
virtual SwPageDesc * GetPageDescFromPool(sal_uInt16 nId, bool bRegardLanguage=true)=0
Return required automatic page style.
virtual void StopIdling()=0
Stop idle processing.
virtual void Start(bool bStartTimer=true) override
static LanguageType resolveSystemLanguageByScriptType(LanguageType nLang, sal_Int16 nType)
bool HasItem(sal_uInt16 nWhich, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
css::uno::Reference< css::frame::XModel3 > GetBaseModel() const
css::uno::Reference< css::embed::XStorage > const & GetStorage()
virtual SfxPoolItem * Clone(SfxItemPool *pPool=nullptr) const=0
void SetUndoManager(SfxUndoManager *pNewUndoMgr)
static SAL_WARN_UNUSED_RESULT SfxViewFrame * GetNext(const SfxViewFrame &rPrev, const SfxObjectShell *pDoc=nullptr, bool bOnlyVisible=true)
static SAL_WARN_UNUSED_RESULT SfxViewFrame * GetFirst(const SfxObjectShell *pDoc=nullptr, bool bOnlyVisible=true)
void GetOptions(SvtLinguOptions &rOptions) const
Knows all the text content controls in the document.
Marks a character position inside a document model content node (SwContentNode)
const SwContentIndex * GetNext() const
const SwAttrSet & GetSwAttrSet() const
Does node has already its own auto-attributes? Access to SwAttrSet.
bool SttEndDoc(bool bStt)
SwCursor * GetCursor(bool bMakeTableCursor=true) const
Return pointer to the current shell cursor.
static void RevokeDataSource(const OUString &rName)
Unregister a data source.
SwWrtShell * GetWrtShell()
Access to the SwWrtShell belonging to SwView.
void CopyPageDesc(const SwPageDesc &rSrcDesc, SwPageDesc &rDstDesc, bool bCopyPoolIds=true)
Copy the complete PageDesc - beyond document and "deep"! Optionally copying of PoolFormatId,...
bool mbDtor
TRUE: is in SwDoc DTOR.
std::unique_ptr< SwFrameFormat > mpColumnContFormat
css::uno::Reference< css::linguistic2::XProofreadingIterator > m_xGCIterator
SwPageDesc * FindPageDesc(const OUString &rName, size_t *pPos=nullptr) const
bool StartGrammarChecking(bool bSkipStart=false)
std::unique_ptr< SwFrameFormat > mpEmptyPageFormat
void ReplaceDefaults(const SwDoc &rSource)
void AddNumRule(SwNumRule *pRule)
Add numbering rule to document.
std::unordered_map< OUString, SwNumRule * > maNumRuleMap
std::unique_ptr< SwGrfFormatColl > mpDfltGrfFormatColl
std::unique_ptr< SwTOXTypes > mpTOXTypes
~SwDoc()
Speciality: a member of the class SwDoc is located at position 0 in the array of the Format and GDI o...
::sw::DocumentDrawModelManager const & GetDocumentDrawModelManager() const
std::vector< std::weak_ptr< SwUnoCursor > > mvUnoCursorTable
IDocumentState const & getIDocumentState() const
css::uno::Reference< css::embed::XStorage > GetDocStorage()
std::unique_ptr< SwAutoCorrExceptWord > mpACEWord
For the automated takeover of auto-corrected words that are "re-corrected".
void ReplaceCompatibilityOptions(const SwDoc &rSource)
void WriteLayoutCache(SvStream &rStream)
std::unique_ptr< SwTextFormatColls > mpTextFormatCollTable
const std::unique_ptr< ::sw::UndoManager > m_pUndoManager
void SetLanguage(const LanguageType eLang, const sal_uInt16 nId)
o3tl::sorted_vector< SwRootFrame * > GetAllLayouts()
SfxObjectShell * CreateCopy(bool bCallInitNew, bool bEmpty) const
rtl::Reference< SwAttrPool > mpAttrPool
std::unique_ptr< SwLineNumberInfo > mpLineNumberInfo
SvNumberFormatter * mpNumberFormatter
::sw::DocumentFieldsManager & GetDocumentFieldsManager()
std::unique_ptr< SwNodes > m_pNodes
void SetDefault(const SfxPoolItem &)
Set attribute as new default attribute in current document.
std::unique_ptr< SwURLStateChanged > mpURLStateChgd
void cleanupUnoCursorTable() const
std::unique_ptr< SwCharFormats > mpCharFormatTable
std::unique_ptr< ::sw::DocumentDeviceManager > m_pDeviceAccess
std::unique_ptr< ::sfx2::IXmlIdRegistry > m_pXmlIdRegistry
IDocumentLinksAdministration const & getIDocumentLinksAdministration() const
SwNumRule * mpOutlineRule
IDocumentContentOperations const & getIDocumentContentOperations() const
IDocumentUndoRedo & GetIDocumentUndoRedo()
IDocumentFieldsAccess const & getIDocumentFieldsAccess() const
std::unique_ptr< SwFootnoteInfo > mpFootnoteInfo
IDocumentRedlineAccess const & getIDocumentRedlineAccess() const
css::uno::Reference< ooo::vba::word::XFind > mxVbaFind
::sfx2::IXmlIdRegistry & GetXmlIdRegistry()
void SetOLEObjModified()
update all modified OLE-Objects.
SwPageDesc * MakePageDesc(const OUString &rName, const SwPageDesc *pCpy=nullptr, bool bRegardLanguage=true, bool bBroadcast=false)
std::unique_ptr< SwDBManager > m_pOwnDBManager
IDocumentLayoutAccess const & getIDocumentLayoutAccess() const
std::unique_ptr< SwTextFormatColl > mpDfltTextFormatColl
SfxObjectShell * GetPersist() const
IDocumentMarkAccess * getIDocumentMarkAccess()
IDocumentStylePoolAccess const & getIDocumentStylePoolAccess() const
std::unique_ptr< sw::TableFrameFormats > mpTableFrameFormatTable
std::unique_ptr< sw::FrameFormats< SwFrameFormat * > > mpFrameFormatTable
SwExtTextInput * mpExtInputRing
const std::unique_ptr< ::sw::mark::MarkManager > mpMarkManager
SwNodeIndex AppendDoc(const SwDoc &rSource, sal_uInt16 nStartPageNumber, bool bDeletePrevious, int physicalPageOffset, const sal_uLong nDocNo)
void ChgPageDesc(const OUString &rName, const SwPageDesc &)
std::unique_ptr< SwNumRuleTable > mpNumRuleTable
std::unique_ptr< SwDefTOXBase_Impl > mpDefTOXBases
std::unique_ptr< SwLayoutCache > mpLayoutCache
Layout cache to read and save with the document for a faster formatting.
static SwDoc * s_pLast
The last, still alive SwDoc instance, for debugging.
css::uno::Reference< css::linguistic2::XProofreadingIterator > const & GetGCIterator() const
std::unique_ptr< SwSectionFormats > mpSectionFormatTable
bool UpdateParRsid(SwTextNode *pTextNode, sal_uInt32 nVal=0)
std::unique_ptr< SwPagePreviewPrtData > m_pPgPViewPrtData
const SwAttrPool & GetAttrPool() const
void SetPreviewPrtData(const SwPagePreviewPrtData *pData)
void ReadLayoutCache(SvStream &rStream)
SwDoc: Reading and writing of the layout cache.
std::unique_ptr< SwCharFormat > mpDfltCharFormat
std::unique_ptr< SwEndNoteInfo > mpEndNoteInfo
std::unique_ptr< SwFrameFormat > mpDfltFrameFormat
std::mutex mNumberFormatterMutex
void MakeUniqueNumRules(const SwPaM &rPaM)
const std::unique_ptr< ::sw::DocumentSettingManager > m_pDocumentSettingManager
::sw::DocumentSettingManager & GetDocumentSettingManager()
void SetDocShell(SwDocShell *pDSh)
const sw::FrameFormats< sw::SpzFrameFormat * > * GetSpzFrameFormats() const
std::unique_ptr< sw::FrameFormats< sw::SpzFrameFormat * > > mpSpzFrameFormatTable
void DelPageDesc(const OUString &rName, bool bBroadcast=false)
std::unique_ptr< IStyleAccess > mpStyleAccess
IDocumentTimerAccess const & getIDocumentTimerAccess() const
SwDocShell * GetDocShell()
::sw::UndoManager & GetUndoManager()
std::unique_ptr< sw::OnlineAccessibilityCheck > mpOnlineAccessibilityCheck
std::unique_ptr< SwFootnoteIdxs > mpFootnoteIdxs
SwDBManager * m_pDBManager
std::unique_ptr< sw::GrammarContact > mpGrammarContact
IDocumentListsAccess const & getIDocumentListsAccess() const
std::unique_ptr< SwGrfFormatColls > mpGrfFormatCollTable
void StartAllAction()
For all views of this document.
SwPageDesc * FindPageDescByName(const OUString &rName, bool bGetFromPool=false, size_t *pPos=nullptr)
size_t GetCurPageDesc(const bool bCalcFrame=true) const
const SwPageDesc & GetPageDesc(size_t i) const
Content, content of frame (header, footer, fly).
void SetNewContentIdx(const SwNodeIndex *pIdx)
const SwNodeIndex * GetContentIdx() const
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
void SetNumOffset(const ::std::optional< sal_uInt16 > &oNum)
void RegisterToPageDesc(SwPageDesc &)
SwPageDesc * GetPageDesc()
static void Write(SvStream &rStream, const SwDoc &rDoc)
writes the index (more precise: the difference between the index and the first index of the document ...
< purpose of derivation from SwClient: character style for displaying the numbers.
Marks a node in the document model.
SwNodeOffset GetIndex() const
Base class of the Writer document model elements.
SwTextNode * GetTextNode()
Inline methods from Node.hxx.
SwNodeOffset GetIndex() const
SwTableNode * GetTableNode()
SwNodeType GetNodeType() const
SwOutlineNodes m_aOutlineNodes
Array of all outline nodes.
SwNode & GetEndOfExtras() const
This is the last EndNode of a special section.
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).
void Delete(const SwNodeIndex &rPos, SwNodeOffset nNodes=SwNodeOffset(1))
void DelNodes(const SwNodeIndex &rStart, SwNodeOffset nCnt=SwNodeOffset(1))
Delete a number of nodes.
SwNodeOffset Count() const
void SetCountPhantoms(bool bCountPhantoms)
static OUString GetOutlineRuleName()
PaM is Point and Mark: a selection of the document model.
SwNode & GetPointNode() const
const SwPosition * End() const
SwNode & GetMarkNode() const
const SwPosition * GetPoint() const
const SwPosition * Start() const
const OUString & GetName() const
void SetFollow(const SwPageDesc *pNew)
SwFrameFormat & GetMaster()
const SwPageDesc * GetFollow() const
std::pair< const_iterator, bool > push_back(const value_type &x)
void erase(const value_type &x)
void DeleteAndDestroyAll()
const SwTable & GetTable() const
SwTableFormat * GetFrameFormat()
Represents the style of a paragraph.
SwTextNode is a paragraph in the document model.
const SfxPoolItem & GetAttr(sal_uInt16 nWhich, bool bInParent=true) const
End: Data collected during idle time.
virtual bool SetAttr(const SfxPoolItem &) override
overriding to handle change of certain paragraph attributes
virtual SwFormatColl * ChgFormatColl(SwFormatColl *) override
virtual sal_uInt16 ResetAllAttr() override
static ShellResource * GetShellRes()
SwRootFrame * GetLayout() const
Used by the UI to modify the document model.
void SetPriority(TaskPriority ePriority)
void SetInvokeHandler(const Link< Timer *, void > &rLink)
size_type count(const Value &v) const
std::pair< const_iterator, bool > insert(Value &&x)
SfxObjectShell * GetPersist() const
void SetPersist(SfxObjectShell *p)
void Remove(SvBaseLink const *pLink)
void SetDocShell(SwDocShell *pDocShell)
virtual SotClipboardFormatId GetFormat(const TransferableDataHelper &aHelper) override
void PaMCorrAbs(const SwPaM &rRange, const SwPosition &rNewPos)
Function declarations so that everything below the CursorShell can move the Cursor once in a while.
static OUString lcl_FindUniqueName(SwWrtShell *pTargetShell, std::u16string_view rStartingPageDesc, sal_uLong nDocNo)
static void lcl_CopyFollowPageDesc(SwWrtShell &rTargetShell, const SwPageDesc &rSourcePageDesc, const SwPageDesc &rTargetPageDesc, const sal_uLong nDocNo)
constexpr OUStringLiteral DEFAULT_CHAR_FORMAT_NAME
static void lcl_DelFormatIndices(SwFormat const *pFormat)
static bool lcl_PageDescOrFollowContainsHeaderFooter(const SwPageDesc &rPageDesc)
Returns whether the passed SwPageDesc& or any of its (transitive) follows contains a header or footer...
void InitDrawModelAndDocShell(SwDocShell *pSwDocShell, SwDrawModel *pSwDrawDocument)
@ Fixed
Frame cannot be moved in Var-direction.
constexpr sal_uInt16 RES_FRMATR_BEGIN(RES_PARATR_LIST_END)
constexpr sal_uInt16 RES_CHRATR_END(46)
constexpr TypedWhichId< SvxLanguageItem > RES_CHRATR_LANGUAGE(10)
constexpr sal_uInt16 RES_PARATR_BEGIN(RES_TXTATR_END)
constexpr sal_uInt16 RES_UNKNOWNATR_END(160)
constexpr TypedWhichId< SvxLanguageItem > RES_CHRATR_CTL_LANGUAGE(29)
constexpr sal_uInt16 RES_FRMATR_END(141)
constexpr TypedWhichId< SwFormatPageDesc > RES_PAGEDESC(99)
constexpr TypedWhichId< SvxLanguageItem > RES_CHRATR_CJK_LANGUAGE(24)
constexpr sal_uInt16 RES_PARATR_END(82)
constexpr sal_uInt16 RES_CHRATR_BEGIN(HINT_BEGIN)
constexpr sal_uInt16 RES_PARATR_LIST_BEGIN(RES_PARATR_END)
constexpr sal_uInt16 RES_UNKNOWNATR_BEGIN(RES_BOXATR_END)
constexpr sal_uInt16 RES_PARATR_LIST_END(88)
constexpr TypedWhichId< SvxLRSpaceItem > RES_LR_SPACE(97)
constexpr TypedWhichId< SvxULSpaceItem > RES_UL_SPACE(98)
#define LINK(Instance, Class, Member)
#define SAL_INFO(area, stream)
unsigned int uniform_uint_distribution(unsigned int a, unsigned int b)
Reference< XComponentContext > getProcessComponentContext()
std::shared_ptr< osl::Mutex > const & lock()
SvxNumberFormat::SvxNumPositionAndSpaceMode GetDefaultPositionAndSpaceMode()
static constexpr auto Items
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
Dialog to specify the properties of date form field.
FrameFormats<::SwTableFormat * > TableFrameFormats
@ RES_POOLCOLL_STANDARD
Standard.
@ RES_POOLPAGE_STANDARD
Standard page.
OUString aTOXCitationName
OUString aTOXIllustrationsName
OUString aTOXAuthoritiesName
LanguageType nDefaultLanguage
LanguageType nDefaultLanguage_CTL
LanguageType nDefaultLanguage_CJK
Marks a position in the document model.
SwNodeOffset GetNodeIndex() const
std::unique_ptr< IStyleAccess > createStyleManager(SfxItemSet const *pIgnorableParagraphItems)
void ClrContourCache(const SdrObject *pObj)
std::pair< sal_uInt16, sal_uInt16 > WhichPair
constexpr sal_uInt16 XATTR_START
constexpr sal_uInt16 XATTR_END