1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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_CUI_SOURCE_FACTORY_DLGFACT_HXX
20 #define INCLUDED_CUI_SOURCE_FACTORY_DLGFACT_HXX
22 #include <svx/svxdlg.hxx>
23 #include <svx/zoom_def.hxx>
24 #include <com/sun/star/container/XNameReplace.hpp>
26 #include <tools/link.hxx>
27 #include <com/sun/star/frame/XFrame.hpp>
29 #include <cfgutil.hxx>
30 #include <cui/cuicharmap.hxx>
31 #include <cuifmsearch.hxx>
32 #include <cuigaldlg.hxx>
33 #include <cuigrfflt.hxx>
34 #include <cuihyperdlg.hxx>
35 #include <cuiimapwnd.hxx>
36 #include <cuisrchdlg.hxx>
37 #include <cuitabarea.hxx>
38 #include <cuitbxform.hxx>
39 #include <dlgname.hxx>
40 #include <DiagramDialog.hxx>
41 #include <dstribut.hxx>
42 #include <hangulhanjadlg.hxx>
46 #include <linkdlg.hxx>
47 #include <multipat.hxx>
48 #include <optdict.hxx>
49 #include <passwdomdlg.hxx>
50 #include <pastedlg.hxx>
51 #include <postdlg.hxx>
52 #include <QrCodeGenDialog.hxx>
53 #include <screenshotannotationdlg.hxx>
54 #include <showcols.hxx>
55 #include <SignatureLineDialog.hxx>
56 #include <SignSignatureLineDialog.hxx>
57 #include <SpellDialog.hxx>
58 #include <srchxtra.hxx>
59 #include <thesdlg.hxx>
60 #include <tipofthedaydlg.hxx>
61 #include <transfrm.hxx>
64 class SfxSingleTabDialogController
;
66 class FmShowColsDialog
;
68 class FmInputRecordNoDialog
;
69 class SvxJSearchOptionsDialog
;
70 class SvxNewDictionaryDialog
;
74 class SvxObjectNameDialog
;
75 class SvxObjectTitleDescDialog
;
77 class SvxMultiPathDialog
;
81 class GraphicFilterDialog
;
82 class SvxAreaTabDialog
;
83 class InsertObjectDialog_Impl
;
84 class SvPasteObjectDialog
;
86 class SvxTransformTabDialog
;
87 class SvxCaptionTabDialog
;
88 class SvxThesaurusDialog
;
89 class SvxHyphenWordDialog
;
92 class HangulHanjaConversionDialog
;
96 #define DECL_ABSTDLG_BASE(Class,DialogClass) \
97 ScopedVclPtr<DialogClass> pDlg; \
99 explicit Class( DialogClass* p) \
102 virtual short Execute() override; \
103 virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) override;
105 #define IMPL_ABSTDLG_BASE(Class) \
106 short Class::Execute() \
108 return pDlg->Execute(); \
110 bool Class::StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) \
112 return pDlg->StartExecuteAsync(rCtx); \
115 class CuiAbstractController_Impl
: public VclAbstractDialog
117 std::unique_ptr
<weld::DialogController
> m_xDlg
;
119 explicit CuiAbstractController_Impl(std::unique_ptr
<weld::DialogController
> p
)
120 : m_xDlg(std::move(p
))
123 virtual short Execute() override
;
126 class CuiAbstractSingleTabController_Impl
: public SfxAbstractDialog
128 std::unique_ptr
<SfxSingleTabDialogController
> m_xDlg
;
130 explicit CuiAbstractSingleTabController_Impl(std::unique_ptr
<SfxSingleTabDialogController
> p
)
131 : m_xDlg(std::move(p
))
134 virtual short Execute() override
;
135 virtual const SfxItemSet
* GetOutputItemSet() const override
;
138 virtual void SetText( const OUString
& rStr
) override
;
141 class CuiAbstractTabController_Impl
: public SfxAbstractTabDialog
143 std::shared_ptr
<SfxTabDialogController
> m_xDlg
;
145 explicit CuiAbstractTabController_Impl(std::unique_ptr
<SfxTabDialogController
> p
)
146 : m_xDlg(std::move(p
))
149 virtual short Execute() override
;
150 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
151 virtual void SetCurPageId( const OString
&rName
) override
;
152 virtual const SfxItemSet
* GetOutputItemSet() const override
;
153 virtual const sal_uInt16
* GetInputRanges( const SfxItemPool
& pItem
) override
;
154 virtual void SetInputSet( const SfxItemSet
* pInSet
) override
;
155 virtual void SetText( const OUString
& rStr
) override
;
158 virtual std::vector
<OString
> getAllPageUIXMLDescriptions() const override
;
159 virtual bool selectPageByUIXMLDescription(const OString
& rUIXMLDescription
) override
;
160 virtual BitmapEx
createScreenshot() const override
;
161 virtual OString
GetScreenshotId() const override
;
164 class SvxDistributeDialog
;
165 class AbstractSvxDistributeDialog_Impl
: public AbstractSvxDistributeDialog
167 std::unique_ptr
<SvxDistributeDialog
> m_xDlg
;
169 explicit AbstractSvxDistributeDialog_Impl(std::unique_ptr
<SvxDistributeDialog
> p
)
170 : m_xDlg(std::move(p
))
173 virtual short Execute() override
;
175 virtual SvxDistributeHorizontal
GetDistributeHor() const override
;
176 virtual SvxDistributeVertical
GetDistributeVer() const override
;
179 class AbstractHangulHanjaConversionDialog_Impl
: public AbstractHangulHanjaConversionDialog
182 std::unique_ptr
<HangulHanjaConversionDialog
> m_xDlg
;
184 explicit AbstractHangulHanjaConversionDialog_Impl(std::unique_ptr
<HangulHanjaConversionDialog
> p
)
185 : m_xDlg(std::move(p
))
188 virtual short Execute() override
;
189 virtual void EndDialog(sal_Int32 nResult
) override
;
190 virtual void EnableRubySupport( bool _bVal
) override
;
191 virtual void SetByCharacter( bool _bByCharacter
) override
;
192 virtual void SetConversionDirectionState( bool _bTryBothDirections
, editeng::HangulHanjaConversion::ConversionDirection _ePrimaryConversionDirection
) override
;
193 virtual void SetConversionFormat( editeng::HangulHanjaConversion::ConversionFormat _eType
) override
;
194 virtual void SetOptionsChangedHdl( const Link
<LinkParamNone
*,void>& _rHdl
) override
;
195 virtual void SetIgnoreHdl( const Link
<weld::Button
&,void>& _rHdl
) override
;
196 virtual void SetIgnoreAllHdl( const Link
<weld::Button
&,void>& _rHdl
) override
;
197 virtual void SetChangeHdl( const Link
<weld::Button
&,void>& _rHdl
) override
;
198 virtual void SetChangeAllHdl( const Link
<weld::Button
&,void>& rHdl
) override
;
199 virtual void SetClickByCharacterHdl( const Link
<weld::ToggleButton
&,void>& rHdl
) override
;
200 virtual void SetConversionFormatChangedHdl( const Link
<weld::Button
&,void>& _rHdl
) override
;
201 virtual void SetFindHdl( const Link
<weld::Button
&,void>& _rHdl
) override
;
202 virtual bool GetUseBothDirections( ) const override
;
203 virtual editeng::HangulHanjaConversion::ConversionDirection
204 GetDirection( editeng::HangulHanjaConversion::ConversionDirection _eDefaultDirection
) const override
;
205 virtual void SetCurrentString(
206 const OUString
& _rNewString
,
207 const css::uno::Sequence
< OUString
>& _rSuggestions
,
208 bool _bOriginatesFromDocument
= true
210 virtual OUString
GetCurrentString( ) const override
;
211 virtual editeng::HangulHanjaConversion::ConversionFormat
212 GetConversionFormat( ) const override
;
213 virtual void FocusSuggestion( ) override
;
214 virtual OUString
GetCurrentSuggestion( ) const override
;
217 class AbstractThesaurusDialog_Impl
: public AbstractThesaurusDialog
219 std::shared_ptr
<SvxThesaurusDialog
> m_xDlg
;
221 explicit AbstractThesaurusDialog_Impl(std::unique_ptr
<SvxThesaurusDialog
> p
)
222 : m_xDlg(std::move(p
))
225 virtual short Execute() override
;
226 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
227 virtual OUString
GetWord() override
;
230 class AbstractHyphenWordDialog_Impl
: public AbstractHyphenWordDialog
232 std::unique_ptr
<SvxHyphenWordDialog
> m_xDlg
;
234 explicit AbstractHyphenWordDialog_Impl(std::unique_ptr
<SvxHyphenWordDialog
> p
)
235 : m_xDlg(std::move(p
))
238 virtual short Execute() override
;
241 class FmShowColsDialog
;
242 class AbstractFmShowColsDialog_Impl
: public AbstractFmShowColsDialog
244 std::unique_ptr
<FmShowColsDialog
> m_xDlg
;
246 explicit AbstractFmShowColsDialog_Impl(std::unique_ptr
<FmShowColsDialog
> p
)
247 : m_xDlg(std::move(p
))
250 virtual short Execute() override
;
251 virtual void SetColumns(const css::uno::Reference
< css::container::XIndexContainer
>& xCols
) override
;
255 class AbstractSvxZoomDialog_Impl
: public AbstractSvxZoomDialog
257 std::unique_ptr
<SvxZoomDialog
> m_xDlg
;
259 explicit AbstractSvxZoomDialog_Impl(std::unique_ptr
<SvxZoomDialog
> p
)
260 : m_xDlg(std::move(p
))
263 virtual short Execute() override
;
264 virtual void SetLimits( sal_uInt16 nMin
, sal_uInt16 nMax
) override
;
265 virtual void HideButton( ZoomButtonId nBtnId
) override
;
266 virtual const SfxItemSet
* GetOutputItemSet() const override
;
269 namespace svx
{ class SpellDialog
;}
270 class AbstractSpellDialog_Impl
: public AbstractSpellDialog
272 std::shared_ptr
<svx::SpellDialog
> m_xDlg
;
274 explicit AbstractSpellDialog_Impl(std::unique_ptr
<svx::SpellDialog
> p
)
275 : m_xDlg(std::move(p
))
278 virtual short Execute() override
;
279 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
280 virtual void InvalidateDialog() override
;
281 virtual std::shared_ptr
<SfxDialogController
> GetController() override
;
282 virtual SfxBindings
& GetBindings() override
;
286 class AbstractTitleDialog_Impl
: public AbstractTitleDialog
289 std::unique_ptr
<TitleDialog
> m_xDlg
;
291 explicit AbstractTitleDialog_Impl(std::unique_ptr
<TitleDialog
> p
)
292 : m_xDlg(std::move(p
))
295 virtual short Execute() override
;
296 virtual OUString
GetTitle() const override
;
300 class SvxScriptSelectorDialog
;
301 class AbstractScriptSelectorDialog_Impl
: public AbstractScriptSelectorDialog
303 std::unique_ptr
<SvxScriptSelectorDialog
> m_xDlg
;
305 explicit AbstractScriptSelectorDialog_Impl(std::unique_ptr
<SvxScriptSelectorDialog
> p
)
306 : m_xDlg(std::move(p
))
309 virtual short Execute() override
;
310 virtual OUString
GetScriptURL() const override
;
311 virtual void SetRunLabel() override
;
314 class GalleryIdDialog
;
315 class AbstractGalleryIdDialog_Impl
: public AbstractGalleryIdDialog
318 std::unique_ptr
<GalleryIdDialog
> m_xDlg
;
320 explicit AbstractGalleryIdDialog_Impl(std::unique_ptr
<GalleryIdDialog
> p
)
321 : m_xDlg(std::move(p
))
324 virtual short Execute() override
;
325 virtual sal_uInt32
GetId() const override
;
329 class AbstractURLDlg_Impl
:public AbstractURLDlg
332 std::unique_ptr
<URLDlg
> m_xDlg
;
334 explicit AbstractURLDlg_Impl(std::unique_ptr
<URLDlg
> p
)
335 : m_xDlg(std::move(p
))
338 virtual short Execute() override
;
339 virtual OUString
GetURL() const override
;
340 virtual OUString
GetAltText() const override
;
341 virtual OUString
GetDesc() const override
;
342 virtual OUString
GetTarget() const override
;
343 virtual OUString
GetName() const override
;
346 class SvxSearchSimilarityDialog
;
347 class AbstractSvxSearchSimilarityDialog_Impl
:public AbstractSvxSearchSimilarityDialog
349 std::unique_ptr
<SvxSearchSimilarityDialog
> m_xDlg
;
351 explicit AbstractSvxSearchSimilarityDialog_Impl(std::unique_ptr
<SvxSearchSimilarityDialog
> p
)
352 : m_xDlg(std::move(p
))
355 virtual short Execute() override
;
356 virtual sal_uInt16
GetOther() override
;
357 virtual sal_uInt16
GetShorter() override
;
358 virtual sal_uInt16
GetLonger() override
;
359 virtual bool IsRelaxed() override
;
362 class SvxJSearchOptionsDialog
;
363 class AbstractSvxJSearchOptionsDialog_Impl
: public AbstractSvxJSearchOptionsDialog
365 std::unique_ptr
<SvxJSearchOptionsDialog
> m_xDlg
;
367 explicit AbstractSvxJSearchOptionsDialog_Impl(std::unique_ptr
<SvxJSearchOptionsDialog
> p
)
368 : m_xDlg(std::move(p
))
371 virtual short Execute() override
;
372 virtual TransliterationFlags
GetTransliterationFlags() const override
;
375 class AbstractSvxTransformTabDialog_Impl
: public AbstractSvxTransformTabDialog
377 std::shared_ptr
<SvxTransformTabDialog
> m_xDlg
;
379 explicit AbstractSvxTransformTabDialog_Impl(SvxTransformTabDialog
* p
)
383 virtual short Execute() override
;
384 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
385 virtual void SetValidateFramePosLink( const Link
<SvxSwFrameValidation
&,void>& rLink
) override
;
386 virtual void SetCurPageId( const OString
& rName
) override
;
387 virtual const SfxItemSet
* GetOutputItemSet() const override
;
388 virtual const sal_uInt16
* GetInputRanges( const SfxItemPool
& pItem
) override
;
389 virtual void SetInputSet( const SfxItemSet
* pInSet
) override
;
390 virtual void SetText( const OUString
& rStr
) override
;
393 class AbstractSvxCaptionDialog_Impl
: public AbstractSvxCaptionDialog
395 std::shared_ptr
<SvxCaptionTabDialog
> m_xDlg
;
397 explicit AbstractSvxCaptionDialog_Impl(std::unique_ptr
<SvxCaptionTabDialog
> p
)
398 : m_xDlg(std::move(p
))
401 virtual short Execute() override
;
402 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
403 virtual void SetValidateFramePosLink( const Link
<SvxSwFrameValidation
&,void>& rLink
) override
;
404 virtual void SetCurPageId( const OString
& rName
) override
;
405 virtual const SfxItemSet
* GetOutputItemSet() const override
;
406 virtual const sal_uInt16
* GetInputRanges( const SfxItemPool
& pItem
) override
;
407 virtual void SetInputSet( const SfxItemSet
* pInSet
) override
;
408 virtual void SetText( const OUString
& rStr
) override
;
411 class FmInputRecordNoDialog
;
412 class AbstractFmInputRecordNoDialog_Impl
:public AbstractFmInputRecordNoDialog
414 std::unique_ptr
<FmInputRecordNoDialog
> m_xDlg
;
416 explicit AbstractFmInputRecordNoDialog_Impl(std::unique_ptr
<FmInputRecordNoDialog
> p
)
417 : m_xDlg(std::move(p
))
420 virtual short Execute() override
;
421 virtual void SetValue(long nNew
) override
;
422 virtual long GetValue() const override
;
425 class SvxNewDictionaryDialog
;
426 class AbstractSvxNewDictionaryDialog_Impl
:public AbstractSvxNewDictionaryDialog
428 std::unique_ptr
<SvxNewDictionaryDialog
> m_xDlg
;
430 explicit AbstractSvxNewDictionaryDialog_Impl(std::unique_ptr
<SvxNewDictionaryDialog
> p
)
431 : m_xDlg(std::move(p
))
434 virtual short Execute() override
;
435 virtual css::uno::Reference
< css::linguistic2::XDictionary
> GetNewDictionary() override
;
439 class AbstractSvxNameDialog_Impl
:public AbstractSvxNameDialog
442 explicit AbstractSvxNameDialog_Impl(std::unique_ptr
<SvxNameDialog
> p
)
443 : m_xDlg(std::move(p
))
446 virtual short Execute() override
;
447 virtual void GetName( OUString
& rName
) override
;
448 virtual void SetCheckNameHdl( const Link
<AbstractSvxNameDialog
&,bool>& rLink
, bool bCheckImmediately
= false ) override
;
449 virtual void SetEditHelpId(const OString
&) override
;
451 virtual void SetHelpId( const OString
& ) override
;
452 virtual void SetText( const OUString
& rStr
) override
;
454 std::unique_ptr
<SvxNameDialog
> m_xDlg
;
455 Link
<AbstractSvxNameDialog
&,bool> aCheckNameHdl
;
456 DECL_LINK(CheckNameHdl
, SvxNameDialog
&, bool);
459 class SvxObjectNameDialog
;
460 class SvxObjectTitleDescDialog
;
462 class AbstractSvxObjectNameDialog_Impl
: public AbstractSvxObjectNameDialog
465 explicit AbstractSvxObjectNameDialog_Impl(std::unique_ptr
<SvxObjectNameDialog
> p
)
466 : m_xDlg(std::move(p
))
469 virtual short Execute() override
;
470 virtual void GetName(OUString
& rName
) override
;
471 virtual void SetCheckNameHdl(const Link
<AbstractSvxObjectNameDialog
&,bool>& rLink
) override
;
474 std::unique_ptr
<SvxObjectNameDialog
> m_xDlg
;
475 Link
<AbstractSvxObjectNameDialog
&,bool> aCheckNameHdl
;
476 DECL_LINK(CheckNameHdl
, SvxObjectNameDialog
&, bool);
479 class AbstractSvxObjectTitleDescDialog_Impl
:public AbstractSvxObjectTitleDescDialog
481 std::unique_ptr
<SvxObjectTitleDescDialog
> m_xDlg
;
483 explicit AbstractSvxObjectTitleDescDialog_Impl(std::unique_ptr
<SvxObjectTitleDescDialog
> p
)
484 : m_xDlg(std::move(p
))
487 virtual short Execute() override
;
488 virtual void GetTitle(OUString
& rName
) override
;
489 virtual void GetDescription(OUString
& rName
) override
;
492 class AbstractSvxMultiPathDialog_Impl
: public AbstractSvxMultiPathDialog
494 std::unique_ptr
<SvxMultiPathDialog
> m_xDlg
;
496 explicit AbstractSvxMultiPathDialog_Impl(std::unique_ptr
<SvxMultiPathDialog
> p
)
497 : m_xDlg(std::move(p
))
500 virtual short Execute() override
;
501 virtual OUString
GetPath() const override
;
502 virtual void SetPath( const OUString
& rPath
) override
;
503 virtual void SetTitle( const OUString
& rNewTitle
) override
;
506 class SvxPathSelectDialog
;
507 class AbstractSvxPathSelectDialog_Impl
: public AbstractSvxMultiPathDialog
510 std::unique_ptr
<SvxPathSelectDialog
> m_xDlg
;
512 explicit AbstractSvxPathSelectDialog_Impl(std::unique_ptr
<SvxPathSelectDialog
> p
)
513 : m_xDlg(std::move(p
))
516 virtual short Execute() override
;
517 virtual OUString
GetPath() const override
;
518 virtual void SetPath( const OUString
& rPath
) override
;
519 virtual void SetTitle( const OUString
& rNewTitle
) override
;
523 class AbstractSvxHpLinkDlg_Impl
: public AbstractSvxHpLinkDlg
526 std::shared_ptr
<SvxHpLinkDlg
> m_xDlg
;
528 explicit AbstractSvxHpLinkDlg_Impl(std::unique_ptr
<SvxHpLinkDlg
> p
)
529 : m_xDlg(std::move(p
))
532 virtual short Execute() override
;
533 virtual std::shared_ptr
<SfxDialogController
> GetController() override
;
534 virtual bool QueryClose() override
;
537 class FmSearchDialog
;
538 struct FmFoundRecordInformation
;
539 class AbstractFmSearchDialog_Impl
:public AbstractFmSearchDialog
541 std::unique_ptr
<FmSearchDialog
> m_xDlg
;
543 explicit AbstractFmSearchDialog_Impl(std::unique_ptr
<FmSearchDialog
> p
)
544 : m_xDlg(std::move(p
))
547 virtual short Execute() override
;
548 virtual void SetFoundHandler(const Link
<FmFoundRecordInformation
&,void>& lnk
) override
;
549 virtual void SetCanceledNotFoundHdl(const Link
<FmFoundRecordInformation
&,void>& lnk
) override
;
550 virtual void SetActiveField(const OUString
& strField
) override
;
553 class AbstractGraphicFilterDialog_Impl
: public AbstractGraphicFilterDialog
555 std::unique_ptr
<GraphicFilterDialog
> m_xDlg
;
557 explicit AbstractGraphicFilterDialog_Impl(std::unique_ptr
<GraphicFilterDialog
> p
)
558 : m_xDlg(std::move(p
))
561 virtual short Execute() override
;
562 virtual Graphic
GetFilteredGraphic( const Graphic
& rGraphic
, double fScaleX
, double fScaleY
) override
;
565 class SvxAreaTabDialog
;
566 class AbstractSvxAreaTabDialog_Impl
: public AbstractSvxAreaTabDialog
568 std::shared_ptr
<SvxAreaTabDialog
> m_xDlg
;
570 explicit AbstractSvxAreaTabDialog_Impl(std::unique_ptr
<SvxAreaTabDialog
> p
)
571 : m_xDlg(std::move(p
))
574 virtual short Execute() override
;
575 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
576 virtual void SetCurPageId(const OString
& rName
) override
;
577 virtual const SfxItemSet
* GetOutputItemSet() const override
;
578 virtual const sal_uInt16
* GetInputRanges(const SfxItemPool
& pItem
) override
;
579 virtual void SetInputSet(const SfxItemSet
* pInSet
) override
;
580 virtual void SetText(const OUString
& rStr
) override
;
583 class AbstractInsertObjectDialog_Impl
: public SfxAbstractInsertObjectDialog
585 std::unique_ptr
<InsertObjectDialog_Impl
> m_xDlg
;
587 explicit AbstractInsertObjectDialog_Impl(std::unique_ptr
<InsertObjectDialog_Impl
> p
)
588 : m_xDlg(std::move(p
))
591 virtual short Execute() override
;
592 virtual css::uno::Reference
< css::embed::XEmbeddedObject
> GetObject() override
;
593 virtual css::uno::Reference
< css::io::XInputStream
> GetIconIfIconified( OUString
* pGraphicMediaType
) override
;
594 virtual bool IsCreateNew() override
;
597 class AbstractPasteDialog_Impl
: public SfxAbstractPasteDialog
599 std::shared_ptr
<SvPasteObjectDialog
> m_xDlg
;
601 explicit AbstractPasteDialog_Impl(std::unique_ptr
<SvPasteObjectDialog
> p
)
602 : m_xDlg(std::move(p
))
605 virtual short Execute() override
;
606 virtual bool StartExecuteAsync(AsyncContext
&rCtx
) override
;
608 virtual void Insert( SotClipboardFormatId nFormat
, const OUString
& rFormatName
) override
;
609 virtual void SetObjName( const SvGlobalName
& rClass
, const OUString
& rObjName
) override
;
610 virtual void PreGetFormat( const TransferableDataHelper
& aHelper
) override
;
611 virtual SotClipboardFormatId
GetFormatOnly() override
;
612 virtual SotClipboardFormatId
GetFormat( const TransferableDataHelper
& aHelper
) override
;
615 class AbstractLinksDialog_Impl
: public SfxAbstractLinksDialog
618 std::unique_ptr
<SvBaseLinksDlg
> m_xDlg
;
620 explicit AbstractLinksDialog_Impl(std::unique_ptr
<SvBaseLinksDlg
> p
)
621 : m_xDlg(std::move(p
))
624 virtual short Execute() override
;
627 class SvxPostItDialog
;
628 class AbstractSvxPostItDialog_Impl
:public AbstractSvxPostItDialog
631 AbstractSvxPostItDialog_Impl(std::unique_ptr
<SvxPostItDialog
> pDlg
)
632 : m_xDlg(std::move(pDlg
))
635 virtual short Execute() override
;
636 virtual void SetText( const OUString
& rStr
) override
; //From class Window
637 virtual const SfxItemSet
* GetOutputItemSet() const override
;
638 virtual void SetPrevHdl( const Link
<AbstractSvxPostItDialog
&,void>& rLink
) override
;
639 virtual void SetNextHdl( const Link
<AbstractSvxPostItDialog
&,void>& rLink
) override
;
640 virtual void EnableTravel(bool bNext
, bool bPrev
) override
;
641 virtual OUString
GetNote() override
;
642 virtual void SetNote(const OUString
& rTxt
) override
;
643 virtual void ShowLastAuthor(const OUString
& rAuthor
, const OUString
& rDate
) override
;
644 virtual void DontChangeAuthor() override
;
645 virtual void HideAuthor() override
;
646 virtual std::shared_ptr
<weld::Dialog
> GetDialog() override
;
648 std::unique_ptr
<SvxPostItDialog
> m_xDlg
;
649 Link
<AbstractSvxPostItDialog
&,void> aNextHdl
;
650 Link
<AbstractSvxPostItDialog
&,void> aPrevHdl
;
651 DECL_LINK(NextHdl
, SvxPostItDialog
&, void);
652 DECL_LINK(PrevHdl
, SvxPostItDialog
&, void);
655 class PasswordToOpenModifyDialog
;
656 class AbstractPasswordToOpenModifyDialog_Impl
: public AbstractPasswordToOpenModifyDialog
658 std::unique_ptr
<PasswordToOpenModifyDialog
> m_xDlg
;
660 explicit AbstractPasswordToOpenModifyDialog_Impl(std::unique_ptr
<PasswordToOpenModifyDialog
> p
)
661 : m_xDlg(std::move(p
))
664 virtual short Execute() override
;
665 virtual OUString
GetPasswordToOpen() const override
;
666 virtual OUString
GetPasswordToModify() const override
;
667 virtual bool IsRecommendToOpenReadonly() const override
;
670 class SvxCharacterMap
;
671 class AbstractSvxCharacterMapDialog_Impl
: public SfxAbstractDialog
673 std::unique_ptr
<SvxCharacterMap
> m_xDlg
;
675 explicit AbstractSvxCharacterMapDialog_Impl(std::unique_ptr
<SvxCharacterMap
> p
)
676 : m_xDlg(std::move(p
))
679 virtual short Execute() override
;
680 virtual const SfxItemSet
* GetOutputItemSet() const override
;
681 virtual void SetText(const OUString
& rStr
) override
;
684 class ScreenshotAnnotationDlg
;
685 class AbstractScreenshotAnnotationDlg_Impl
: public AbstractScreenshotAnnotationDlg
687 std::unique_ptr
<ScreenshotAnnotationDlg
> m_xDlg
;
690 explicit AbstractScreenshotAnnotationDlg_Impl(std::unique_ptr
<ScreenshotAnnotationDlg
> p
)
691 : m_xDlg(std::move(p
))
694 virtual short Execute() override
;
697 class SignatureLineDialog
;
698 class AbstractSignatureLineDialog_Impl
: public AbstractSignatureLineDialog
700 std::unique_ptr
<SignatureLineDialog
> m_xDlg
;
703 explicit AbstractSignatureLineDialog_Impl(std::unique_ptr
<SignatureLineDialog
> p
)
704 : m_xDlg(std::move(p
))
707 virtual short Execute() override
;
710 class QrCodeGenDialog
;
711 class AbstractQrCodeGenDialog_Impl
: public AbstractQrCodeGenDialog
713 std::unique_ptr
<QrCodeGenDialog
> m_xDlg
;
716 explicit AbstractQrCodeGenDialog_Impl(std::unique_ptr
<QrCodeGenDialog
> p
)
717 : m_xDlg(std::move(p
))
720 virtual short Execute() override
;
723 class SignSignatureLineDialog
;
724 class AbstractSignSignatureLineDialog_Impl
: public AbstractSignSignatureLineDialog
727 std::unique_ptr
<SignSignatureLineDialog
> m_xDlg
;
730 explicit AbstractSignSignatureLineDialog_Impl(std::unique_ptr
<SignSignatureLineDialog
> p
)
731 : m_xDlg(std::move(p
))
734 virtual short Execute() override
;
737 class TipOfTheDayDialog
;
738 class AbstractTipOfTheDayDialog_Impl
: public AbstractTipOfTheDayDialog
741 std::unique_ptr
<TipOfTheDayDialog
> m_xDlg
;
744 explicit AbstractTipOfTheDayDialog_Impl(std::unique_ptr
<TipOfTheDayDialog
> p
)
745 : m_xDlg(std::move(p
))
748 virtual short Execute() override
;
753 /** Edit Diagram dialog */
754 class AbstractDiagramDialog_Impl
: public AbstractDiagramDialog
757 std::unique_ptr
<DiagramDialog
> m_xDlg
;
760 explicit AbstractDiagramDialog_Impl(std::unique_ptr
<DiagramDialog
> p
)
761 : m_xDlg(std::move(p
))
764 virtual short Execute() override
;
767 //AbstractDialogFactory_Impl implementations
768 class AbstractDialogFactory_Impl
: public SvxAbstractDialogFactory
771 virtual VclPtr
<VclAbstractDialog
> CreateVclDialog(weld::Window
* pParent
, sal_uInt32 nResId
) override
;
773 virtual VclPtr
<VclAbstractDialog
> CreateAboutDialog(weld::Window
* pParent
) override
;
775 virtual VclPtr
<SfxAbstractDialog
> CreateSfxDialog( weld::Window
* pParent
,
776 const SfxItemSet
& rAttr
,
777 const SdrView
* pView
,
778 sal_uInt32 nResId
) override
;
779 virtual VclPtr
<SfxAbstractDialog
> CreateCharMapDialog(weld::Window
* pParent
,
780 const SfxItemSet
& rAttr
,
781 const css::uno::Reference
< css::frame::XFrame
>& rFrame
) override
;
782 virtual VclPtr
<SfxAbstractDialog
> CreateEventConfigDialog(weld::Widget
* pParent
,
783 const SfxItemSet
& rAttr
,
784 const css::uno::Reference
< css::frame::XFrame
>& rFrame
) override
;
785 virtual VclPtr
<VclAbstractDialog
> CreateFrameDialog(weld::Window
* pParent
, const css::uno::Reference
< css::frame::XFrame
>& rxFrame
,
787 const OUString
& rParameter
) override
;
788 virtual VclPtr
<SfxAbstractTabDialog
> CreateAutoCorrTabDialog(weld::Window
* pParent
, const SfxItemSet
* pAttrSet
) override
;
789 virtual VclPtr
<SfxAbstractTabDialog
> CreateCustomizeTabDialog(weld::Window
* pParent
,
790 const SfxItemSet
* pAttrSet
,
791 const css::uno::Reference
< css::frame::XFrame
>& xViewFrame
) override
;
792 virtual VclPtr
<SfxAbstractTabDialog
> CreateTextTabDialog( weld::Window
* pParent
,
793 const SfxItemSet
* pAttrSet
,
794 SdrView
* pView
) override
;
795 virtual VclPtr
<SfxAbstractTabDialog
> CreateTabItemDialog(weld::Window
* pParent
, const SfxItemSet
& rSet
) override
;
796 virtual VclPtr
<AbstractSvxCaptionDialog
>
797 CreateCaptionDialog(weld::Window
* pParent
,
798 const SdrView
* pView
,
799 SvxAnchorIds nAnchorTypes
= SvxAnchorIds::NONE
) override
;
800 virtual VclPtr
<AbstractSvxDistributeDialog
>
801 CreateSvxDistributeDialog(weld::Window
* pParent
, const SfxItemSet
& rAttr
) override
;
802 virtual VclPtr
<SfxAbstractInsertObjectDialog
>
803 CreateInsertObjectDialog(weld::Window
* pParent
, const OUString
& rCommmand
,
804 const css::uno::Reference
< css::embed::XStorage
>& xStor
,
805 const SvObjectServerList
* pList
) override
;
806 virtual VclPtr
<VclAbstractDialog
> CreateEditObjectDialog(weld::Window
* pParent
, const OUString
& rCommmand
,
807 const css::uno::Reference
< css::embed::XEmbeddedObject
>& xObj
) override
;
808 virtual VclPtr
<SfxAbstractPasteDialog
> CreatePasteDialog(weld::Window
* pParent
) override
;
809 virtual VclPtr
<SfxAbstractLinksDialog
> CreateLinksDialog(weld::Window
* pParent
, sfx2::LinkManager
* pMgr
, bool bHTML
= false, sfx2::SvBaseLink
* p
=nullptr) override
;
811 virtual VclPtr
<AbstractHangulHanjaConversionDialog
> CreateHangulHanjaConversionDialog(weld::Window
* pParent
) override
;
812 virtual VclPtr
<AbstractThesaurusDialog
> CreateThesaurusDialog(weld::Window
*,
813 css::uno::Reference
<css::linguistic2::XThesaurus
> xThesaurus
,
814 const OUString
&rWord
, LanguageType nLanguage
) override
;
816 virtual VclPtr
<AbstractHyphenWordDialog
> CreateHyphenWordDialog(weld::Window
*,
817 const OUString
&rWord
, LanguageType nLang
,
818 css::uno::Reference
< css::linguistic2::XHyphenator
> &xHyphen
,
819 SvxSpellWrapper
* pWrapper
) override
;
821 virtual VclPtr
<AbstractFmShowColsDialog
> CreateFmShowColsDialog(weld::Window
* pParent
) override
;
822 virtual VclPtr
<AbstractSvxZoomDialog
> CreateSvxZoomDialog(weld::Window
* pParent
, const SfxItemSet
& rCoreSet
) override
;
823 // add for SvxBorderBackgroundDlg
824 virtual VclPtr
<SfxAbstractTabDialog
> CreateSvxBorderBackgroundDlg(
825 weld::Window
* pParent
,
826 const SfxItemSet
& rCoreSet
,
827 bool bEnableDrawingLayerFillStyles
) override
;
829 virtual VclPtr
<AbstractSvxTransformTabDialog
> CreateSvxTransformTabDialog(weld::Window
* pParent
,
830 const SfxItemSet
* pAttr
,
831 const SdrView
* pView
,
832 SvxAnchorIds nAnchorTypes
= SvxAnchorIds::NONE
) override
;
833 virtual VclPtr
<SfxAbstractTabDialog
> CreateSchTransformTabDialog(weld::Window
* pParent
,
834 const SfxItemSet
* pAttr
,
835 const SdrView
* pSdrView
,
836 bool bSizeTabPage
) override
;
837 virtual VclPtr
<AbstractSpellDialog
> CreateSvxSpellDialog(
838 weld::Window
* pParent
,
839 SfxBindings
* pBindings
,
840 svx::SpellDialogChildWindow
* pSpellChildWindow
) override
;
842 virtual VclPtr
<VclAbstractDialog
> CreateActualizeProgressDialog(weld::Window
* pParent
, GalleryTheme
* pThm
) override
;
843 virtual VclPtr
<AbstractTitleDialog
> CreateTitleDialog(weld::Window
* pParent
, const OUString
& rOldText
) override
;
844 virtual VclPtr
<AbstractGalleryIdDialog
> CreateGalleryIdDialog(weld::Window
* pParent
,
845 GalleryTheme
* pThm
) override
;
846 virtual VclPtr
<VclAbstractDialog
> CreateGalleryThemePropertiesDialog(weld::Window
* pParent
,
848 SfxItemSet
* pItemSet
) override
;
849 virtual VclPtr
<AbstractURLDlg
> CreateURLDialog(weld::Widget
* pParent
,
850 const OUString
& rURL
, const OUString
& rAltText
, const OUString
& rDescription
,
851 const OUString
& rTarget
, const OUString
& rName
,
852 TargetList
& rTargetList
) override
;
854 virtual VclPtr
<VclAbstractDialog
> CreateSvxSearchAttributeDialog(weld::Window
* pParent
,
855 SearchAttrItemList
& rLst
,
856 const sal_uInt16
* pWhRanges
) override
;
857 virtual VclPtr
<AbstractSvxSearchSimilarityDialog
> CreateSvxSearchSimilarityDialog( weld::Window
* pParent
,
861 sal_uInt16 nLonger
) override
;
862 virtual VclPtr
<AbstractSvxJSearchOptionsDialog
> CreateSvxJSearchOptionsDialog(weld::Window
* pParent
,
863 const SfxItemSet
& rOptionsSet
,
864 TransliterationFlags nInitialFlags
) override
;
865 virtual VclPtr
<AbstractFmInputRecordNoDialog
> CreateFmInputRecordNoDialog(weld::Window
* pParent
) override
;
866 virtual VclPtr
<AbstractSvxNewDictionaryDialog
> CreateSvxNewDictionaryDialog(weld::Window
* pParent
) override
;
867 virtual VclPtr
<VclAbstractDialog
> CreateSvxEditDictionaryDialog(weld::Window
* pParent
, const OUString
& rName
) override
;
868 virtual VclPtr
<AbstractSvxNameDialog
> CreateSvxNameDialog(weld::Window
* pParent
,
869 const OUString
& rName
, const OUString
& rDesc
) override
;
871 virtual VclPtr
<AbstractSvxObjectNameDialog
> CreateSvxObjectNameDialog(weld::Window
* pParent
, const OUString
& rName
) override
;
872 virtual VclPtr
<AbstractSvxObjectTitleDescDialog
> CreateSvxObjectTitleDescDialog(weld::Window
* pParent
, const OUString
& rTitle
, const OUString
& rDescription
) override
;
873 virtual VclPtr
<AbstractSvxMultiPathDialog
> CreateSvxMultiPathDialog(weld::Window
* pParent
) override
;
874 virtual VclPtr
<AbstractSvxMultiPathDialog
> CreateSvxPathSelectDialog(weld::Window
* pParent
) override
;
875 virtual VclPtr
<AbstractSvxHpLinkDlg
> CreateSvxHpLinkDlg(SfxChildWindow
* pChild
, SfxBindings
* pBindings
, weld::Window
* pParent
) override
;
876 virtual VclPtr
<AbstractFmSearchDialog
> CreateFmSearchDialog(weld::Window
* pParent
,
877 const OUString
& strInitialText
,
878 const std::vector
< OUString
>& _rContexts
,
879 sal_Int16 nInitialContext
,
880 const Link
<FmSearchContext
&,sal_uInt32
>& lnkContextSupplier
) override
;
881 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterEmboss(weld::Window
* pParent
,
882 const Graphic
& rGraphic
) override
;
883 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterPoster(weld::Window
* pParent
,
884 const Graphic
& rGraphic
) override
;
885 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterSepia(weld::Window
* pParent
,
886 const Graphic
& rGraphic
) override
;
887 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterSmooth(weld::Window
* pParent
,
888 const Graphic
& rGraphic
, double nRadius
) override
;
889 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterSolarize(weld::Window
* pParent
,
890 const Graphic
& rGraphic
) override
;
891 virtual VclPtr
<AbstractGraphicFilterDialog
> CreateGraphicFilterMosaic(weld::Window
* pParent
,
892 const Graphic
& rGraphic
) override
;
893 virtual VclPtr
<AbstractSvxAreaTabDialog
> CreateSvxAreaTabDialog(weld::Window
* pParent
,
894 const SfxItemSet
* pAttr
,
896 bool bShadow
) override
;
897 virtual VclPtr
<SfxAbstractTabDialog
> CreateSvxLineTabDialog(weld::Window
* pParent
, const SfxItemSet
* pAttr
,
899 const SdrObject
* pObj
,
900 bool bHasObj
) override
;
901 virtual VclPtr
<AbstractSvxPostItDialog
> CreateSvxPostItDialog(weld::Widget
* pParent
,
902 const SfxItemSet
& rCoreSet
,
903 bool bPrevNext
= false) override
;
906 virtual CreateTabPage
GetTabPageCreatorFunc( sal_uInt16 nId
) override
;
908 virtual GetTabPageRanges
GetTabPageRangesFunc( sal_uInt16 nId
) override
;
909 virtual DialogGetRanges
GetDialogGetRangesFunc() override
;
910 virtual VclPtr
<VclAbstractDialog
> CreateSvxScriptOrgDialog(weld::Window
* pParent
, const OUString
& rLanguage
) override
;
912 virtual VclPtr
<AbstractScriptSelectorDialog
> CreateScriptSelectorDialog(weld::Window
* pParent
,
913 const css::uno::Reference
< css::frame::XFrame
>& rxFrame
) override
;
915 virtual VclPtr
<VclAbstractDialog
> CreateScriptErrorDialog(const css::uno::Any
& rException
) override
;
917 virtual VclPtr
<VclAbstractDialog
> CreateSvxMacroAssignDlg(
918 weld::Window
* _pParent
,
919 const css::uno::Reference
< css::frame::XFrame
>& _rxDocumentFrame
,
920 const bool _bUnoDialogMode
,
921 const css::uno::Reference
< css::container::XNameReplace
>& _rxEvents
,
922 const sal_uInt16 _nInitiallySelectedEvent
925 virtual VclPtr
<SfxAbstractTabDialog
> CreateSvxFormatCellsDialog(weld::Window
* pParent
, const SfxItemSet
* pAttr
, const SdrModel
& rModel
) override
;
927 virtual VclPtr
<SvxAbstractSplitTableDialog
> CreateSvxSplitTableDialog(weld::Window
* pParent
, bool bIsTableVertical
, long nMaxVertical
) override
;
929 virtual VclPtr
<SvxAbstractNewTableDialog
> CreateSvxNewTableDialog(weld::Window
* pParent
) override
;
931 virtual VclPtr
<VclAbstractDialog
> CreateOptionsDialog(
932 weld::Window
* pParent
, const OUString
& rExtensionId
) override
;
934 virtual VclPtr
<SvxAbstractInsRowColDlg
> CreateSvxInsRowColDlg(weld::Window
* pParent
, bool bCol
, const OString
& rHelpId
) override
;
936 virtual VclPtr
<AbstractPasswordToOpenModifyDialog
> CreatePasswordToOpenModifyDialog(weld::Window
* pParent
, sal_uInt16 nMaxPasswdLen
, bool bIsPasswordToModify
) override
;
938 virtual VclPtr
<AbstractScreenshotAnnotationDlg
> CreateScreenshotAnnotationDlg(weld::Dialog
& rParentDialog
) override
;
940 virtual VclPtr
<AbstractSignatureLineDialog
>
941 CreateSignatureLineDialog(weld::Window
* pParent
,
942 const css::uno::Reference
<css::frame::XModel
> xModel
, bool bEditExisting
) override
;
944 virtual VclPtr
<AbstractSignSignatureLineDialog
>
945 CreateSignSignatureLineDialog(weld::Window
* pParent
,
946 const css::uno::Reference
<css::frame::XModel
> xModel
) override
;
948 virtual VclPtr
<AbstractQrCodeGenDialog
>
949 CreateQrCodeGenDialog(weld::Window
* pParent
,
950 const css::uno::Reference
<css::frame::XModel
> xModel
, bool bEditExisting
) override
;
952 virtual VclPtr
<AbstractTipOfTheDayDialog
> CreateTipOfTheDayDialog(weld::Window
* pParent
) override
;
954 virtual VclPtr
<AbstractDiagramDialog
> CreateDiagramDialog(
955 weld::Window
* pParent
,
956 std::shared_ptr
<DiagramDataInterface
> pDiagramData
) override
;
961 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */