1
0
Fork 0
libreoffice/sw/source/ui/dialog/swdlgfact.hxx
Daniel Baumann 8e63e14cf6
Adding upstream version 4:25.2.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-22 16:20:04 +02:00

919 lines
38 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#ifndef INCLUDED_SW_SOURCE_UI_DIALOG_SWDLGFACT_HXX
#define INCLUDED_SW_SOURCE_UI_DIALOG_SWDLGFACT_HXX
#include <swabstdlg.hxx>
#include <abstract.hxx>
#include <ascfldlg.hxx>
#include <cnttab.hxx>
#include <colwd.hxx>
#include <contentcontrollistitemdlg.hxx>
#include <convert.hxx>
#include <DateFormFieldDialog.hxx>
#include <dbinsdlg.hxx>
#include <DropDownFieldDialog.hxx>
#include <DropDownFormFieldDialog.hxx>
#include <fldtdlg.hxx>
#include <glossary.hxx>
#include <inpdlg.hxx>
#include <insfnote.hxx>
#include <javaedit.hxx>
#include <label.hxx>
#include <mailmergewizard.hxx>
#include <mailmrge.hxx>
#include <mergetbl.hxx>
#include <multmrk.hxx>
#include <regionsw.hxx>
#include <rowht.hxx>
#include <selglos.hxx>
#include <splittbl.hxx>
#include <srtdlg.hxx>
#include <swmodalredlineacceptdlg.hxx>
#include <swrenamexnameddlg.hxx>
#include <swuicnttab.hxx>
#include <swuiidxmrk.hxx>
#include <tautofmt.hxx>
#include <utility>
#include <wordcountdialog.hxx>
#include <itabenum.hxx>
#include <optional>
#include <o3tl/deleter.hxx>
#include <pagenumberdlg.hxx>
#include <changedb.hxx>
class SwInsertAbstractDlg;
class SwAsciiFilterDlg;
class SwBreakDlg;
class SwMultiTOXMarkDlg;
class SwSortDlg;
class SwTableHeightDlg;
class SwTableWidthDlg;
class SwMergeTableDlg;
class SfxTabDialog;
class SwConvertTableDlg;
class SwInsertDBColAutoPilot;
class SwLabDlg;
class SwSelGlossaryDlg;
class SwAutoFormatDlg;
class SwFieldDlg;
class SwRenameXNamedDlg;
class SwModalRedlineAcceptDlg;
class SwTOXMark;
class SwSplitTableDlg;
namespace sw
{
class DropDownFieldDialog;
class DropDownFormFieldDialog;
class DateFormFieldDialog;
}
class SwWordCountFloatDlg;
class AbstractSwWordCountFloatDlg_Impl : public AbstractSwWordCountFloatDlg
{
std::shared_ptr<SwWordCountFloatDlg> m_xDlg;
public:
explicit AbstractSwWordCountFloatDlg_Impl(std::shared_ptr<SwWordCountFloatDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void UpdateCounts() override;
virtual void SetCounts(const SwDocStat &rCurrCnt, const SwDocStat &rDocStat) override;
virtual std::shared_ptr<SfxDialogController> GetController() override;
};
class AbstractSwInsertAbstractDlg_Impl : public AbstractSwInsertAbstractDlg
{
std::shared_ptr<SwInsertAbstractDlg> m_xDlg;
public:
explicit AbstractSwInsertAbstractDlg_Impl(std::shared_ptr<SwInsertAbstractDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual sal_uInt8 GetLevel() const override ;
virtual sal_uInt8 GetPara() const override ;
};
class SwAbstractSfxController_Impl : public SfxAbstractDialog
{
std::shared_ptr<SfxSingleTabDialogController> m_xDlg;
public:
explicit SwAbstractSfxController_Impl(std::shared_ptr<SfxSingleTabDialogController> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual void SetText(const OUString& rStr) override;
};
class AbstractNumFormatDlg_Impl : public SfxAbstractDialog
{
std::shared_ptr<SfxSingleTabDialogController> m_xDlg;
public:
explicit AbstractNumFormatDlg_Impl(std::shared_ptr<SfxSingleTabDialogController> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual void SetText(const OUString& rStr) override;
};
class AbstractSwAsciiFilterDlg_Impl : public AbstractSwAsciiFilterDlg
{
std::unique_ptr<SwAsciiFilterDlg> m_xDlg;
public:
explicit AbstractSwAsciiFilterDlg_Impl(std::unique_ptr<SwAsciiFilterDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void FillOptions( SwAsciiOptions& rOptions ) override;
};
/// Interface implementation for the insert -> fields -> page number wizard dialog
class AbstractSwPageNumberDlg_Impl : public AbstractSwPageNumberDlg
{
std::shared_ptr<SwPageNumberDlg> m_xDlg;
public:
explicit AbstractSwPageNumberDlg_Impl(std::shared_ptr<SwPageNumberDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual int GetPageNumberPosition() const override;
virtual int GetPageNumberAlignment() const override;
bool GetMirrorOnEvenPages() const override;
bool GetIncludePageTotal() const override;
bool GetFitIntoExistingMargins() const override;
SvxNumType GetPageNumberType() const override;
void SetPageNumberType(SvxNumType nSet) override;
};
class AbstractGenericDialog_Impl : public VclAbstractDialog
{
std::shared_ptr<weld::GenericDialogController> m_xDlg;
public:
explicit AbstractGenericDialog_Impl(std::shared_ptr<weld::GenericDialogController> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
};
class AbstractSwSortDlg_Impl : public AbstractSwSortDlg
{
std::shared_ptr<SwSortDlg> m_xDlg;
public:
explicit AbstractSwSortDlg_Impl(std::shared_ptr<SwSortDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractMultiTOXMarkDlg_Impl : public VclAbstractDialog
{
std::unique_ptr<SwMultiTOXMarkDlg> m_xDlg;
public:
explicit AbstractMultiTOXMarkDlg_Impl(std::unique_ptr<SwMultiTOXMarkDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
};
class AbstractNumBulletDialog_Impl : public AbstractNumBulletDialog
{
protected:
std::shared_ptr<SfxTabDialogController> m_xDlg;
public:
explicit AbstractNumBulletDialog_Impl(std::shared_ptr<SfxTabDialogController> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void SetCurPageId( const OUString &rName ) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual const SfxItemSet* GetInputItemSet() const override;
virtual WhichRangesContainer GetInputRanges( const SfxItemPool& pItem ) override;
virtual void SetInputSet( const SfxItemSet* pInSet ) override;
//From class Window.
virtual void SetText( const OUString& rStr ) override;
};
class AbstractSwBreakDlg_Impl : public AbstractSwBreakDlg
{
std::shared_ptr<weld::DialogController> m_xDlg;
public:
explicit AbstractSwBreakDlg_Impl(std::shared_ptr<weld::DialogController> p)
: m_xDlg(std::move(p))
{
}
virtual OUString GetTemplateName() override;
virtual sal_uInt16 GetKind() override;
virtual ::std::optional<sal_uInt16> GetPageNumber() override;
std::optional<SwLineBreakClear> GetClear() override;
virtual std::shared_ptr<weld::DialogController> getDialogController() override { return m_xDlg; }
};
class AbstractSwTranslateLangSelectDlg_Impl : public AbstractSwTranslateLangSelectDlg
{
std::shared_ptr<weld::DialogController> m_xDlg;
public:
explicit AbstractSwTranslateLangSelectDlg_Impl(std::shared_ptr<weld::DialogController> p)
: m_xDlg(std::move(p))
{
}
virtual std::shared_ptr<weld::DialogController> getDialogController() override { return m_xDlg; }
virtual std::optional<SwLanguageListItem> GetSelectedLanguage() override;
};
class AbstractSwTableWidthDlg_Impl : public AbstractSwTableWidthDlg
{
std::shared_ptr<SwTableWidthDlg> m_xDlg;
public:
explicit AbstractSwTableWidthDlg_Impl(std::shared_ptr<SwTableWidthDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractSwTableHeightDlg_Impl : public AbstractSwTableHeightDlg
{
std::shared_ptr<SwTableHeightDlg> m_xDlg;
public:
explicit AbstractSwTableHeightDlg_Impl(std::shared_ptr<SwTableHeightDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractSwMergeTableDlg_Impl : public VclAbstractDialog
{
std::unique_ptr<SwMergeTableDlg> m_xDlg;
public:
explicit AbstractSwMergeTableDlg_Impl(std::unique_ptr<SwMergeTableDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
};
class AbstractSplitTableDialog_Impl : public AbstractSplitTableDialog // add for
{
std::shared_ptr<SwSplitTableDlg> m_xDlg;
public:
explicit AbstractSplitTableDialog_Impl(std::shared_ptr<SwSplitTableDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual SplitTable_HeadlineOption GetSplitMode() override;
};
class AbstractTabController_Impl : virtual public SfxAbstractTabDialog
{
protected:
std::shared_ptr<SfxTabDialogController> m_xDlg;
public:
explicit AbstractTabController_Impl(std::shared_ptr<SfxTabDialogController> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void SetCurPageId( const OUString &rName ) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual WhichRangesContainer GetInputRanges( const SfxItemPool& pItem ) override;
virtual void SetInputSet( const SfxItemSet* pInSet ) override;
//From class Window.
virtual void SetText( const OUString& rStr ) override;
};
class AbstractApplyTabController_Impl : public AbstractTabController_Impl, virtual public SfxAbstractApplyTabDialog
{
public:
explicit AbstractApplyTabController_Impl(std::shared_ptr<SfxTabDialogController> p)
: AbstractTabController_Impl(std::move(p))
{
}
DECL_LINK(ApplyHdl, weld::Button&, void);
private:
Link<LinkParamNone*,void> m_aHandler;
virtual void SetApplyHdl( const Link<LinkParamNone*,void>& rLink ) override;
};
class AbstractSwConvertTableDlg_Impl : public AbstractSwConvertTableDlg
{
std::unique_ptr<SwConvertTableDlg> m_xDlg;
public:
explicit AbstractSwConvertTableDlg_Impl(std::unique_ptr<SwConvertTableDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void GetValues( sal_Unicode& rDelim,SwInsertTableOptions& rInsTableFlags,
SwTableAutoFormat const*& prTAFormat) override;
};
class AbstractSwInsertDBColAutoPilot_Impl : public AbstractSwInsertDBColAutoPilot
{
std::shared_ptr<SwInsertDBColAutoPilot> m_xDlg;
public:
explicit AbstractSwInsertDBColAutoPilot_Impl(std::shared_ptr<SwInsertDBColAutoPilot> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void DataToDoc( const css::uno::Sequence< css::uno::Any >& rSelection,
css::uno::Reference< css::sdbc::XDataSource> rxSource,
css::uno::Reference< css::sdbc::XConnection> xConnection,
css::uno::Reference< css::sdbc::XResultSet > xResultSet) override;
};
class AbstractDropDownFieldDialog_Impl : public AbstractDropDownFieldDialog
{
std::unique_ptr<sw::DropDownFieldDialog> m_xDlg;
public:
explicit AbstractDropDownFieldDialog_Impl(std::unique_ptr<sw::DropDownFieldDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool PrevButtonPressed() const override;
virtual bool NextButtonPressed() const override;
};
class AbstractDropDownFormFieldDialog_Impl : public AbstractDropDownFormFieldDialog
{
std::shared_ptr<sw::DropDownFormFieldDialog> m_xDlg;
public:
explicit AbstractDropDownFormFieldDialog_Impl(std::shared_ptr<sw::DropDownFormFieldDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractDateFormFieldDialog_Impl : public AbstractDateFormFieldDialog
{
std::shared_ptr<sw::DateFormFieldDialog> m_xDlg;
public:
explicit AbstractDateFormFieldDialog_Impl(std::shared_ptr<sw::DateFormFieldDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractSwLabDlg_Impl : public AbstractSwLabDlg
{
std::unique_ptr<SwLabDlg> m_xDlg;
public:
explicit AbstractSwLabDlg_Impl(std::unique_ptr<SwLabDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void SetCurPageId( const OUString &rName ) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual WhichRangesContainer GetInputRanges( const SfxItemPool& pItem ) override;
virtual void SetInputSet( const SfxItemSet* pInSet ) override;
//From class Window.
virtual void SetText( const OUString& rStr ) override;
virtual const OUString& GetBusinessCardStr() const override;
virtual Printer *GetPrt() override;
};
class AbstractSwSelGlossaryDlg_Impl : public AbstractSwSelGlossaryDlg
{
std::unique_ptr<SwSelGlossaryDlg> m_xDlg;
public:
explicit AbstractSwSelGlossaryDlg_Impl(std::unique_ptr<SwSelGlossaryDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void InsertGlos(const OUString &rRegion, const OUString &rGlosName) override; // inline
virtual sal_Int32 GetSelectedIdx() const override; // inline
virtual void SelectEntryPos(sal_Int32 nIdx) override; // inline
};
class AbstractSwAutoFormatDlg_Impl : public AbstractSwAutoFormatDlg
{
std::shared_ptr<SwAutoFormatDlg> m_xDlg;
public:
explicit AbstractSwAutoFormatDlg_Impl(std::shared_ptr<SwAutoFormatDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual std::unique_ptr<SwTableAutoFormat> FillAutoFormatOfIndex() const override;
virtual void Apply() override { m_xDlg->Apply(); }
};
class AbstractSwFieldDlg_Impl : public AbstractSwFieldDlg
{
std::shared_ptr<SwFieldDlg> m_xDlg;
public:
explicit AbstractSwFieldDlg_Impl(std::shared_ptr<SwFieldDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void SetCurPageId( const OUString &rName ) override;
virtual const SfxItemSet* GetOutputItemSet() const override;
virtual WhichRangesContainer GetInputRanges( const SfxItemPool& pItem ) override;
virtual void SetInputSet( const SfxItemSet* pInSet ) override;
//From class Window.
virtual void SetText( const OUString& rStr ) override;
virtual void ShowReferencePage() override;
virtual void Initialize(SfxChildWinInfo *pInfo) override;
virtual void ReInitDlg() override;
virtual void ActivateDatabasePage() override;
virtual std::shared_ptr<SfxDialogController> GetController() override;
};
class AbstractSwRenameXNamedDlg_Impl : public AbstractSwRenameXNamedDlg
{
std::shared_ptr<SwRenameXNamedDlg> m_xDlg;
public:
explicit AbstractSwRenameXNamedDlg_Impl(std::unique_ptr<SwRenameXNamedDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) override;
virtual void SetForbiddenChars( const OUString& rSet ) override;
virtual void SetAlternativeAccess(
css::uno::Reference< css::container::XNameAccess > & xSecond,
css::uno::Reference< css::container::XNameAccess > & xThird ) override;
};
/**
* Implementation of AbstractSwContentControlListItemDlg, that is only visible to
* SwAbstractDialogFactory_Impl::CreateSwContentControlListItemDlg().
*/
class AbstractSwContentControlListItemDlg_Impl : public AbstractSwContentControlListItemDlg
{
std::shared_ptr<SwContentControlListItemDlg> m_xDlg;
public:
explicit AbstractSwContentControlListItemDlg_Impl(
std::shared_ptr<SwContentControlListItemDlg> xDlg)
: m_xDlg(std::move(xDlg))
{
}
short Execute() override;
bool StartExecuteAsync(VclAbstractDialog::AsyncContext &) override;
};
class AbstractSwModalRedlineAcceptDlg_Impl : public AbstractSwModalRedlineAcceptDlg
{
std::shared_ptr<SwModalRedlineAcceptDlg> m_xDlg;
public:
explicit AbstractSwModalRedlineAcceptDlg_Impl(std::shared_ptr<SwModalRedlineAcceptDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &) override;
};
class SwGlossaryDlg;
class AbstractGlossaryDlg_Impl : public AbstractGlossaryDlg
{
std::shared_ptr<SwGlossaryDlg> m_xDlg;
public:
explicit AbstractGlossaryDlg_Impl(std::shared_ptr<SwGlossaryDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
virtual OUString GetCurrGrpName() const override;
virtual OUString GetCurrShortName() const override;
};
class SwFieldInputDlg;
class AbstractFieldInputDlg_Impl : public AbstractFieldInputDlg
{
std::unique_ptr<SwFieldInputDlg> m_xDlg;
public:
explicit AbstractFieldInputDlg_Impl(std::unique_ptr<SwFieldInputDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void EndDialog(sal_Int32) override;
virtual bool PrevButtonPressed() const override;
virtual bool NextButtonPressed() const override;
};
class SwInsFootNoteDlg;
class AbstractInsFootNoteDlg_Impl : public AbstractInsFootNoteDlg
{
std::shared_ptr<SwInsFootNoteDlg> m_xDlg;
public:
explicit AbstractInsFootNoteDlg_Impl(std::shared_ptr<SwInsFootNoteDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void Apply() override { m_xDlg->Apply(); }
virtual OUString GetFontName() override;
virtual bool IsEndNote() override;
virtual OUString GetStr() override;
//from class Window
virtual void SetHelpId( const OUString& sHelpId ) override;
virtual void SetText( const OUString& rStr ) override;
};
class SwInsTableDlg;
class AbstractInsTableDlg_Impl : public AbstractInsTableDlg
{
std::shared_ptr<weld::DialogController> m_xDlg;
public:
explicit AbstractInsTableDlg_Impl(std::shared_ptr<weld::DialogController> p)
: m_xDlg(std::move(p))
{
}
virtual void GetValues( OUString& rName, sal_uInt16& rRow, sal_uInt16& rCol,
SwInsertTableOptions& rInsTableFlags, OUString& rTableAutoFormatName,
std::unique_ptr<SwTableAutoFormat>& prTAFormat ) override;
virtual std::shared_ptr<weld::DialogController> getDialogController() override { return m_xDlg; }
};
class SwJavaEditDialog;
class AbstractJavaEditDialog_Impl : public AbstractJavaEditDialog
{
std::unique_ptr<SwJavaEditDialog> m_xDlg;
public:
explicit AbstractJavaEditDialog_Impl(std::unique_ptr<SwJavaEditDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual OUString GetScriptText() const override;
virtual OUString GetScriptType() const override;
virtual bool IsUrl() const override;
virtual bool IsNew() const override;
virtual bool IsUpdate() const override;
};
class SwMailMergeDlg;
class AbstractMailMergeDlg_Impl : public AbstractMailMergeDlg
{
std::unique_ptr<SwMailMergeDlg> m_xDlg;
public:
explicit AbstractMailMergeDlg_Impl(std::unique_ptr<SwMailMergeDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual DBManagerOptions GetMergeType() override ;
virtual const OUString& GetSaveFilter() const override;
virtual css::uno::Sequence< css::uno::Any > GetSelection() const override ;
virtual css::uno::Reference< css::sdbc::XResultSet> GetResultSet() const override;
virtual bool IsSaveSingleDoc() const override;
virtual bool IsGenerateFromDataBase() const override;
virtual bool IsFileEncryptedFromDataBase() const override;
virtual OUString GetColumnName() const override;
virtual OUString GetPasswordColumnName() const override;
virtual OUString GetTargetURL() const override;
};
class SwMailMergeCreateFromDlg;
class AbstractMailMergeCreateFromDlg_Impl : public AbstractMailMergeCreateFromDlg
{
std::unique_ptr<SwMailMergeCreateFromDlg> m_xDlg;
public:
explicit AbstractMailMergeCreateFromDlg_Impl(std::unique_ptr<SwMailMergeCreateFromDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool IsThisDocument() const override ;
};
class SwMailMergeFieldConnectionsDlg;
class AbstractMailMergeFieldConnectionsDlg_Impl : public AbstractMailMergeFieldConnectionsDlg
{
std::unique_ptr<SwMailMergeFieldConnectionsDlg> m_xDlg;
public:
explicit AbstractMailMergeFieldConnectionsDlg_Impl(std::unique_ptr<SwMailMergeFieldConnectionsDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool IsUseExistingConnections() const override ;
};
class SwMultiTOXTabDialog;
class AbstractMultiTOXTabDialog_Impl : public AbstractMultiTOXTabDialog
{
std::shared_ptr<SwMultiTOXTabDialog> m_xDlg;
public:
explicit AbstractMultiTOXTabDialog_Impl(std::shared_ptr<SwMultiTOXTabDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) override;
virtual CurTOXType GetCurrentTOXType() const override ;
virtual SwTOXDescription& GetTOXDescription(CurTOXType eTOXTypes) override;
//from SfxTabDialog
virtual const SfxItemSet* GetOutputItemSet() const override;
};
class SwEditRegionDlg;
class AbstractEditRegionDlg_Impl : public AbstractEditRegionDlg
{
std::shared_ptr<SwEditRegionDlg> m_xDlg;
public:
explicit AbstractEditRegionDlg_Impl(std::shared_ptr<SwEditRegionDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void SelectSection(const OUString& rSectionName) override;
};
class SwInsertSectionTabDialog;
class AbstractInsertSectionTabDialog_Impl : public AbstractInsertSectionTabDialog
{
std::shared_ptr<SwInsertSectionTabDialog> m_xDlg;
public:
explicit AbstractInsertSectionTabDialog_Impl(std::shared_ptr<SwInsertSectionTabDialog> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void SetSectionData(SwSectionData const& rSect) override;
};
class SwIndexMarkFloatDlg;
class AbstractIndexMarkFloatDlg_Impl : public AbstractMarkFloatDlg
{
std::shared_ptr<SwIndexMarkFloatDlg> m_xDlg;
public:
explicit AbstractIndexMarkFloatDlg_Impl(std::shared_ptr<SwIndexMarkFloatDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void ReInitDlg(SwWrtShell& rWrtShell) override;
virtual std::shared_ptr<SfxDialogController> GetController() override;
};
class SwAuthMarkFloatDlg;
class AbstractAuthMarkFloatDlg_Impl : public AbstractMarkFloatDlg
{
std::shared_ptr<SwAuthMarkFloatDlg> m_xDlg;
public:
explicit AbstractAuthMarkFloatDlg_Impl(std::shared_ptr<SwAuthMarkFloatDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual void ReInitDlg(SwWrtShell& rWrtShell) override;
virtual std::shared_ptr<SfxDialogController> GetController() override;
};
class SwMailMergeWizard;
class AbstractMailMergeWizard_Impl : public AbstractMailMergeWizard
{
std::shared_ptr<SwMailMergeWizard> m_xDlg;
public:
explicit AbstractMailMergeWizard_Impl(std::shared_ptr<SwMailMergeWizard> p)
: m_xDlg(std::move(p))
{
}
virtual ~AbstractMailMergeWizard_Impl() override;
virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) override;
virtual short Execute() override;
virtual OUString GetReloadDocument() const override;
virtual void ShowPage( sal_uInt16 nLevel ) override;
virtual sal_uInt16 GetRestartPage() const override;
};
class AbstractChangeDbDialog_Impl : public AbstractChangeDbDialog
{
std::shared_ptr<SwChangeDBDlg> m_xDlg;
public:
explicit AbstractChangeDbDialog_Impl(std::shared_ptr<SwChangeDBDlg> p)
: m_xDlg(std::move(p))
{
}
virtual short Execute() override;
virtual bool StartExecuteAsync(AsyncContext &rCtx) override;
virtual void UpdateFields() override { m_xDlg->UpdateFields(); }
};
//AbstractDialogFactory_Impl implementations
class SwAbstractDialogFactory_Impl : public SwAbstractDialogFactory
{
public:
virtual ~SwAbstractDialogFactory_Impl() {}
virtual VclPtr<SfxAbstractDialog> CreateNumFormatDialog(weld::Widget* pParent, const SfxItemSet& rAttr) override;
virtual VclPtr<SfxAbstractDialog> CreateSwDropCapsDialog(weld::Window* pParent, const SfxItemSet& rSet) override;
virtual VclPtr<SfxAbstractDialog> CreateSwBackgroundDialog(weld::Window* pParent, const SfxItemSet& rSet) override;
virtual VclPtr<AbstractSwWordCountFloatDlg> CreateSwWordCountDialog(SfxBindings* pBindings,
SfxChildWindow* pChild, weld::Window *pParent, SfxChildWinInfo* pInfo) override;
virtual VclPtr<AbstractSwInsertAbstractDlg> CreateSwInsertAbstractDlg(weld::Window* pParent) override;
virtual VclPtr<SfxAbstractDialog> CreateSwAddressAbstractDlg(weld::Window* pParent, const SfxItemSet& rSet) override;
virtual VclPtr<AbstractSwAsciiFilterDlg> CreateSwAsciiFilterDlg(weld::Window* pParent, SwDocShell& rDocSh,
SvStream* pStream) override;
virtual VclPtr<VclAbstractDialog> CreateSwInsertBookmarkDlg(weld::Window *pParent, SwWrtShell &rSh, OUString const* pSelected) override;
virtual VclPtr<VclAbstractDialog> CreateSwContentControlDlg(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractSwPageNumberDlg> CreateSwPageNumberDlg(weld::Window *pParent) override;
VclPtr<AbstractSwContentControlListItemDlg>
CreateSwContentControlListItemDlg(weld::Window* pParent,
SwContentControlListItem& rItem) override;
virtual std::shared_ptr<AbstractSwBreakDlg> CreateSwBreakDlg(weld::Window *pParent, SwWrtShell &rSh) override;
virtual std::shared_ptr<AbstractSwTranslateLangSelectDlg> CreateSwTranslateLangSelectDlg(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractChangeDbDialog> CreateSwChangeDBDlg(SwView& rVw) override;
virtual VclPtr<SfxAbstractTabDialog> CreateSwCharDlg(weld::Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet,
SwCharDlgMode nDialogMode, const OUString* pFormatStr = nullptr) override;
virtual VclPtr<AbstractSwConvertTableDlg> CreateSwConvertTableDlg(SwView& rView, bool bToTable) override;
virtual VclPtr<VclAbstractDialog> CreateSwCaptionDialog(weld::Window *pParent, SwView &rV) override;
virtual VclPtr<AbstractSwInsertDBColAutoPilot> CreateSwInsertDBColAutoPilot(SwView& rView,
css::uno::Reference< css::sdbc::XDataSource> rxSource,
css::uno::Reference<css::sdbcx::XColumnsSupplier> xColSupp,
const SwDBData& rData) override;
virtual VclPtr<SfxAbstractTabDialog> CreateSwFootNoteOptionDlg(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractDropDownFieldDialog> CreateDropDownFieldDialog(weld::Widget* pParent, SwWrtShell &rSh,
SwField* pField, bool bPrevButton, bool bNextButton) override;
virtual VclPtr<AbstractDropDownFormFieldDialog> CreateDropDownFormFieldDialog(weld::Widget* pParent, sw::mark::Fieldmark* pDropDownField) override;
virtual VclPtr<AbstractDateFormFieldDialog> CreateDateFormFieldDialog(weld::Widget* pParent, sw::mark::DateFieldmark* pDateField, SwDoc& rDoc) override;
virtual VclPtr<SfxAbstractTabDialog> CreateSwEnvDlg(weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, bool bInsert) override;
virtual VclPtr<AbstractSwLabDlg> CreateSwLabDlg(weld::Window* pParent, const SfxItemSet& rSet,
SwDBManager* pDBManager, bool bLabel) override;
virtual SwLabDlgMethod GetSwLabDlgStaticMethod () override;
virtual VclPtr<SfxAbstractTabDialog> CreateSwParaDlg(weld::Window *pParent,
SwView& rVw,
const SfxItemSet& rCoreSet,
bool bDraw,
const OUString& sDefPage = {}) override;
virtual VclPtr<VclAbstractDialog> CreateSwAutoMarkDialog(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractSwSelGlossaryDlg> CreateSwSelGlossaryDlg(weld::Window *pParent, const OUString &rShortName) override;
virtual VclPtr<AbstractSwSortDlg> CreateSwSortingDialog(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractSwTableHeightDlg> CreateSwTableHeightDialog(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<VclAbstractDialog> CreateSwColumnDialog(weld::Window *pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractSplitTableDialog> CreateSplitTableDialog(weld::Window* pParent, SwWrtShell &rSh) override;
virtual VclPtr<AbstractSwAutoFormatDlg> CreateSwAutoFormatDlg(weld::Window* pParent, SwWrtShell* pShell,
bool bSetAutoFormat = true,
const SwTableAutoFormat* pSelFormat = nullptr) override;
virtual VclPtr<SfxAbstractDialog> CreateSwBorderDlg(weld::Window* pParent, SfxItemSet& rSet, SwBorderModes nType) override;
virtual VclPtr<SfxAbstractDialog> CreateSwWrapDlg(weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pSh) override;
virtual VclPtr<AbstractSwTableWidthDlg> CreateSwTableWidthDlg(weld::Window *pParent, SwWrtShell *pShell) override;
virtual VclPtr<SfxAbstractTabDialog> CreateSwTableTabDlg(weld::Window* pParent,
const SfxItemSet* pItemSet, SwWrtShell* pSh) override;
virtual VclPtr<AbstractSwFieldDlg> CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, weld::Window *pParent) override;
virtual VclPtr<SfxAbstractDialog> CreateSwFieldEditDlg ( SwView& rVw ) override;
virtual VclPtr<AbstractSwRenameXNamedDlg> CreateSwRenameXNamedDlg(weld::Widget* pParent,
css::uno::Reference< css::container::XNamed > & xNamed,
css::uno::Reference< css::container::XNameAccess > & xNameAccess) override;
virtual VclPtr<AbstractSwModalRedlineAcceptDlg> CreateSwModalRedlineAcceptDlg(weld::Window *pParent) override;
virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(weld::Window* pParent, bool& rWithPrev) override;
virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog( const OUString &rDialogType,
SfxViewFrame& rFrame, weld::Window *pParent,
const SfxItemSet& rCoreSet,
bool bNewFrame = true,
const OUString& sDefPage = {}) override;
virtual VclPtr<SfxAbstractApplyTabDialog> CreateTemplateDialog(
weld::Window *pParent,
SfxStyleSheetBase& rBase,
SfxStyleFamily nRegion,
const OUString& sPage,
SwWrtShell* pActShell,
bool bNew) override;
virtual VclPtr<AbstractGlossaryDlg> CreateGlossaryDlg(SfxViewFrame& rViewFrame,
SwGlossaryHdl* pGlosHdl,
SwWrtShell *pWrtShell) override;
virtual VclPtr<AbstractFieldInputDlg> CreateFieldInputDlg(weld::Widget *pParent,
SwWrtShell &rSh, SwField* pField, bool bPrevButton, bool bNextButton) override;
virtual VclPtr<AbstractInsFootNoteDlg> CreateInsFootNoteDlg(
weld::Window * pParent, SwWrtShell &rSh, bool bEd = false) override;
virtual VclPtr<VclAbstractDialog> CreateTitlePageDlg(weld::Window* pParent) override;
virtual VclPtr<VclAbstractDialog> CreateVclSwViewDialog(SwView& rView) override;
virtual std::shared_ptr<AbstractInsTableDlg> CreateInsTableDlg(SwView& rView) override;
virtual VclPtr<AbstractJavaEditDialog> CreateJavaEditDialog(weld::Window* pParent,
SwWrtShell* pWrtSh) override;
virtual VclPtr<AbstractMailMergeDlg> CreateMailMergeDlg(
weld::Window* pParent, SwWrtShell& rSh,
const OUString& rSourceName,
const OUString& rTableName,
sal_Int32 nCommandType,
const css::uno::Reference< css::sdbc::XConnection>& xConnection ) override;
virtual VclPtr<AbstractMailMergeCreateFromDlg> CreateMailMergeCreateFromDlg(weld::Window* pParent) override;
virtual VclPtr<AbstractMailMergeFieldConnectionsDlg> CreateMailMergeFieldConnectionsDlg(weld::Window* pParent) override;
virtual VclPtr<VclAbstractDialog> CreateMultiTOXMarkDlg(weld::Window* pParent, SwTOXMgr &rTOXMgr) override;
virtual VclPtr<SfxAbstractTabDialog> CreateOutlineTabDialog(weld::Window* pParent, const SfxItemSet* pSwItemSet,
SwWrtShell &) override;
virtual VclPtr<AbstractNumBulletDialog> CreateSvxNumBulletTabDialog(weld::Window* pParent,
const SfxItemSet& rSwItemSet,
SwWrtShell &) override;
virtual VclPtr<AbstractMultiTOXTabDialog> CreateMultiTOXTabDialog(
weld::Widget* pParent, const SfxItemSet& rSet,
SwWrtShell &rShell,
SwTOXBase* pCurTOX,
bool bGlobal) override;
virtual VclPtr<AbstractEditRegionDlg> CreateEditRegionDlg(weld::Window* pParent, SwWrtShell& rWrtSh) override;
virtual VclPtr<AbstractInsertSectionTabDialog> CreateInsertSectionTabDialog(
weld::Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh) override;
virtual VclPtr<AbstractMarkFloatDlg> CreateIndexMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
weld::Window *pParent,
SfxChildWinInfo* pInfo) override;
virtual VclPtr<AbstractMarkFloatDlg> CreateAuthMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
weld::Window *pParent,
SfxChildWinInfo* pInfo) override;
virtual VclPtr<VclAbstractDialog> CreateIndexMarkModalDlg(
weld::Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark ) override;
virtual VclPtr<AbstractMailMergeWizard> CreateMailMergeWizard(SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem) override;
virtual GlossaryGetCurrGroup GetGlossaryCurrGroupFunc() override;
virtual GlossarySetActGroup SetGlossaryActGroupFunc() override;
// For TabPage
virtual CreateTabPage GetTabPageCreatorFunc( sal_uInt16 nId ) override;
virtual void ExecuteMMResultSaveDialog(weld::Window* pParent) override;
virtual void ExecuteMMResultPrintDialog(weld::Window* pParent) override;
virtual void ExecuteMMResultEmailDialog(weld::Window* pParent) override;
};
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */