tdf#130857 qt weld: Implement QtInstanceWidget::strip_mnemonic
[LibreOffice.git] / sw / inc / swabstdlg.hxx
blob229b2fdc042d7b19506c03e96d82d6706480c3b9
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 SwChildWinWrapper;
55 struct SfxChildWinInfo;
56 class SwTOXMark;
57 struct SwDocStat;
58 struct SwInsertTableOptions;
59 class SwInsTableDlg;
60 enum class SwBorderModes;
61 enum class SwCharDlgMode;
62 enum class SfxStyleFamily;
63 enum class SwLineBreakClear;
64 class SwContentControlListItem;
66 namespace com::sun::star{
67 namespace frame{
68 class XModel;
70 namespace sdbcx{
71 class XColumnsSupplier;
73 namespace sdbc{
74 class XDataSource;
75 class XConnection;
76 class XResultSet;
78 namespace container { class XNameAccess; }
79 namespace container { class XNamed; }
83 namespace sw::mark { class Fieldmark; class DateFieldmark; }
85 typedef void (*SwLabDlgMethod) (css::uno::Reference< css::frame::XModel> const & xModel, const SwLabItem& rItem);
87 typedef OUString (*GlossaryGetCurrGroup)();
88 typedef void (*GlossarySetActGroup)(const OUString& rNewGroup);
90 class AbstractGlossaryDlg : public VclAbstractDialog
92 protected:
93 virtual ~AbstractGlossaryDlg() override = default;
94 public:
95 virtual void Apply() = 0;
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 void Apply() = 0;
116 virtual OUString GetFontName() = 0;
117 virtual bool IsEndNote() = 0;
118 virtual OUString GetStr() = 0;
119 virtual void SetHelpId( const OUString& sHelpId ) = 0;
120 virtual void SetText( const OUString& rStr ) = 0;
123 class AbstractInsTableDlg
125 protected:
126 virtual ~AbstractInsTableDlg() = default;
127 public:
128 virtual void GetValues( OUString& rName, sal_uInt16& rRow, sal_uInt16& rCol,
129 SwInsertTableOptions& rInsTableFlags, OUString& rTableAutoFormatName,
130 std::unique_ptr<SwTableAutoFormat>& prTAFormat ) = 0;
131 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
134 class AbstractJavaEditDialog : public VclAbstractDialog
136 protected:
137 virtual ~AbstractJavaEditDialog() override = default;
138 public:
139 virtual OUString GetScriptText() const = 0;
140 virtual OUString GetScriptType() const = 0;
141 virtual bool IsUrl() const = 0;
142 virtual bool IsNew() const = 0;
143 virtual bool IsUpdate() const = 0;
146 class AbstractMailMergeDlg : public VclAbstractDialog
148 protected:
149 virtual ~AbstractMailMergeDlg() override = default;
150 public:
151 virtual DBManagerOptions GetMergeType() = 0;
152 virtual const OUString& GetSaveFilter() const = 0;
153 virtual css::uno::Sequence< css::uno::Any > GetSelection() const = 0;
154 virtual css::uno::Reference< css::sdbc::XResultSet> GetResultSet() const = 0;
155 virtual bool IsSaveSingleDoc() const = 0;
156 virtual bool IsGenerateFromDataBase() const = 0;
157 virtual bool IsFileEncryptedFromDataBase() const = 0;
158 virtual OUString GetColumnName() const = 0;
159 virtual OUString GetPasswordColumnName() const = 0;
160 virtual OUString GetTargetURL() const = 0;
163 class AbstractMailMergeCreateFromDlg : public VclAbstractDialog
165 protected:
166 virtual ~AbstractMailMergeCreateFromDlg() override = default;
167 public:
168 virtual bool IsThisDocument() const = 0;
171 class AbstractMailMergeFieldConnectionsDlg : public VclAbstractDialog
173 protected:
174 virtual ~AbstractMailMergeFieldConnectionsDlg() override = default;
175 public:
176 virtual bool IsUseExistingConnections() const = 0;
179 class AbstractMultiTOXTabDialog : public VclAbstractDialog
181 protected:
182 virtual ~AbstractMultiTOXTabDialog() override = default;
183 public:
184 virtual CurTOXType GetCurrentTOXType() const = 0;
185 virtual SwTOXDescription& GetTOXDescription(CurTOXType eTOXTypes) = 0;
186 //from SfxTabDialog
187 virtual const SfxItemSet* GetOutputItemSet() const = 0;
190 class AbstractEditRegionDlg : public VclAbstractDialog
192 protected:
193 virtual ~AbstractEditRegionDlg() override = default;
194 public:
195 virtual void SelectSection(const OUString& rSectionName) = 0;
198 class AbstractInsertSectionTabDialog : public VclAbstractDialog
200 protected:
201 virtual ~AbstractInsertSectionTabDialog() override = default;
202 public:
203 virtual void SetSectionData(SwSectionData const& rSect) = 0;
206 class AbstractSwWordCountFloatDlg : public VclAbstractDialog
208 protected:
209 virtual ~AbstractSwWordCountFloatDlg() override = default;
210 public:
211 virtual void UpdateCounts() = 0;
212 virtual void SetCounts(const SwDocStat &rCurrCnt, const SwDocStat &rDocStat) = 0;
213 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
216 class AbstractSwInsertAbstractDlg : public VclAbstractDialog
218 protected:
219 virtual ~AbstractSwInsertAbstractDlg() override = default;
220 public:
221 virtual sal_uInt8 GetLevel() const = 0;
222 virtual sal_uInt8 GetPara() const = 0;
225 class AbstractSwAsciiFilterDlg : public VclAbstractDialog
227 protected:
228 virtual ~AbstractSwAsciiFilterDlg() override = default;
229 public:
230 virtual void FillOptions( SwAsciiOptions& rOptions ) = 0;
234 /// Interface for the insert -> fields -> page number wizard dialog
235 class AbstractSwPageNumberDlg : public VclAbstractDialog
237 protected:
238 virtual ~AbstractSwPageNumberDlg() override = default;
239 public:
240 virtual int GetPageNumberPosition() const = 0;
241 virtual int GetPageNumberAlignment() const = 0;
242 virtual bool GetMirrorOnEvenPages() const = 0;
243 virtual bool GetIncludePageTotal() const = 0;
244 virtual bool GetFitIntoExistingMargins() const = 0;
245 virtual SvxNumType GetPageNumberType() const = 0;
246 virtual void SetPageNumberType(SvxNumType nSet) = 0;
250 * Interface for the insert -> more breaks -> manual break dialog. It's implemented by
251 * AbstractSwBreakDlg_Impl, but SwTextShell only knows about this interface and the
252 * SwAbstractDialogFactory::CreateSwBreakDlg() factory.
254 class AbstractSwBreakDlg
256 protected:
257 virtual ~AbstractSwBreakDlg() = default;
258 public:
259 virtual OUString GetTemplateName() = 0;
260 virtual sal_uInt16 GetKind() = 0;
261 virtual ::std::optional<sal_uInt16> GetPageNumber() = 0;
262 virtual std::optional<SwLineBreakClear> GetClear() = 0;
264 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
267 class AbstractSplitTableDialog : public VclAbstractDialog // add for
269 protected:
270 virtual ~AbstractSplitTableDialog() override = default;
271 public:
272 virtual SplitTable_HeadlineOption GetSplitMode() = 0;
275 class AbstractSwConvertTableDlg : public VclAbstractDialog
277 protected:
278 virtual ~AbstractSwConvertTableDlg() override = default;
279 public:
280 virtual void GetValues( sal_Unicode& rDelim,
281 SwInsertTableOptions& rInsTableFlags,
282 SwTableAutoFormat const*& prTAFormat ) = 0;
285 class AbstractSwInsertDBColAutoPilot : public VclAbstractDialog
287 protected:
288 virtual ~AbstractSwInsertDBColAutoPilot() override = default;
289 public:
290 virtual void DataToDoc( const css::uno::Sequence< css::uno::Any >& rSelection,
291 css::uno::Reference< css::sdbc::XDataSource> rxSource,
292 css::uno::Reference< css::sdbc::XConnection> xConnection,
293 css::uno::Reference< css::sdbc::XResultSet > xResultSet) = 0;
296 class AbstractDropDownFieldDialog : public VclAbstractDialog
298 protected:
299 virtual ~AbstractDropDownFieldDialog() override = default;
300 public:
301 virtual bool PrevButtonPressed() const = 0;
302 virtual bool NextButtonPressed() const = 0;
305 class AbstractSwLabDlg : public SfxAbstractTabDialog
307 protected:
308 virtual ~AbstractSwLabDlg() override = default;
309 public:
310 virtual const OUString& GetBusinessCardStr() const = 0;
311 virtual Printer *GetPrt() =0;
314 class AbstractSwSelGlossaryDlg : public VclAbstractDialog
316 protected:
317 virtual ~AbstractSwSelGlossaryDlg() override = default;
318 public:
319 virtual void InsertGlos(const OUString &rRegion, const OUString &rGlosName) = 0; // inline
320 virtual sal_Int32 GetSelectedIdx() const = 0; // inline
321 virtual void SelectEntryPos(sal_Int32 nIdx) = 0; // inline
324 class AbstractSwAutoFormatDlg : public VclAbstractDialog
326 protected:
327 virtual ~AbstractSwAutoFormatDlg() override = default;
328 public:
329 virtual std::unique_ptr<SwTableAutoFormat> FillAutoFormatOfIndex() const = 0;
330 virtual void Apply() = 0;
333 class AbstractSwFieldDlg : public SfxAbstractTabDialog
335 protected:
336 virtual ~AbstractSwFieldDlg() override = default;
337 public:
338 virtual void Initialize(SfxChildWinInfo *pInfo) = 0;
339 virtual void ReInitDlg() = 0;
340 virtual void ActivateDatabasePage() = 0;
341 virtual void ShowReferencePage() = 0;
342 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
345 class AbstractNumBulletDialog : public SfxAbstractTabDialog
347 protected:
348 virtual ~AbstractNumBulletDialog() override = default;
349 public:
350 virtual const SfxItemSet* GetInputItemSet() const = 0;
354 * Interface for e.g. the insert -> bookmark -> rename dialog. It's implemented by
355 * AbstractSwRenameXNamedDlg_Impl, but SwInsertBookmarkDlg only knows about this interface and the
356 * SwAbstractDialogFactory::CreateSwRenameXNamedDlg() factory.
358 class AbstractSwRenameXNamedDlg : public VclAbstractDialog
360 protected:
361 virtual ~AbstractSwRenameXNamedDlg() override = default;
362 public:
363 virtual void SetForbiddenChars( const OUString& rSet ) = 0;
364 virtual void SetAlternativeAccess(
365 css::uno::Reference< css::container::XNameAccess > & xSecond,
366 css::uno::Reference< css::container::XNameAccess > & xThird ) = 0;
370 * Interface for e.g. the form -> content control -> properties -> add dialog. It's implemented by
371 * AbstractSwContentControlListItemDlg_Impl, but SwContentControlDlg only knows about this interface
372 * and the SwAbstractDialogFactory::CreateSwContentControlListItemDlg() factory.
374 class AbstractSwContentControlListItemDlg : public VclAbstractDialog
376 protected:
377 virtual ~AbstractSwContentControlListItemDlg() override = default;
378 public:
381 class AbstractSwModalRedlineAcceptDlg : public VclAbstractDialog
383 protected:
384 virtual ~AbstractSwModalRedlineAcceptDlg() override = default;
387 class AbstractMarkFloatDlg : public VclAbstractDialog
389 protected:
390 virtual ~AbstractMarkFloatDlg() override = default;
391 public:
392 virtual void ReInitDlg(SwWrtShell& rWrtShell) = 0;
393 virtual std::shared_ptr<SfxDialogController> GetController() = 0;
396 #define RET_LOAD_DOC 100
397 #define RET_TARGET_CREATED 103
398 #define RET_REMOVE_TARGET 104
400 class SwMailMergeConfigItem;
402 class AbstractMailMergeWizard : public VclAbstractDialog
404 protected:
405 virtual ~AbstractMailMergeWizard() override = default;
406 public:
407 virtual OUString GetReloadDocument() const = 0;
408 virtual void ShowPage( sal_uInt16 nLevel ) = 0;
409 virtual sal_uInt16 GetRestartPage() const = 0;
412 class SwLanguageListItem;
414 class AbstractSwTranslateLangSelectDlg
416 protected:
417 virtual ~AbstractSwTranslateLangSelectDlg() = default;
418 public:
419 virtual std::shared_ptr<weld::DialogController> getDialogController() = 0;
420 virtual std::optional<SwLanguageListItem> GetSelectedLanguage() = 0;
423 class AbstractSwSortDlg : public VclAbstractDialog
425 protected:
426 virtual ~AbstractSwSortDlg() override = default;
427 public:
428 virtual void Apply() = 0;
431 class AbstractSwTableWidthDlg : public VclAbstractDialog
433 protected:
434 virtual ~AbstractSwTableWidthDlg() override = default;
435 public:
436 virtual void Apply() = 0;
439 class AbstractSwTableHeightDlg : public VclAbstractDialog
441 protected:
442 virtual ~AbstractSwTableHeightDlg() override = default;
443 public:
444 virtual void Apply() = 0;
447 class AbstractDropDownFormFieldDialog : public VclAbstractDialog
449 protected:
450 virtual ~AbstractDropDownFormFieldDialog() override = default;
451 public:
452 virtual void Apply() = 0;
455 class AbstractChangeDbDialog : public VclAbstractDialog
457 protected:
458 virtual ~AbstractChangeDbDialog() override = default;
459 public:
460 virtual void UpdateFields() = 0;
463 class AbstractDateFormFieldDialog : public VclAbstractDialog
465 protected:
466 virtual ~AbstractDateFormFieldDialog() override = default;
467 public:
468 virtual void Apply() = 0;
471 class SwAbstractDialogFactory
473 public:
474 static SwAbstractDialogFactory* Create();
476 virtual VclPtr<SfxAbstractDialog> CreateNumFormatDialog(weld::Widget* pParent, const SfxItemSet& rAttr) = 0;
477 virtual VclPtr<SfxAbstractDialog> CreateSwDropCapsDialog(weld::Window* pParent, const SfxItemSet& rSet) = 0;
478 virtual VclPtr<SfxAbstractDialog> CreateSwBackgroundDialog(weld::Window* pParent, const SfxItemSet& rSet) = 0;
480 virtual VclPtr<AbstractSwWordCountFloatDlg> CreateSwWordCountDialog(SfxBindings* pBindings,
481 SfxChildWindow* pChild, weld::Window *pParent, SfxChildWinInfo* pInfo) = 0;
483 virtual VclPtr<AbstractSwInsertAbstractDlg> CreateSwInsertAbstractDlg(weld::Window* pParent) = 0;
484 virtual VclPtr<SfxAbstractDialog> CreateSwAddressAbstractDlg(weld::Window* pParent, const SfxItemSet& rSet) = 0;
485 virtual VclPtr<AbstractSwAsciiFilterDlg> CreateSwAsciiFilterDlg(weld::Window* pParent, SwDocShell& rDocSh,
486 SvStream* pStream) = 0;
487 virtual VclPtr<VclAbstractDialog> CreateSwInsertBookmarkDlg(weld::Window *pParent, SwWrtShell &rSh, OUString const* pSelected) = 0;
488 virtual VclPtr<VclAbstractDialog> CreateSwContentControlDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
490 virtual VclPtr<AbstractSwContentControlListItemDlg>
491 CreateSwContentControlListItemDlg(weld::Window* pParent, SwContentControlListItem& rItem) = 0;
493 virtual std::shared_ptr<AbstractSwBreakDlg> CreateSwBreakDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
494 virtual std::shared_ptr<AbstractSwTranslateLangSelectDlg> CreateSwTranslateLangSelectDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
495 virtual VclPtr<AbstractChangeDbDialog> CreateSwChangeDBDlg(SwView& rVw) = 0;
496 virtual VclPtr<SfxAbstractTabDialog> CreateSwCharDlg(weld::Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet,
497 SwCharDlgMode nDialogMode, const OUString* pFormatStr = nullptr) = 0;
498 virtual VclPtr<AbstractSwConvertTableDlg> CreateSwConvertTableDlg(SwView& rView, bool bToTable) = 0;
499 virtual VclPtr<VclAbstractDialog> CreateSwCaptionDialog(weld::Window *pParent, SwView &rV) = 0;
501 virtual VclPtr<AbstractSwInsertDBColAutoPilot> CreateSwInsertDBColAutoPilot(SwView& rView,
502 css::uno::Reference< css::sdbc::XDataSource> rxSource,
503 css::uno::Reference<css::sdbcx::XColumnsSupplier> xColSupp,
504 const SwDBData& rData) = 0;
505 virtual VclPtr<SfxAbstractTabDialog> CreateSwFootNoteOptionDlg(weld::Window *pParent, SwWrtShell &rSh) = 0;
507 virtual VclPtr<AbstractDropDownFieldDialog> CreateDropDownFieldDialog(weld::Widget* pParent, SwWrtShell &rSh,
508 SwField* pField, bool bPrevButton, bool bNextButton) = 0;
509 virtual VclPtr<AbstractDropDownFormFieldDialog> CreateDropDownFormFieldDialog(weld::Widget* pParent, sw::mark::Fieldmark* pDropDownField) = 0;
511 virtual VclPtr<AbstractDateFormFieldDialog> CreateDateFormFieldDialog(weld::Widget* pParent, sw::mark::DateFieldmark* pDateField, SwDoc& rDoc) = 0;
513 virtual VclPtr<SfxAbstractTabDialog> CreateSwEnvDlg(weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, bool bInsert) = 0;
515 virtual VclPtr<AbstractSwLabDlg> CreateSwLabDlg(weld::Window* pParent, const SfxItemSet& rSet,
516 SwDBManager* pDBManager, bool bLabel) = 0;
518 virtual SwLabDlgMethod GetSwLabDlgStaticMethod () =0;
520 virtual VclPtr<SfxAbstractTabDialog> CreateSwParaDlg(weld::Window *pParent,
521 SwView& rVw,
522 const SfxItemSet& rCoreSet,
523 bool bDraw,
524 const OUString& sDefPage = {}) = 0;
526 virtual VclPtr<VclAbstractDialog> CreateSwAutoMarkDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
528 virtual VclPtr<AbstractSwSelGlossaryDlg> CreateSwSelGlossaryDlg(weld::Window *pParent, const OUString &rShortName) = 0;
530 virtual VclPtr<AbstractSwSortDlg> CreateSwSortingDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
531 virtual VclPtr<AbstractSwTableHeightDlg> CreateSwTableHeightDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
532 virtual VclPtr<VclAbstractDialog> CreateSwColumnDialog(weld::Window *pParent, SwWrtShell &rSh) = 0;
533 virtual VclPtr<AbstractSplitTableDialog> CreateSplitTableDialog(weld::Window* pParent, SwWrtShell &rSh) = 0;
535 virtual VclPtr<AbstractSwAutoFormatDlg> CreateSwAutoFormatDlg(weld::Window* pParent, SwWrtShell* pShell,
536 bool bSetAutoFormat = true,
537 const SwTableAutoFormat* pSelFormat = nullptr ) = 0;
538 virtual VclPtr<SfxAbstractDialog> CreateSwBorderDlg(weld::Window* pParent, SfxItemSet& rSet, SwBorderModes nType) = 0;
539 virtual VclPtr<SfxAbstractDialog> CreateSwWrapDlg(weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pSh) = 0;
541 virtual VclPtr<AbstractSwTableWidthDlg> CreateSwTableWidthDlg(weld::Window *pParent, SwWrtShell *pShell) = 0;
542 virtual VclPtr<SfxAbstractTabDialog> CreateSwTableTabDlg(weld::Window* pParent,
543 const SfxItemSet* pItemSet, SwWrtShell* pSh) = 0;
545 virtual VclPtr<AbstractSwFieldDlg> CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, weld::Window *pParent) = 0;
546 virtual VclPtr<SfxAbstractDialog> CreateSwFieldEditDlg ( SwView& rVw ) = 0;
547 virtual VclPtr<AbstractSwRenameXNamedDlg> CreateSwRenameXNamedDlg(weld::Widget* pParent,
548 css::uno::Reference< css::container::XNamed > & xNamed,
549 css::uno::Reference< css::container::XNameAccess > & xNameAccess) = 0;
550 virtual VclPtr<AbstractSwModalRedlineAcceptDlg> CreateSwModalRedlineAcceptDlg(weld::Window *pParent) = 0;
551 virtual VclPtr<AbstractSwPageNumberDlg> CreateSwPageNumberDlg(weld::Window* pParent) = 0;
553 virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(weld::Window* pParent, bool& rWithPrev) = 0;
554 virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog(const OUString &rDialogType,
555 SfxViewFrame& rFrame, weld::Window *pParent,
556 const SfxItemSet& rCoreSet,
557 bool bNewFrame = true,
558 const OUString& sDefPage = {}) = 0;
559 /// @param nSlot
560 /// Identifies optional Slot by which the creation of the Template (Style) dialog is triggered.
561 /// Currently used, if nRegion == SfxStyleFamily::Page in order to activate certain dialog pane
562 virtual VclPtr<SfxAbstractApplyTabDialog> CreateTemplateDialog(weld::Window* pParent,
563 SfxStyleSheetBase& rBase,
564 SfxStyleFamily nRegion,
565 const OUString& sPage,
566 SwWrtShell* pActShell,
567 bool bNew) = 0;
568 virtual VclPtr<AbstractGlossaryDlg> CreateGlossaryDlg(SfxViewFrame& rViewFrame,
569 SwGlossaryHdl* pGlosHdl,
570 SwWrtShell *pWrtShell) = 0;
571 virtual VclPtr<AbstractFieldInputDlg> CreateFieldInputDlg(weld::Widget *pParent,
572 SwWrtShell &rSh, SwField* pField, bool bPrevButton, bool bNextButton) = 0;
573 virtual VclPtr<AbstractInsFootNoteDlg> CreateInsFootNoteDlg(weld::Window * pParent,
574 SwWrtShell &rSh, bool bEd = false) = 0;
575 virtual VclPtr<VclAbstractDialog> CreateTitlePageDlg(weld::Window* pParent) = 0;
576 virtual VclPtr<VclAbstractDialog> CreateVclSwViewDialog(SwView& rView) = 0;
577 virtual std::shared_ptr<AbstractInsTableDlg> CreateInsTableDlg(SwView& rView) = 0;
578 virtual VclPtr<AbstractJavaEditDialog> CreateJavaEditDialog(weld::Window* pParent,
579 SwWrtShell* pWrtSh) = 0;
580 virtual VclPtr<AbstractMailMergeDlg> CreateMailMergeDlg(
581 weld::Window* pParent, SwWrtShell& rSh,
582 const OUString& rSourceName,
583 const OUString& rTableName,
584 sal_Int32 nCommandType,
585 const css::uno::Reference< css::sdbc::XConnection>& xConnection ) = 0;
586 virtual VclPtr<AbstractMailMergeCreateFromDlg> CreateMailMergeCreateFromDlg(weld::Window* pParent) = 0;
587 virtual VclPtr<AbstractMailMergeFieldConnectionsDlg> CreateMailMergeFieldConnectionsDlg(weld::Window* pParent) = 0;
588 virtual VclPtr<VclAbstractDialog> CreateMultiTOXMarkDlg(weld::Window* pParent, SwTOXMgr &rTOXMgr) = 0;
589 virtual VclPtr<SfxAbstractTabDialog> CreateOutlineTabDialog(weld::Window* pParent,
590 const SfxItemSet* pSwItemSet,
591 SwWrtShell &) = 0;
592 virtual VclPtr<AbstractNumBulletDialog> CreateSvxNumBulletTabDialog(weld::Window* pParent,
593 const SfxItemSet& rSwItemSet,
594 SwWrtShell &) = 0;
595 virtual VclPtr<AbstractMultiTOXTabDialog> CreateMultiTOXTabDialog(
596 weld::Widget* pParent, const SfxItemSet& rSet,
597 SwWrtShell &rShell,
598 SwTOXBase* pCurTOX,
599 bool bGlobal) = 0;
600 virtual VclPtr<AbstractEditRegionDlg> CreateEditRegionDlg(weld::Window* pParent, SwWrtShell& rWrtSh) = 0;
601 virtual VclPtr<AbstractInsertSectionTabDialog> CreateInsertSectionTabDialog(weld::Window* pParent,
602 const SfxItemSet& rSet, SwWrtShell& rSh) = 0;
603 virtual VclPtr<AbstractMarkFloatDlg> CreateIndexMarkFloatDlg(
604 SfxBindings* pBindings,
605 SfxChildWindow* pChild,
606 weld::Window *pParent,
607 SfxChildWinInfo* pInfo) = 0;
608 virtual VclPtr<AbstractMarkFloatDlg> CreateAuthMarkFloatDlg(
609 SfxBindings* pBindings,
610 SfxChildWindow* pChild,
611 weld::Window *pParent,
612 SfxChildWinInfo* pInfo) = 0;
613 virtual VclPtr<VclAbstractDialog> CreateIndexMarkModalDlg(
614 weld::Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark) = 0;
616 virtual VclPtr<AbstractMailMergeWizard> CreateMailMergeWizard(SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem) = 0;
618 virtual GlossaryGetCurrGroup GetGlossaryCurrGroupFunc() = 0;
619 virtual GlossarySetActGroup SetGlossaryActGroupFunc() = 0;
621 // for tabpage
622 virtual CreateTabPage GetTabPageCreatorFunc( sal_uInt16 nId ) = 0;
624 virtual void ExecuteMMResultSaveDialog(weld::Window* pParent) = 0;
625 virtual void ExecuteMMResultPrintDialog(weld::Window* pParent) = 0;
626 virtual void ExecuteMMResultEmailDialog(weld::Window* pParent) = 0;
628 protected:
629 ~SwAbstractDialogFactory() {}
632 #endif
634 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */