android: Update app-specific/MIME type icons
[LibreOffice.git] / sw / inc / swabstdlg.hxx
blobfe6bab309ef91228f5003ed20dc70cab60b8483e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
19 #ifndef INCLUDED_SW_INC_SWABSTDLG_HXX
20 #define INCLUDED_SW_INC_SWABSTDLG_HXX
22 #include <editeng/svxenum.hxx>
23 #include <rtl/ustring.hxx>
24 #include <sfx2/sfxdlg.hxx>
25 #include <com/sun/star/uno/Reference.h>
26 #include <com/sun/star/uno/Sequence.h>
27 #include <optional>
28 #include "dbmgr.hxx"
29 #include <cnttab.hxx>
30 #include "tblenum.hxx"
32 class SfxViewFrame;
33 class SfxBindings;
34 class SfxItemSet;
35 class SfxStyleSheetBase;
36 class SwGlossaryHdl;
37 class SwField;
39 class SwAsciiOptions;
40 class SwDoc;
41 class SwDocShell;
42 class SvStream;
43 class SwWrtShell;
44 class SfxRequest;
45 class SwView;
46 class SwTableAutoFormat;
47 class SwTOXMgr;
48 class SwTOXDescription;
49 class SwTOXBase;
50 class SwSectionData;
51 struct SwDBData;
52 class Printer;
53 class SwLabItem;
54 class SwTableFUNC;
55 class SwChildWinWrapper;
56 struct SfxChildWinInfo;
57 class SwTOXMark;
58 struct SwDocStat;
59 struct SwInsertTableOptions;
60 class SwInsTableDlg;
61 enum class SwBorderModes;
62 enum class SwCharDlgMode;
63 enum class SfxStyleFamily;
64 enum class SwLineBreakClear;
65 class SwContentControlListItem;
67 namespace com::sun::star{
68 namespace frame{
69 class XModel;
71 namespace sdbcx{
72 class XColumnsSupplier;
74 namespace sdbc{
75 class XDataSource;
76 class XConnection;
77 class XResultSet;
79 namespace container { class XNameAccess; }
80 namespace container { class XNamed; }
84 namespace sw::mark { class IFieldmark; class IDateFieldmark; }
86 typedef void (*SwLabDlgMethod) (css::uno::Reference< css::frame::XModel> const & xModel, const SwLabItem& rItem);
88 typedef OUString (*GlossaryGetCurrGroup)();
89 typedef void (*GlossarySetActGroup)(const OUString& rNewGroup);
91 class AbstractGlossaryDlg : public VclAbstractDialog
93 protected:
94 virtual ~AbstractGlossaryDlg() override = default;
95 public:
96 virtual OUString GetCurrGrpName() const = 0;
97 virtual OUString GetCurrShortName() const = 0;
100 class AbstractFieldInputDlg : public VclAbstractTerminatedDialog
102 protected:
103 virtual ~AbstractFieldInputDlg() override = default;
104 public:
105 virtual void EndDialog(sal_Int32 nResult) override = 0;
106 virtual bool PrevButtonPressed() const = 0;
107 virtual bool NextButtonPressed() const = 0;
110 class AbstractInsFootNoteDlg : public VclAbstractDialog
112 protected:
113 virtual ~AbstractInsFootNoteDlg() override = default;
114 public:
115 virtual OUString GetFontName() = 0;
116 virtual bool IsEndNote() = 0;
117 virtual OUString GetStr() = 0;
118 virtual void SetHelpId( const OUString& sHelpId ) = 0;
119 virtual void SetText( const OUString& rStr ) = 0;
122 class AbstractInsTableDlg
124 protected:
125 virtual ~AbstractInsTableDlg() = default;
126 public:
127 virtual void GetValues( OUString& rName, sal_uInt16& rRow, sal_uInt16& rCol,
128 SwInsertTableOptions& rInsTableFlags, OUString& rTableAutoFormatName,
129 std::unique_ptr<SwTableAutoFormat>& prTAFormat ) = 0;
130 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
133 class AbstractJavaEditDialog : public VclAbstractDialog
135 protected:
136 virtual ~AbstractJavaEditDialog() override = default;
137 public:
138 virtual OUString GetScriptText() const = 0;
139 virtual OUString GetScriptType() const = 0;
140 virtual bool IsUrl() const = 0;
141 virtual bool IsNew() const = 0;
142 virtual bool IsUpdate() const = 0;
145 class AbstractMailMergeDlg : public VclAbstractDialog
147 protected:
148 virtual ~AbstractMailMergeDlg() override = default;
149 public:
150 virtual DBManagerOptions GetMergeType() = 0;
151 virtual const OUString& GetSaveFilter() const = 0;
152 virtual css::uno::Sequence< css::uno::Any > GetSelection() const = 0;
153 virtual css::uno::Reference< css::sdbc::XResultSet> GetResultSet() const = 0;
154 virtual bool IsSaveSingleDoc() const = 0;
155 virtual bool IsGenerateFromDataBase() const = 0;
156 virtual bool IsFileEncryptedFromDataBase() const = 0;
157 virtual OUString GetColumnName() const = 0;
158 virtual OUString GetPasswordColumnName() const = 0;
159 virtual OUString GetTargetURL() const = 0;
162 class AbstractMailMergeCreateFromDlg : public VclAbstractDialog
164 protected:
165 virtual ~AbstractMailMergeCreateFromDlg() override = default;
166 public:
167 virtual bool IsThisDocument() const = 0;
170 class AbstractMailMergeFieldConnectionsDlg : public VclAbstractDialog
172 protected:
173 virtual ~AbstractMailMergeFieldConnectionsDlg() override = default;
174 public:
175 virtual bool IsUseExistingConnections() const = 0;
178 class AbstractMultiTOXTabDialog : public VclAbstractDialog
180 protected:
181 virtual ~AbstractMultiTOXTabDialog() override = default;
182 public:
183 virtual CurTOXType GetCurrentTOXType() const = 0;
184 virtual SwTOXDescription& GetTOXDescription(CurTOXType eTOXTypes) = 0;
185 //from SfxTabDialog
186 virtual const SfxItemSet* GetOutputItemSet() const = 0;
189 class AbstractEditRegionDlg : public VclAbstractDialog
191 protected:
192 virtual ~AbstractEditRegionDlg() override = default;
193 public:
194 virtual void SelectSection(const OUString& rSectionName) = 0;
197 class AbstractInsertSectionTabDialog : public VclAbstractDialog
199 protected:
200 virtual ~AbstractInsertSectionTabDialog() override = default;
201 public:
202 virtual void SetSectionData(SwSectionData const& rSect) = 0;
205 class AbstractSwWordCountFloatDlg : public VclAbstractDialog
207 protected:
208 virtual ~AbstractSwWordCountFloatDlg() override = default;
209 public:
210 virtual void UpdateCounts() = 0;
211 virtual void SetCounts(const SwDocStat &rCurrCnt, const SwDocStat &rDocStat) = 0;
212 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
215 class AbstractSwInsertAbstractDlg : public VclAbstractDialog
217 protected:
218 virtual ~AbstractSwInsertAbstractDlg() override = default;
219 public:
220 virtual sal_uInt8 GetLevel() const = 0;
221 virtual sal_uInt8 GetPara() const = 0;
224 class AbstractSwAsciiFilterDlg : public VclAbstractDialog
226 protected:
227 virtual ~AbstractSwAsciiFilterDlg() override = default;
228 public:
229 virtual void FillOptions( SwAsciiOptions& rOptions ) = 0;
233 /// Interface for the insert -> fields -> page number wizard dialog
234 class AbstractSwPageNumberDlg : public VclAbstractDialog
236 protected:
237 virtual ~AbstractSwPageNumberDlg() override = default;
238 public:
239 virtual int GetPageNumberPosition() const = 0;
240 virtual int GetPageNumberAlignment() const = 0;
241 virtual bool GetMirrorOnEvenPages() const = 0;
242 virtual bool GetIncludePageTotal() const = 0;
243 virtual SvxNumType GetPageNumberType() const = 0;
244 virtual void SetPageNumberType(SvxNumType nSet) = 0;
248 * Interface for the insert -> more breaks -> manual break dialog. It's implemented by
249 * AbstractSwBreakDlg_Impl, but SwTextShell only knows about this interface and the
250 * SwAbstractDialogFactory::CreateSwBreakDlg() factory.
252 class AbstractSwBreakDlg
254 protected:
255 virtual ~AbstractSwBreakDlg() = default;
256 public:
257 virtual OUString GetTemplateName() = 0;
258 virtual sal_uInt16 GetKind() = 0;
259 virtual ::std::optional<sal_uInt16> GetPageNumber() = 0;
260 virtual std::optional<SwLineBreakClear> GetClear() = 0;
262 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
265 class AbstractSplitTableDialog : public VclAbstractDialog // add for
267 protected:
268 virtual ~AbstractSplitTableDialog() override = default;
269 public:
270 virtual SplitTable_HeadlineOption GetSplitMode() = 0;
273 class AbstractSwConvertTableDlg : public VclAbstractDialog
275 protected:
276 virtual ~AbstractSwConvertTableDlg() override = default;
277 public:
278 virtual void GetValues( sal_Unicode& rDelim,
279 SwInsertTableOptions& rInsTableFlags,
280 SwTableAutoFormat const*& prTAFormat ) = 0;
283 class AbstractSwInsertDBColAutoPilot : public VclAbstractDialog
285 protected:
286 virtual ~AbstractSwInsertDBColAutoPilot() override = default;
287 public:
288 virtual void DataToDoc( const css::uno::Sequence< css::uno::Any >& rSelection,
289 css::uno::Reference< css::sdbc::XDataSource> rxSource,
290 css::uno::Reference< css::sdbc::XConnection> xConnection,
291 css::uno::Reference< css::sdbc::XResultSet > xResultSet) = 0;
294 class AbstractDropDownFieldDialog : public VclAbstractDialog
296 protected:
297 virtual ~AbstractDropDownFieldDialog() override = default;
298 public:
299 virtual bool PrevButtonPressed() const = 0;
300 virtual bool NextButtonPressed() const = 0;
303 class AbstractSwLabDlg : public SfxAbstractTabDialog
305 protected:
306 virtual ~AbstractSwLabDlg() override = default;
307 public:
308 virtual const OUString& GetBusinessCardStr() const = 0;
309 virtual Printer *GetPrt() =0;
312 class AbstractSwSelGlossaryDlg : public VclAbstractDialog
314 protected:
315 virtual ~AbstractSwSelGlossaryDlg() override = default;
316 public:
317 virtual void InsertGlos(const OUString &rRegion, const OUString &rGlosName) = 0; // inline
318 virtual sal_Int32 GetSelectedIdx() const = 0; // inline
319 virtual void SelectEntryPos(sal_Int32 nIdx) = 0; // inline
322 class AbstractSwAutoFormatDlg : public VclAbstractDialog
324 protected:
325 virtual ~AbstractSwAutoFormatDlg() override = default;
326 public:
327 virtual std::unique_ptr<SwTableAutoFormat> FillAutoFormatOfIndex() const = 0;
330 class AbstractSwFieldDlg : public SfxAbstractTabDialog
332 protected:
333 virtual ~AbstractSwFieldDlg() override = default;
334 public:
335 virtual void Initialize(SfxChildWinInfo *pInfo) = 0;
336 virtual void ReInitDlg() = 0;
337 virtual void ActivateDatabasePage() = 0;
338 virtual void ShowReferencePage() = 0;
339 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
343 * Interface for e.g. the insert -> bookmark -> rename dialog. It's implemented by
344 * AbstractSwRenameXNamedDlg_Impl, but SwInsertBookmarkDlg only knows about this interface and the
345 * SwAbstractDialogFactory::CreateSwRenameXNamedDlg() factory.
347 class AbstractSwRenameXNamedDlg : public VclAbstractDialog
349 protected:
350 virtual ~AbstractSwRenameXNamedDlg() override = default;
351 public:
352 virtual void SetForbiddenChars( const OUString& rSet ) = 0;
353 virtual void SetAlternativeAccess(
354 css::uno::Reference< css::container::XNameAccess > & xSecond,
355 css::uno::Reference< css::container::XNameAccess > & xThird ) = 0;
359 * Interface for e.g. the form -> content control -> properties -> add dialog. It's implemented by
360 * AbstractSwContentControlListItemDlg_Impl, but SwContentControlDlg only knows about this interface
361 * and the SwAbstractDialogFactory::CreateSwContentControlListItemDlg() factory.
363 class AbstractSwContentControlListItemDlg : public VclAbstractDialog
365 protected:
366 virtual ~AbstractSwContentControlListItemDlg() override = default;
367 public:
370 class AbstractSwModalRedlineAcceptDlg : public VclAbstractDialog
372 protected:
373 virtual ~AbstractSwModalRedlineAcceptDlg() override = default;
376 class AbstractMarkFloatDlg : public VclAbstractDialog
378 protected:
379 virtual ~AbstractMarkFloatDlg() override = default;
380 public:
381 virtual void ReInitDlg(SwWrtShell& rWrtShell) = 0;
382 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
385 #define RET_LOAD_DOC 100
386 #define RET_TARGET_CREATED 103
387 #define RET_REMOVE_TARGET 104
389 class SwMailMergeConfigItem;
391 class AbstractMailMergeWizard : public VclAbstractDialog
393 protected:
394 virtual ~AbstractMailMergeWizard() override = default;
395 public:
396 virtual OUString GetReloadDocument() const = 0;
397 virtual void ShowPage( sal_uInt16 nLevel ) = 0;
398 virtual sal_uInt16 GetRestartPage() const = 0;
401 class SwLanguageListItem;
403 class AbstractSwTranslateLangSelectDlg
405 protected:
406 virtual ~AbstractSwTranslateLangSelectDlg() = default;
407 public:
408 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
409 virtual std::optional<SwLanguageListItem> GetSelectedLanguage() = 0;
413 class SwAbstractDialogFactory
415 public:
416 static SwAbstractDialogFactory* Create();
418 virtual VclPtr<SfxAbstractDialog> CreateNumFormatDialog(weld::Widget* pParent, const SfxItemSet& rAttr) = 0;
419 virtual VclPtr<SfxAbstractDialog> CreateSwDropCapsDialog(weld::Window* pParent, const SfxItemSet& rSet) = 0;
420 virtual VclPtr<SfxAbstractDialog> CreateSwBackgroundDialog(weld::Window* pParent, const SfxItemSet& rSet) = 0;
422 virtual VclPtr<AbstractSwWordCountFloatDlg> CreateSwWordCountDialog(SfxBindings* pBindings,
423 SfxChildWindow* pChild, weld::Window *pParent, SfxChildWinInfo* pInfo) = 0;
425 virtual VclPtr<AbstractSwInsertAbstractDlg> CreateSwInsertAbstractDlg(weld::Window* pParent) = 0;
426 virtual VclPtr<SfxAbstractDialog> CreateSwAddressAbstractDlg(weld::Window* pParent, const SfxItemSet& rSet) = 0;
427 virtual VclPtr<AbstractSwAsciiFilterDlg> CreateSwAsciiFilterDlg(weld::Window* pParent, SwDocShell& rDocSh,
428 SvStream* pStream) = 0;
429 virtual VclPtr<VclAbstractDialog> CreateSwInsertBookmarkDlg(weld::Window *pParent, SwWrtShell &rSh, OUString const* pSelected) = 0;
430 virtual VclPtr<VclAbstractDialog> CreateSwContentControlDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
432 virtual VclPtr<AbstractSwContentControlListItemDlg>
433 CreateSwContentControlListItemDlg(weld::Window* pParent, SwContentControlListItem& rItem) = 0;
435 virtual std::shared_ptr<AbstractSwBreakDlg> CreateSwBreakDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
436 virtual std::shared_ptr<AbstractSwTranslateLangSelectDlg> CreateSwTranslateLangSelectDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
437 virtual VclPtr<VclAbstractDialog> CreateSwChangeDBDlg(SwView& rVw) = 0;
438 virtual VclPtr<SfxAbstractTabDialog> CreateSwCharDlg(weld::Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet,
439 SwCharDlgMode nDialogMode, const OUString* pFormatStr = nullptr) = 0;
440 virtual VclPtr<AbstractSwConvertTableDlg> CreateSwConvertTableDlg(SwView& rView, bool bToTable) = 0;
441 virtual VclPtr<VclAbstractDialog> CreateSwCaptionDialog(weld::Window *pParent, SwView &rV) = 0;
443 virtual VclPtr<AbstractSwInsertDBColAutoPilot> CreateSwInsertDBColAutoPilot(SwView& rView,
444 css::uno::Reference< css::sdbc::XDataSource> rxSource,
445 css::uno::Reference<css::sdbcx::XColumnsSupplier> xColSupp,
446 const SwDBData& rData) = 0;
447 virtual VclPtr<SfxAbstractTabDialog> CreateSwFootNoteOptionDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
449 virtual VclPtr<AbstractDropDownFieldDialog> CreateDropDownFieldDialog(weld::Widget* pParent, SwWrtShell &rSh,
450 SwField* pField, bool bPrevButton, bool bNextButton) = 0;
451 virtual VclPtr<VclAbstractDialog> CreateDropDownFormFieldDialog(weld::Widget* pParent, sw::mark::IFieldmark* pDropDownField) = 0;
453 virtual VclPtr<VclAbstractDialog> CreateDateFormFieldDialog(weld::Widget* pParent, sw::mark::IDateFieldmark* pDateField, SwDoc& rDoc) = 0;
455 virtual VclPtr<SfxAbstractTabDialog> CreateSwEnvDlg(weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, bool bInsert) = 0;
457 virtual VclPtr<AbstractSwLabDlg> CreateSwLabDlg(weld::Window* pParent, const SfxItemSet& rSet,
458 SwDBManager* pDBManager, bool bLabel) = 0;
460 virtual SwLabDlgMethod GetSwLabDlgStaticMethod () =0;
462 virtual VclPtr<SfxAbstractTabDialog> CreateSwParaDlg(weld::Window *pParent,
463 SwView& rVw,
464 const SfxItemSet& rCoreSet,
465 bool bDraw,
466 const OUString& sDefPage = {}) = 0;
468 virtual VclPtr<VclAbstractDialog> CreateSwAutoMarkDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
470 virtual VclPtr<AbstractSwSelGlossaryDlg> CreateSwSelGlossaryDlg(weld::Window *pParent, const OUString &rShortName) = 0;
472 virtual VclPtr<VclAbstractDialog> CreateSwSortingDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
473 virtual VclPtr<VclAbstractDialog> CreateSwTableHeightDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
474 virtual VclPtr<VclAbstractDialog> CreateSwColumnDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
475 virtual VclPtr<AbstractSplitTableDialog> CreateSplitTableDialog(weld::Window* pParent, SwWrtShell &rSh) = 0;
477 virtual VclPtr<AbstractSwAutoFormatDlg> CreateSwAutoFormatDlg(weld::Window* pParent, SwWrtShell* pShell,
478 bool bSetAutoFormat = true,
479 const SwTableAutoFormat* pSelFormat = nullptr ) = 0;
480 virtual VclPtr<SfxAbstractDialog> CreateSwBorderDlg(weld::Window* pParent, SfxItemSet& rSet, SwBorderModes nType) = 0;
481 virtual VclPtr<SfxAbstractDialog> CreateSwWrapDlg(weld::Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh) = 0;
483 virtual VclPtr<VclAbstractDialog> CreateSwTableWidthDlg(weld::Window *pParent, SwTableFUNC &rFnc) = 0;
484 virtual VclPtr<SfxAbstractTabDialog> CreateSwTableTabDlg(weld::Window* pParent,
485 const SfxItemSet* pItemSet, SwWrtShell* pSh) = 0;
487 virtual VclPtr<AbstractSwFieldDlg> CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, weld::Window *pParent) = 0;
488 virtual VclPtr<SfxAbstractDialog> CreateSwFieldEditDlg ( SwView& rVw ) = 0;
489 virtual VclPtr<AbstractSwRenameXNamedDlg> CreateSwRenameXNamedDlg(weld::Widget* pParent,
490 css::uno::Reference< css::container::XNamed > & xNamed,
491 css::uno::Reference< css::container::XNameAccess > & xNameAccess) = 0;
492 virtual VclPtr<AbstractSwModalRedlineAcceptDlg> CreateSwModalRedlineAcceptDlg(weld::Window *pParent) = 0;
493 virtual VclPtr<AbstractSwPageNumberDlg> CreateSwPageNumberDlg(weld::Window* pParent) = 0;
495 virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(weld::Window* pParent, bool& rWithPrev) = 0;
496 virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog(const OUString &rDialogType,
497 SfxViewFrame& rFrame, weld::Window *pParent,
498 const SfxItemSet& rCoreSet,
499 bool bNewFrame = true,
500 const OUString& sDefPage = {}) = 0;
501 /// @param nSlot
502 /// Identifies optional Slot by which the creation of the Template (Style) dialog is triggered.
503 /// Currently used, if nRegion == SfxStyleFamily::Page in order to activate certain dialog pane
504 virtual VclPtr<SfxAbstractApplyTabDialog> CreateTemplateDialog(weld::Window* pParent,
505 SfxStyleSheetBase& rBase,
506 SfxStyleFamily nRegion,
507 const OUString& sPage,
508 SwWrtShell* pActShell,
509 bool bNew) = 0;
510 virtual VclPtr<AbstractGlossaryDlg> CreateGlossaryDlg(SfxViewFrame& rViewFrame,
511 SwGlossaryHdl* pGlosHdl,
512 SwWrtShell *pWrtShell) = 0;
513 virtual VclPtr<AbstractFieldInputDlg> CreateFieldInputDlg(weld::Widget *pParent,
514 SwWrtShell &rSh, SwField* pField, bool bPrevButton, bool bNextButton) = 0;
515 virtual VclPtr<AbstractInsFootNoteDlg> CreateInsFootNoteDlg(weld::Window * pParent,
516 SwWrtShell &rSh, bool bEd = false) = 0;
517 virtual VclPtr<VclAbstractDialog> CreateTitlePageDlg(weld::Window* pParent) = 0;
518 virtual VclPtr<VclAbstractDialog> CreateVclSwViewDialog(SwView& rView) = 0;
519 virtual std::shared_ptr<AbstractInsTableDlg> CreateInsTableDlg(SwView& rView) = 0;
520 virtual VclPtr<AbstractJavaEditDialog> CreateJavaEditDialog(weld::Window* pParent,
521 SwWrtShell* pWrtSh) = 0;
522 virtual VclPtr<AbstractMailMergeDlg> CreateMailMergeDlg(
523 weld::Window* pParent, SwWrtShell& rSh,
524 const OUString& rSourceName,
525 const OUString& rTableName,
526 sal_Int32 nCommandType,
527 const css::uno::Reference< css::sdbc::XConnection>& xConnection ) = 0;
528 virtual VclPtr<AbstractMailMergeCreateFromDlg> CreateMailMergeCreateFromDlg(weld::Window* pParent) = 0;
529 virtual VclPtr<AbstractMailMergeFieldConnectionsDlg> CreateMailMergeFieldConnectionsDlg(weld::Window* pParent) = 0;
530 virtual VclPtr<VclAbstractDialog> CreateMultiTOXMarkDlg(weld::Window* pParent, SwTOXMgr &rTOXMgr) = 0;
531 virtual VclPtr<SfxAbstractTabDialog> CreateOutlineTabDialog(weld::Window* pParent,
532 const SfxItemSet* pSwItemSet,
533 SwWrtShell &) = 0;
534 virtual VclPtr<SfxAbstractTabDialog> CreateSvxNumBulletTabDialog(weld::Window* pParent,
535 const SfxItemSet* pSwItemSet,
536 SwWrtShell &) = 0;
537 virtual VclPtr<AbstractMultiTOXTabDialog> CreateMultiTOXTabDialog(
538 weld::Widget* pParent, const SfxItemSet& rSet,
539 SwWrtShell &rShell,
540 SwTOXBase* pCurTOX,
541 bool bGlobal) = 0;
542 virtual VclPtr<AbstractEditRegionDlg> CreateEditRegionDlg(weld::Window* pParent, SwWrtShell& rWrtSh) = 0;
543 virtual VclPtr<AbstractInsertSectionTabDialog> CreateInsertSectionTabDialog(weld::Window* pParent,
544 const SfxItemSet& rSet, SwWrtShell& rSh) = 0;
545 virtual VclPtr<AbstractMarkFloatDlg> CreateIndexMarkFloatDlg(
546 SfxBindings* pBindings,
547 SfxChildWindow* pChild,
548 weld::Window *pParent,
549 SfxChildWinInfo* pInfo) = 0;
550 virtual VclPtr<AbstractMarkFloatDlg> CreateAuthMarkFloatDlg(
551 SfxBindings* pBindings,
552 SfxChildWindow* pChild,
553 weld::Window *pParent,
554 SfxChildWinInfo* pInfo) = 0;
555 virtual VclPtr<VclAbstractDialog> CreateIndexMarkModalDlg(
556 weld::Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark) = 0;
558 virtual VclPtr<AbstractMailMergeWizard> CreateMailMergeWizard(SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem) = 0;
560 virtual GlossaryGetCurrGroup GetGlossaryCurrGroupFunc() = 0;
561 virtual GlossarySetActGroup SetGlossaryActGroupFunc() = 0;
563 // for tabpage
564 virtual CreateTabPage GetTabPageCreatorFunc( sal_uInt16 nId ) = 0;
566 virtual void ExecuteMMResultSaveDialog(weld::Window* pParent) = 0;
567 virtual void ExecuteMMResultPrintDialog(weld::Window* pParent) = 0;
568 virtual void ExecuteMMResultEmailDialog(weld::Window* pParent) = 0;
570 protected:
571 ~SwAbstractDialogFactory() {}
574 #endif
576 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */