22#include <officecfg/Office/Common.hxx>
28#include <svx/svxids.hrc>
55#include <unomodel.hxx>
67#define ShellClass_DrawDocShell
72void DrawDocShell::InitInterface_Impl()
90 mbInDestruction =
false;
93 mbOwnDocument = mpDoc ==
nullptr;
102 SetPool( &mpDoc->GetItemPool() );
104 pUndoManager->SetDocShell(
this);
105 mpUndoManager = std::move(pUndoManager);
108 && officecfg::Office::Common::Undo::Steps::get() < 1)
110 mpUndoManager->EnableUndo(
false);
112 mpDoc->SetSdrUndoManager( mpUndoManager.get() );
114 UpdateTablePointers();
115 SetStyleFamily(SfxStyleFamily::Pseudo);
124 mpViewShell(nullptr),
125 meDocType(eDocumentType),
126 mbSdDataObj(bDataObject),
136 mpViewShell(nullptr),
137 meDocType(eDocumentType),
138 mbSdDataObj(bDataObject),
150 mpViewShell(nullptr),
151 meDocType(eDocumentType),
152 mbSdDataObj(bDataObject),
164 Broadcast(
SfxHint(SfxHintId::Dying));
200 SID_NAVIGATOR_INIT, SfxCallMode::ASYNCHRON | SfxCallMode::RECORD,
219 case SID_ATTR_CHAR_FONTLIST:
223 case SID_SEARCH_ITEM:
233 case SID_SEARCH_OPTIONS:
236 SearchOptionFlags::WHOLE_WORDS |
237 SearchOptionFlags::BACKWARDS |
238 SearchOptionFlags::REG_EXP |
239 SearchOptionFlags::EXACT |
240 SearchOptionFlags::SIMILARITY |
241 SearchOptionFlags::SELECTION;
245 nOpt |= SearchOptionFlags::REPLACE;
246 nOpt |= SearchOptionFlags::REPLACE_ALL;
259 case SID_CHINESE_CONVERSION:
260 case SID_HANGUL_HANJA_CONVERSION:
265 case SID_LANGUAGE_STATUS:
268 bool bLanguageFound =
false;
272 for ( sal_uInt16 itPage = 0; itPage <
nCount && !bLanguageFound; itPage++ )
275 while ( aListIter.
IsMore() && !bLanguageFound )
277 pObj = aListIter.
Next();
284 aOutliner.SetText(*pParaObj);
285 eLanguage = aOutliner.GetLanguage(0, 0);
313 case SID_NOTEBOOKBAR:
322 u"modules/simpress/ui/");
327 u"modules/sdraw/ui/");
344 pFrame->GetSlotState(SID_RELOAD,
345 pFrame->GetInterface(), &
rSet);
401 while( pTestViewShell )
432 Broadcast(
SfxHint( SfxHintId::DocChanged ) );
448 pOutl = GetViewShell()->GetView()->GetTextEditOutliner();
449 pObj = GetViewShell()->GetView()->GetTextEditObject();
452 mpDoc->ImpOnlineSpellCallback(&rInfo, pObj, pOutl);
484 pUndoManager->
Clear();
493 SdPage* pPage = pViewShell->getCurrentPage();
501 return pTheme->getColorSet();
const OUString & getBcp47(bool bResolveSystem=true) const
SAL_DLLPRIVATE SfxItemPool & GetPool()
SAL_DLLPRIVATE void NbcSetChanged(bool bFlag)
SAL_DLLPRIVATE void StartOnlineSpelling(bool bForceSpelling=true)
SAL_DLLPRIVATE LanguageType GetLanguage(const sal_uInt16 nId) const
SAL_DLLPRIVATE DocumentType GetDocumentType() const
XBitmapListRef GetBitmapList() const
XDashListRef GetDashList() const
void SetSdrUndoManager(SfxUndoManager *pUndoManager)
XGradientListRef GetGradientList() const
XPatternListRef GetPatternList() const
XLineEndListRef GetLineEndList() const
XColorListRef GetColorList() const
XHatchListRef GetHatchList() const
const SdrPage * GetPage(sal_uInt16 nPgNum) const
sal_uInt16 GetPageCount() const
virtual OutlinerParaObject * GetOutlinerParaObject() const
std::shared_ptr< model::Theme > const & GetTheme() const
SdrPage & TRG_GetMasterPage() const
bool IsMasterPage() const
SdrPageProperties & getSdrPageProperties()
void InvalidateAll(bool bWithMsg)
SfxBindings * GetBindings() const
const SfxPoolItem * ExecuteList(sal_uInt16 nSlot, SfxCallMode nCall, std::initializer_list< SfxPoolItem const * > args, std::initializer_list< SfxPoolItem const * > internalargs=std::initializer_list< SfxPoolItem const * >())
void SetSlotFilter(SfxSlotFilterState nEnable=SfxSlotFilterState::DISABLED, o3tl::span< sal_uInt16 const > pSIDs=o3tl::span< sal_uInt16 const >())
void RegisterChildWindow(sal_uInt16, bool bContext=false)
sal_uInt16 GetSlotId(sal_uInt16 nWhich) const
static bool IsWhich(sal_uInt16 nId)
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
bool IsEnableSetModified() const
virtual void SetModified(bool bModified=true)
void PutItem(const SfxPoolItem &rItem)
const SfxPoolItem * GetSlotState(sal_uInt16 nSlotId, const SfxInterface *pIF=nullptr, SfxItemSet *pStateSet=nullptr)
SfxItemPool & GetPool() const
SfxViewFrame * GetFrame() const
virtual SfxInterface * GetInterface() const
static SfxInterface * GetStaticInterface()
SfxViewShell * GetViewShell() const
virtual size_t GetUndoActionCount(bool const i_currentLevel=CurrentLevel) const
static SAL_WARN_UNUSED_RESULT SfxViewFrame * Current()
SfxBindings & GetBindings()
static SAL_WARN_UNUSED_RESULT SfxViewFrame * GetNext(const SfxViewFrame &rPrev, const SfxObjectShell *pDoc=nullptr, bool bOnlyVisible=true)
SfxDispatcher * GetDispatcher()
static SAL_WARN_UNUSED_RESULT SfxViewFrame * GetFirst(const SfxObjectShell *pDoc=nullptr, bool bOnlyVisible=true)
SfxViewFrame & GetViewFrame() const
static SAL_WARN_UNUSED_RESULT SfxViewShell * GetNext(const SfxViewShell &rPrev, bool bOnlyVisible=true, const std::function< bool(const SfxViewShell *)> &isViewShell=nullptr)
static SAL_WARN_UNUSED_RESULT SfxViewShell * GetFirst(bool bOnlyVisible=true, const std::function< bool(const SfxViewShell *)> &isViewShell=nullptr)
virtual SfxObjectShell * GetObjectShell() override
static OUString GetLanguageString(const LanguageType eType)
constexpr bool empty() const noexcept
virtual SfxUndoManager * GetUndoManager() override
virtual ~DrawDocShell() override
virtual void Activate(bool bMDI) override
sd::ViewShell * GetViewShell()
::sd::ViewShell * mpViewShell
void Construct(bool bClipboard)
std::unique_ptr< FontList > mpFontList
VclPtr< SfxPrinter > mpPrinter
virtual void Deactivate(bool bMDI) override
virtual void SetModified(bool=true) override
void ApplySlotFilter() const
apply configured slot filters
std::unique_ptr< SfxUndoManager > mpUndoManager
void GetState(SfxItemSet &)
o3tl::span< sal_uInt16 const > mpFilterSIDs
DrawDocShell(SfxObjectCreateMode eMode, bool bSdDataObj, DocumentType)
std::shared_ptr< model::ColorSet > GetThemeColors() override
void UpdateTablePointers()
Base class of the stacked shells that provide graphical views to Draw and Impress documents and editi...
Derivative of sd::View for the outline mode |* .
SdrOutliner & GetOutliner()
void resetSearchFunction()
SfxViewShell descendant that the stacked Draw/Impress shells are based on.
std::shared_ptr< ViewShell > GetMainViewShell() const
Return the main view shell stacked on the called ViewShellBase object.
::sd::View * GetView() const
SearchContext & getSearchContext()
virtual SdrEndTextEditKind SdrEndTextEdit(bool bDontDeleteReally=false) override
ends current text editing
static bool StateMethod(SfxBindings &rBindings, std::u16string_view rUIFile, bool bReloadNotebookbar=false)
SFX_IMPL_SUPERCLASS_INTERFACE(DrawDocShell, SfxObjectShell)
constexpr TypedWhichId< SvxLanguageItem > EE_CHAR_LANGUAGE(EE_CHAR_START+14)
#define LANGUAGE_DONTKNOW
IMPL_LINK(SdCharHeightPropertyBox, implMenuSelectHdl, const OUString &, rIdent, void)
SFX_IMPL_OBJECTFACTORY(DrawDocShell, SvGlobalName(SO3_SIMPRESS_CLASSID), "simpress") void DrawDocShell
slotmaps and definitions of SFX