LibreOffice Module sd (master) 1
drawdoc.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20#pragma once
21
22#include <com/sun/star/text/WritingMode.hpp>
23#include <svl/style.hxx>
24#include <svx/fmmodel.hxx>
26#include <vcl/prntypes.hxx>
27#include <xmloff/autolayout.hxx>
28
29#include <vector>
30#include <memory>
31#include <optional>
32#include <string_view>
33
34#include "sddllapi.h"
35#include "pres.hxx"
36
37namespace com::sun::star::xml::dom { class XNode; }
38namespace com::sun::star::uno { class XInterface; }
39namespace vcl { class Font; }
40namespace com::sun::star::presentation { class XPresentation2; }
41class SdOutliner;
42class Timer;
43class SfxObjectShell;
44class SdPage;
45class SdAnimationInfo;
47class SfxMedium;
48class SvxSearchItem;
49class EditStatus;
50class Point;
51class SdTransferable;
54class SdUndoGroup;
55class SdrObject;
56class Idle;
57class ImageMap;
58class Outliner;
59class SdrModel;
60class SdrOutliner;
61class SdrPage;
62class SdrTextObj;
63class SfxItemPool;
64class Size;
65
66namespace sd
67{
68class DrawDocShell;
69#ifndef SV_DECL_DRAW_DOC_SHELL_DEFINED
70#define SV_DECL_DRAW_DOC_SHELL_DEFINED
71typedef ::tools::SvRef<DrawDocShell> DrawDocShellRef;
72#endif
73class UndoManager;
74class ShapeList;
75class FrameView;
76}
77
80
82{
85 OUString aName;
86 OUString aNewName;
87};
88
90{
91 New,
92 Loaded
93};
94
95namespace sd
96{
98 {
99 OUString maPresPage;
100 bool mbAll;
111 sal_Int32 mnPauseTimeout;
114
116 };
117}
118
119// SdDrawDocument
121{
122public:
123 SAL_DLLPRIVATE void setDocAccTitle( const OUString& rTitle ) { msDocAccTitle = rTitle; }
124 SAL_DLLPRIVATE const OUString& getDocAccTitle() const { return msDocAccTitle; }
125 SAL_DLLPRIVATE bool getDocReadOnly() const { return m_bReadOnly; }
126private:
128 std::unique_ptr<SdOutliner>
130 std::unique_ptr<SdOutliner>
132 std::unique_ptr<Timer> mpWorkStartupTimer;
133 std::unique_ptr<Idle>
135 std::unique_ptr<sd::ShapeList>
137 std::unique_ptr<SvxSearchItem>
139 std::vector<std::unique_ptr<sd::FrameView>>
141 std::unique_ptr<SdCustomShowList> mpCustomShowList;
148
150
151 css::uno::Reference< css::presentation::XPresentation2 > mxPresentation;
152
154
164 bool mbAllocDocSh; // => AllocModel()
166 std::optional<CharClass>
168
169 ::std::unique_ptr<ImpDrawPageListWatcher> mpDrawPageListWatcher;
170 ::std::unique_ptr<ImpMasterPageListWatcher> mpMasterPageListWatcher;
171
172 SAL_DLLPRIVATE void UpdatePageObjectsInNotes(sal_uInt16 nStartPos);
173 SAL_DLLPRIVATE void UpdatePageRelativeURLs(SdPage const * pPage, sal_uInt16 nPos, sal_Int32 nIncrement);
174 SAL_DLLPRIVATE void FillOnlineSpellingList(SdPage const * pPage);
175 SAL_DLLPRIVATE void SpellObject(SdrTextObj* pObj);
176
177 DECL_DLLPRIVATE_LINK(WorkStartupHdl, Timer *, void);
178 DECL_DLLPRIVATE_LINK(OnlineSpellingHdl, Timer *, void);
179 DECL_DLLPRIVATE_LINK(OnlineSpellEventHdl, EditStatus&, void);
180
181 std::vector< OUString > maAnnotationAuthors;
182 std::vector<css::uno::Reference< css::xml::dom::XNode> > maLayoutInfo;
183
184 std::vector<css::uno::Reference< css::xml::dom::XNode> > maPresObjectInfo;
185
186 bool mbEmbedFonts : 1;
191
193
194 SAL_DLLPRIVATE virtual css::uno::Reference< css::uno::XInterface > createUnoModel() override;
195
196public:
197
198
199 SAL_DLLPRIVATE SdDrawDocument(DocumentType eType, SfxObjectShell* pDocSh);
200 SAL_DLLPRIVATE virtual ~SdDrawDocument() override;
201
202 // Adapt to given Size and Borders scaling all contained data, maybe
203 // including PresObj's in higher derivations
205 const Size& rNewSize,
206 tools::Long nLeft = 0,
207 tools::Long nRight = 0,
208 tools::Long nUpper = 0,
209 tools::Long nLower = 0) override;
210
211 // Adapt PageSize for all Pages of PageKind ePageKind. Also
212 // set Borders to left/right/upper/lower, ScaleAll, Orientation,
213 // PaperBin and BackgroundFullSize. Create Undo-Actions when
214 // a SdUndoGroup is given (then used from the View probably)
215 void AdaptPageSizeForAllPages(
216 const Size& rNewSize,
217 PageKind ePageKind,
218 SdUndoGroup* pUndoGroup = nullptr,
219 tools::Long nLeft = 0,
220 tools::Long nRight = 0,
221 tools::Long nUpper = 0,
222 tools::Long nLower = 0,
223 bool bScaleAll = false,
224 Orientation eOrientation = Orientation::Landscape,
225 sal_uInt16 nPaperBin = 0,
226 bool bBackgroundFullSize = false);
227
228 SAL_DLLPRIVATE SdDrawDocument* AllocSdDrawDocument() const;
229 SAL_DLLPRIVATE virtual SdrModel* AllocModel() const override; //forwards to AllocSdDrawDocument
230
231 SAL_DLLPRIVATE rtl::Reference<SdPage> AllocSdPage(bool bMasterPage);
232 SAL_DLLPRIVATE virtual rtl::Reference<SdrPage> AllocPage(bool bMasterPage) override; //forwards to AllocSdPage
233
234 SAL_DLLPRIVATE virtual bool IsReadOnly() const override;
235 SAL_DLLPRIVATE virtual void SetChanged(bool bFlag = true) override;
236
237 SAL_DLLPRIVATE SfxItemPool& GetPool() { return( *m_pItemPool ); }
238
239 SAL_DLLPRIVATE SdOutliner* GetOutliner(bool bCreateOutliner=true);
240 SdOutliner* GetInternalOutliner(bool bCreateOutliner=true);
241
242 SAL_DLLPRIVATE ::sd::DrawDocShell* GetDocSh() const { return mpDocSh; }
243
244 SAL_DLLPRIVATE LanguageType GetLanguage( const sal_uInt16 nId ) const;
245 SAL_DLLPRIVATE void SetLanguage( const LanguageType eLang, const sal_uInt16 nId );
246
247 SAL_DLLPRIVATE SvxNumType GetPageNumType() const override;
248 SAL_DLLPRIVATE void SetPageNumType(SvxNumType eType) { mePageNumType = eType; }
249 OUString CreatePageNumValue(sal_uInt16 nNum) const;
250
251 SAL_DLLPRIVATE DocumentType GetDocumentType() const { return meDocType; }
252
253 SAL_DLLPRIVATE void SetAllocDocSh(bool bAlloc);
254
255 SAL_DLLPRIVATE void CreatingDataObj( SdTransferable* pTransferable ) { mpCreatingTransferable = pTransferable; }
256 SAL_DLLPRIVATE virtual bool IsCreatingDataObj() const override { return mpCreatingTransferable != nullptr; }
257
263 void CreateFirstPages( SdDrawDocument const * pRefDocument = nullptr );
264 bool CreateMissingNotesAndHandoutPages();
265
266 SAL_DLLPRIVATE void MovePage(sal_uInt16 nPgNum, sal_uInt16 nNewPos) override;
267 SAL_DLLPRIVATE void InsertPage(SdrPage* pPage, sal_uInt16 nPos=0xFFFF) override;
268 SAL_DLLPRIVATE void DeletePage(sal_uInt16 nPgNum) override;
269 SAL_DLLPRIVATE rtl::Reference<SdrPage> RemovePage(sal_uInt16 nPgNum) override;
270
271 SAL_DLLPRIVATE virtual void InsertMasterPage(SdrPage* pPage, sal_uInt16 nPos=0xFFFF) override;
272 SAL_DLLPRIVATE virtual rtl::Reference<SdrPage> RemoveMasterPage(sal_uInt16 nPgNum) override;
273
274 SAL_DLLPRIVATE void RemoveUnnecessaryMasterPages( SdPage* pMaster=nullptr, bool bOnlyDuplicatePages=false, bool bUndo=true );
275 void SetMasterPage(sal_uInt16 nSdPageNum, std::u16string_view rLayoutName,
276 SdDrawDocument* pSourceDoc, bool bMaster, bool bCheckMasters);
277
278 SdDrawDocument* OpenBookmarkDoc(const OUString& rBookmarkFile);
279 SAL_DLLPRIVATE SdDrawDocument* OpenBookmarkDoc(SfxMedium* pMedium);
280
281 SAL_DLLPRIVATE void InsertBookmark(const std::vector<OUString> &rBookmarkList,
282 std::vector<OUString> &rExchangeList, bool bLink,
283 sal_uInt16 nPgPos,
284 ::sd::DrawDocShell* pBookmarkDocSh,
285 Point const * pObjPos);
286
287 SAL_DLLPRIVATE bool IsStartWithPresentation() const { return mbStartWithPresentation;}
288 SAL_DLLPRIVATE void SetStartWithPresentation( bool bStartWithPresentation );
289
290 SAL_DLLPRIVATE bool IsExitAfterPresenting() const { return mbExitAfterPresenting;}
291 SAL_DLLPRIVATE void SetExitAfterPresenting( bool bExitAfterPresenting );
292
294 SAL_DLLPRIVATE void InitLayoutVector();
296 SAL_DLLPRIVATE const std::vector<css::uno::Reference< css::xml::dom::XNode> >& GetLayoutVector() const
297 { return maLayoutInfo; }
298
300 SAL_DLLPRIVATE void InitObjectVector();
302 SAL_DLLPRIVATE const std::vector<css::uno::Reference<css::xml::dom::XNode> >& GetObjectVector() const { return maPresObjectInfo; }
349 SAL_DLLPRIVATE bool InsertBookmarkAsPage(const std::vector<OUString> &rBookmarkList,
350 std::vector<OUString> *pExchangeList,
351 bool bLink, bool bReplace, sal_uInt16 nPgPos,
352 bool bNoDialogs, ::sd::DrawDocShell* pBookmarkDocSh,
353 bool bCopy, bool bMergeMasterPages,
354 bool bPreservePageNames);
355
356 SAL_DLLPRIVATE bool InsertBookmarkAsObject(const std::vector<OUString> &rBookmarkList,
357 const std::vector<OUString> &rExchangeList,
358 ::sd::DrawDocShell* pBookmarkDocSh,
359 Point const * pObjPos, bool bCalcObjCount);
360
361 void CloseBookmarkDoc();
362
363 SAL_DLLPRIVATE SdrObject* GetObj(std::u16string_view rObjName) const;
364
378 SAL_DLLPRIVATE sal_uInt16 GetPageByName(std::u16string_view rPgName, bool& rbIsMasterPage ) const;
385 bool IsPageNameUnique( std::u16string_view rPageName ) const;
386 SdPage*GetSdPage(sal_uInt16 nPgNum, PageKind ePgKind) const;
387 sal_uInt16 GetSdPageCount(PageKind ePgKind) const;
388
389 SAL_DLLPRIVATE void SetSelected(SdPage* pPage, bool bSelect);
390 SAL_DLLPRIVATE void UnselectAllPages();
391 SAL_DLLPRIVATE bool MovePages(sal_uInt16 nTargetPage);
392
393 SdPage*GetMasterSdPage(sal_uInt16 nPgNum, PageKind ePgKind);
394 sal_uInt16 GetMasterSdPageCount(PageKind ePgKind) const;
395
396 sal_uInt16 GetActiveSdPageCount() const;
397
398 SAL_DLLPRIVATE sal_uInt16 GetMasterPageUserCount(SdrPage const * pMaster) const;
399
400 SAL_DLLPRIVATE const sd::PresentationSettings& getPresentationSettings() const { return maPresentationSettings; }
401 SAL_DLLPRIVATE sd::PresentationSettings& getPresentationSettings() { return maPresentationSettings; }
402
403 SAL_DLLPRIVATE const css::uno::Reference< css::presentation::XPresentation2 >& getPresentation() const;
404
405 SAL_DLLPRIVATE void SetSummationOfParagraphs( bool bOn = true ) { mbSummationOfParagraphs = bOn; }
406 SAL_DLLPRIVATE bool IsSummationOfParagraphs() const { return mbSummationOfParagraphs; }
407
417 SAL_DLLPRIVATE void SetPrinterIndependentLayout (sal_Int32 nMode);
418
428 SAL_DLLPRIVATE sal_Int32 GetPrinterIndependentLayout() const { return mnPrinterIndependentLayout;}
429
430 SAL_DLLPRIVATE void SetOnlineSpell( bool bIn );
431 SAL_DLLPRIVATE bool GetOnlineSpell() const { return mbOnlineSpell; }
432 SAL_DLLPRIVATE void StopOnlineSpelling();
433 SAL_DLLPRIVATE void StartOnlineSpelling(bool bForceSpelling=true);
434
435 SAL_DLLPRIVATE void ImpOnlineSpellCallback(SpellCallbackInfo const * pInfo, SdrObject* pObj, SdrOutliner const * pOutl);
436
437 SAL_DLLPRIVATE void InsertObject(SdrObject* pObj);
438 SAL_DLLPRIVATE void RemoveObject(SdrObject* pObj);
439
440 SAL_DLLPRIVATE sal_uLong GetLinkCount() const;
441
442 SAL_DLLPRIVATE std::vector<std::unique_ptr<sd::FrameView>>& GetFrameViewList() { return maFrameViewList; }
443 SdCustomShowList* GetCustomShowList(bool bCreate = false);
444
445 SAL_DLLPRIVATE void NbcSetChanged(bool bFlag);
446
447 SAL_DLLPRIVATE void SetTextDefaults() const;
448
449 SAL_DLLPRIVATE void CreateLayoutTemplates();
450 SAL_DLLPRIVATE void RenameLayoutTemplate(const OUString& rOldLayoutName, const OUString& rNewName);
451
452 SAL_DLLPRIVATE void CreateDefaultCellStyles();
453
454 void StopWorkStartupDelay();
455
456 SAL_DLLPRIVATE void NewOrLoadCompleted(DocCreationMode eMode);
457 SAL_DLLPRIVATE void NewOrLoadCompleted( SdPage* pPage, SdStyleSheetPool* pSPool );
458 SAL_DLLPRIVATE bool IsNewOrLoadCompleted() const {return mbNewOrLoadCompleted; }
459
460 SAL_DLLPRIVATE ::sd::FrameView* GetFrameView(sal_uLong nPos) {
461 return nPos < maFrameViewList.size() ? maFrameViewList[nPos].get() : nullptr; }
462
464 SAL_DLLPRIVATE static SdAnimationInfo* GetAnimationInfo(SdrObject* pObject);
465
466 static SdAnimationInfo* GetShapeUserData(SdrObject& rObject, bool bCreate = false );
467
468 SAL_DLLPRIVATE const std::optional<CharClass>& GetCharClass() const { return moCharClass; }
469
470 SAL_DLLPRIVATE void UpdateAllLinks();
471
472 SAL_DLLPRIVATE void CheckMasterPages();
473
474 SAL_DLLPRIVATE void Merge(SdrModel& rSourceModel,
475 sal_uInt16 nFirstPageNum, sal_uInt16 nLastPageNum,
476 sal_uInt16 nDestPos,
477 bool bMergeMasterPages, bool bAllMasterPages,
478 bool bUndo = true, bool bTreadSourceAsConst = false) override;
479
480 css::text::WritingMode GetDefaultWritingMode() const;
481 SAL_DLLPRIVATE void SetDefaultWritingMode( css::text::WritingMode eMode );
482
486 SAL_DLLPRIVATE void ReplacePageInCustomShows( const SdPage* pOldPage, const SdPage* pNewPage );
487
488public:
489
492
530 SAL_DLLPRIVATE sal_uInt16 CreatePage (
531 SdPage* pCurrentPage,
532 PageKind ePageKind,
533 const OUString& sStandardPageName,
534 const OUString& sNotesPageName,
535 AutoLayout eStandardLayout,
536 AutoLayout eNotesLayout,
537 bool bIsPageBack,
538 bool bIsPageObj,
539 const sal_Int32 nInsertPosition);
540
551 SAL_DLLPRIVATE sal_uInt16 DuplicatePage (sal_uInt16 nPageNum);
552
580 SAL_DLLPRIVATE sal_uInt16 DuplicatePage (
581 SdPage* pCurrentPage,
582 PageKind ePageKind,
583 const OUString& sStandardPageName,
584 const OUString& sNotesPageName,
585 bool bIsPageBack,
586 bool bIsPageObj,
587 const sal_Int32 nInsertPosition);
588
591 SAL_DLLPRIVATE void getDefaultFonts( vcl::Font& rLatinFont, vcl::Font& rCJKFont, vcl::Font& rCTLFont );
592
593 sd::UndoManager* GetUndoManager() const;
594
596 SAL_DLLPRIVATE static sal_uInt32 convertFontHeightToCTL( sal_uInt32 nWesternFontHeight );
597
600 SdStyleSheetPool* GetSdStyleSheetPool() const;
601
602 SAL_DLLPRIVATE void UpdatePageRelativeURLs(
603 std::u16string_view aOldName, std::u16string_view aNewName);
604
605 SAL_DLLPRIVATE static void SetCalcFieldValueHdl( ::Outliner* pOutliner);
606
607 SAL_DLLPRIVATE sal_uInt16 GetAnnotationAuthorIndex( const OUString& rAuthor );
608
609 SAL_DLLPRIVATE bool IsEmbedFonts() const { return mbEmbedFonts; }
610 SAL_DLLPRIVATE bool IsEmbedUsedFontsOnly() const { return mbEmbedUsedFontsOnly; }
611 SAL_DLLPRIVATE bool IsEmbedFontScriptLatin() const { return mbEmbedFontScriptLatin; }
612 SAL_DLLPRIVATE bool IsEmbedFontScriptAsian() const { return mbEmbedFontScriptAsian; }
613 SAL_DLLPRIVATE bool IsEmbedFontScriptComplex() const { return mbEmbedFontScriptComplex; }
614
615 SAL_DLLPRIVATE void SetEmbedFonts(bool bUse) { mbEmbedFonts = bUse; }
616 SAL_DLLPRIVATE void SetEmbedUsedFontsOnly(bool bUse) { mbEmbedUsedFontsOnly = bUse; }
617 SAL_DLLPRIVATE void SetEmbedFontScriptLatin(bool bUse) { mbEmbedFontScriptLatin = bUse; }
618 SAL_DLLPRIVATE void SetEmbedFontScriptAsian(bool bUse) { mbEmbedFontScriptAsian = bUse; }
619 SAL_DLLPRIVATE void SetEmbedFontScriptComplex(bool bUse) { mbEmbedFontScriptComplex = bUse; }
620
621 sal_Int32 getImagePreferredDPI() const override { return mnImagePreferredDPI; }
622 void setImagePreferredDPI(sal_Int32 nValue) { mnImagePreferredDPI = nValue; }
623
624 void dumpAsXml(xmlTextWriterPtr pWriter) const override;
625
626private:
632
661 SAL_DLLPRIVATE sal_uInt16 InsertPageSet (
662 SdPage* pCurrentPage,
663 PageKind ePageKind,
664 const OUString& sStandardPageName,
665 const OUString& sNotesPageName,
666 bool bIsPageBack,
667 bool bIsPageObj,
668 SdPage* pStandardPage,
669 SdPage* pNotesPage,
670 sal_Int32 nInsertPosition);
671
687 SAL_DLLPRIVATE void SetupNewPage (
688 SdPage const * pPreviousPage,
689 SdPage* pPage,
690 const OUString& sPageName,
691 sal_uInt16 nInsertionPoint,
692 bool bIsPageBack,
693 bool bIsPageObj);
694
695 SAL_DLLPRIVATE virtual void PageListChanged() override;
696 SAL_DLLPRIVATE virtual void MasterPageListChanged() override;
697};
698
699namespace sd
700{
701
705{
706public:
708 ~ModifyGuard();
709
710private:
711 void init();
712
717};
718
719}
720
721/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
AutoLayout
virtual rtl::Reference< SdrPage > RemovePage(sal_uInt16 nPgNum) override
virtual void InsertMasterPage(SdrPage *pPage, sal_uInt16 nPos=0xFFFF) override
virtual rtl::Reference< SdrPage > RemoveMasterPage(sal_uInt16 nPgNum) override
virtual void InsertPage(SdrPage *pPage, sal_uInt16 nPos=0xFFFF) override
virtual rtl::Reference< SdrPage > AllocPage(bool bMasterPage) override
std::unique_ptr< SdOutliner > mpInternalOutliner
internal outliner for creation of text objects
Definition: drawdoc.hxx:131
bool mbEmbedFontScriptComplex
Definition: drawdoc.hxx:190
SAL_DLLPRIVATE bool IsEmbedFonts() const
Definition: drawdoc.hxx:609
bool mbEmbedFontScriptAsian
Definition: drawdoc.hxx:189
SAL_DLLPRIVATE void SetEmbedFontScriptComplex(bool bUse)
Definition: drawdoc.hxx:619
bool mbExitAfterPresenting
true if mbStartWithPresentation AND Presentation was shown fully
Definition: drawdoc.hxx:158
SdTransferable * mpCreatingTransferable
Definition: drawdoc.hxx:143
bool mbAllocDocSh
Definition: drawdoc.hxx:164
std::unique_ptr< SdCustomShowList > mpCustomShowList
Definition: drawdoc.hxx:141
SAL_DLLPRIVATE void SetEmbedFontScriptLatin(bool bUse)
Definition: drawdoc.hxx:617
SAL_DLLPRIVATE bool IsNewOrLoadCompleted() const
Definition: drawdoc.hxx:458
LanguageType meLanguage
Definition: drawdoc.hxx:159
SAL_DLLPRIVATE void SetEmbedFonts(bool bUse)
Definition: drawdoc.hxx:615
sal_Int32 mnPrinterIndependentLayout
This member stores the printer independent layout mode.
Definition: drawdoc.hxx:631
SAL_DLLPRIVATE std::vector< std::unique_ptr< sd::FrameView > > & GetFrameViewList()
Definition: drawdoc.hxx:442
SAL_DLLPRIVATE const sd::PresentationSettings & getPresentationSettings() const
Definition: drawdoc.hxx:400
sal_Int32 mnImagePreferredDPI
Definition: drawdoc.hxx:192
bool mbEmbedUsedFontsOnly
Definition: drawdoc.hxx:187
std::unique_ptr< SvxSearchItem > mpOnlineSearchItem
Definition: drawdoc.hxx:138
css::uno::Reference< css::presentation::XPresentation2 > mxPresentation
Definition: drawdoc.hxx:151
DocumentType meDocType
Definition: drawdoc.hxx:165
SAL_DLLPRIVATE void setDocAccTitle(const OUString &rTitle)
Definition: drawdoc.hxx:123
SAL_DLLPRIVATE SfxItemPool & GetPool()
Definition: drawdoc.hxx:237
SAL_DLLPRIVATE bool GetOnlineSpell() const
Definition: drawdoc.hxx:431
OUString msDocAccTitle
Definition: drawdoc.hxx:127
SAL_DLLPRIVATE bool getDocReadOnly() const
Definition: drawdoc.hxx:125
LanguageType meLanguageCTL
Definition: drawdoc.hxx:161
SAL_DLLPRIVATE void SetSummationOfParagraphs(bool bOn=true)
Definition: drawdoc.hxx:405
std::vector< css::uno::Reference< css::xml::dom::XNode > > maLayoutInfo
Definition: drawdoc.hxx:182
bool mbNewOrLoadCompleted
Definition: drawdoc.hxx:153
SAL_DLLPRIVATE void SetPageNumType(SvxNumType eType)
Definition: drawdoc.hxx:248
SAL_DLLPRIVATE bool IsSummationOfParagraphs() const
Definition: drawdoc.hxx:406
DECL_DLLPRIVATE_LINK(OnlineSpellEventHdl, EditStatus &, void)
std::unique_ptr< Timer > mpWorkStartupTimer
Definition: drawdoc.hxx:132
::sd::DrawDocShell * mpDocSh
Definition: drawdoc.hxx:142
sd::PresentationSettings maPresentationSettings
Definition: drawdoc.hxx:149
SAL_DLLPRIVATE bool IsExitAfterPresenting() const
Definition: drawdoc.hxx:290
bool mbHasOnlineSpellErrors
Definition: drawdoc.hxx:144
OUString maBookmarkFile
Definition: drawdoc.hxx:146
std::unique_ptr< Idle > mpOnlineSpellingIdle
Definition: drawdoc.hxx:134
SAL_DLLPRIVATE bool IsEmbedFontScriptLatin() const
Definition: drawdoc.hxx:611
SAL_DLLPRIVATE const std::vector< css::uno::Reference< css::xml::dom::XNode > > & GetLayoutVector() const
return reference to vector of Impress layout definitions
Definition: drawdoc.hxx:296
SAL_DLLPRIVATE void CreatingDataObj(SdTransferable *pTransferable)
Definition: drawdoc.hxx:255
SAL_DLLPRIVATE void SetEmbedUsedFontsOnly(bool bUse)
Definition: drawdoc.hxx:616
void setImagePreferredDPI(sal_Int32 nValue)
Definition: drawdoc.hxx:622
::std::unique_ptr< ImpMasterPageListWatcher > mpMasterPageListWatcher
Definition: drawdoc.hxx:170
bool mbStartWithPresentation
is set to true when starting with command line parameter -start
Definition: drawdoc.hxx:157
::sd::DrawDocShellRef mxBookmarkDocShRef
Definition: drawdoc.hxx:147
std::vector< std::unique_ptr< sd::FrameView > > maFrameViewList
Definition: drawdoc.hxx:140
std::vector< css::uno::Reference< css::xml::dom::XNode > > maPresObjectInfo
Definition: drawdoc.hxx:184
DECL_DLLPRIVATE_LINK(OnlineSpellingHdl, Timer *, void)
SAL_DLLPRIVATE const OUString & getDocAccTitle() const
Definition: drawdoc.hxx:124
SvxNumType mePageNumType
Definition: drawdoc.hxx:162
std::unique_ptr< sd::ShapeList > mpOnlineSpellingList
Definition: drawdoc.hxx:136
bool mbSummationOfParagraphs
Definition: drawdoc.hxx:156
static SAL_DLLPRIVATE SdDrawDocument * s_pDocLockedInsertingLinks
static to prevent recursions while resolving links
Definition: drawdoc.hxx:491
::std::unique_ptr< ImpDrawPageListWatcher > mpDrawPageListWatcher
Definition: drawdoc.hxx:169
bool mbOnlineSpell
Definition: drawdoc.hxx:155
::sd::DrawDocShellRef mxAllocedDocShRef
Definition: drawdoc.hxx:163
virtual SAL_DLLPRIVATE bool IsCreatingDataObj() const override
Definition: drawdoc.hxx:256
SAL_DLLPRIVATE const std::optional< CharClass > & GetCharClass() const
Definition: drawdoc.hxx:468
SAL_DLLPRIVATE bool IsEmbedFontScriptComplex() const
Definition: drawdoc.hxx:613
SAL_DLLPRIVATE bool IsEmbedUsedFontsOnly() const
Definition: drawdoc.hxx:610
std::optional< CharClass > moCharClass
Definition: drawdoc.hxx:167
LanguageType meLanguageCJK
Definition: drawdoc.hxx:160
bool mbInitialOnlineSpellingEnabled
Definition: drawdoc.hxx:145
SAL_DLLPRIVATE::sd::FrameView * GetFrameView(sal_uLong nPos)
Definition: drawdoc.hxx:460
DECL_DLLPRIVATE_LINK(WorkStartupHdl, Timer *, void)
SAL_DLLPRIVATE sal_Int32 GetPrinterIndependentLayout() const
Get the flag that controls whether the formatting of the document depends on the current printer metr...
Definition: drawdoc.hxx:428
SAL_DLLPRIVATE bool IsEmbedFontScriptAsian() const
Definition: drawdoc.hxx:612
std::vector< OUString > maAnnotationAuthors
Definition: drawdoc.hxx:181
SAL_DLLPRIVATE::sd::DrawDocShell * GetDocSh() const
Definition: drawdoc.hxx:242
SAL_DLLPRIVATE bool IsStartWithPresentation() const
Definition: drawdoc.hxx:287
SAL_DLLPRIVATE const std::vector< css::uno::Reference< css::xml::dom::XNode > > & GetObjectVector() const
return reference to vector of master presentation object definitions
Definition: drawdoc.hxx:302
bool mbEmbedFontScriptLatin
Definition: drawdoc.hxx:188
SAL_DLLPRIVATE void SetEmbedFontScriptAsian(bool bUse)
Definition: drawdoc.hxx:618
sal_Int32 getImagePreferredDPI() const override
Definition: drawdoc.hxx:621
bool mbEmbedFonts
Definition: drawdoc.hxx:186
std::unique_ptr< SdOutliner > mpOutliner
local outliner for outline mode
Definition: drawdoc.hxx:129
SAL_DLLPRIVATE sd::PresentationSettings & getPresentationSettings()
Definition: drawdoc.hxx:401
SAL_DLLPRIVATE DocumentType GetDocumentType() const
Definition: drawdoc.hxx:251
The main purpose of this class is searching and replacing as well as spelling of impress documents.
Definition: Outliner.hxx:123
virtual SvxNumType GetPageNumType() const
virtual void adaptSizeAndBorderForAllPages(const Size &rNewSize, tools::Long nLeft=0, tools::Long nRight=0, tools::Long nUpper=0, tools::Long nLower=0)
virtual void SetChanged(bool bFlg=true)
virtual void Merge(SdrModel &rSourceModel, sal_uInt16 nFirstPageNum, sal_uInt16 nLastPageNum, sal_uInt16 nDestPos, bool bMergeMasterPages, bool bAllMasterPages, bool bUndo=true, bool bTreadSourceAsConst=false)
virtual void MasterPageListChanged()
virtual void MovePage(sal_uInt16 nPgNum, sal_uInt16 nNewPos)
virtual css::uno::Reference< css::uno::XInterface > createUnoModel()
virtual bool IsReadOnly() const
void SetTextDefaults() const
bool m_bReadOnly
virtual void DeletePage(sal_uInt16 nPgNum)
virtual void PageListChanged()
virtual SdrModel * AllocModel() const
virtual void dumpAsXml(xmlTextWriterPtr pWriter) const
an instance of this guard disables modification of a document during its lifetime
Definition: drawdoc.hxx:705
bool mbIsEnableSetModified
Definition: drawdoc.hxx:715
ModifyGuard(SdDrawDocument *pDoc)
Definition: drawdoc4.cxx:1269
DrawDocShell * mpDocShell
Definition: drawdoc.hxx:713
bool mbIsDocumentChanged
Definition: drawdoc.hxx:716
SdDrawDocument * mpDoc
Definition: drawdoc.hxx:714
DocCreationMode
Definition: drawdoc.hxx:90
struct _xmlTextWriter * xmlTextWriterPtr
DocumentType eType
sal_Int16 nValue
std::unique_ptr< IconChoicePage >(* CreatePage)(weld::Container *pParent, SvxHpLinkDlg *pDlg, const SfxItemSet *pAttrSet)
sal_uInt16 nPos
void SetLanguage(SwWrtShell &rWrtSh, std::u16string_view rLangText, bool bIsForSelection, SfxItemSet &rCoreSet)
LanguageType GetLanguage(SfxItemSet const &aSet, sal_uInt16 nLangWhichId)
::tools::SvRef< DrawDocShell > DrawDocShellRef
DocumentType
long Long
PageKind
Definition: pres.hxx:45
Orientation
#define SD_DLLPUBLIC
Definition: sddllapi.h:27
sal_uIntPtr sal_uLong
OUString aName
Definition: drawdoc.hxx:85
OUString aNewName
Definition: drawdoc.hxx:86
SfxStyleFamily nNewFamily
Definition: drawdoc.hxx:84
SfxStyleFamily nFamily
Definition: drawdoc.hxx:83
SfxStyleFamily
SvxNumType