summaryrefslogtreecommitdiff
path: root/sc/source/ui
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui')
-rw-r--r--sc/source/ui/attrdlg/scdlgfact.cxx11
-rw-r--r--sc/source/ui/attrdlg/scdlgfact.hxx11
-rw-r--r--sc/source/ui/dbgui/sortdlg.cxx38
-rw-r--r--sc/source/ui/inc/sortdlg.hxx17
-rw-r--r--sc/source/ui/view/cellsh2.cxx2
5 files changed, 38 insertions, 41 deletions
diff --git a/sc/source/ui/attrdlg/scdlgfact.cxx b/sc/source/ui/attrdlg/scdlgfact.cxx
index 89179fed4b6e..a84d7dc9b5dd 100644
--- a/sc/source/ui/attrdlg/scdlgfact.cxx
+++ b/sc/source/ui/attrdlg/scdlgfact.cxx
@@ -173,7 +173,11 @@ bool AbstractScShowTabDlg_Impl::StartExecuteAsync(VclAbstractDialog::AsyncContex
return weld::DialogController::runAsync(m_xDlg, rCtx.maEndDialogFn);
}
-IMPL_ABSTDLG_BASE(AbstractScSortWarningDlg_Impl);
+short AbstractScSortWarningDlg_Impl::Execute()
+{
+ return m_xDlg->run();
+}
+
IMPL_ABSTDLG_BASE(AbstractScTabBgColorDlg_Impl);
IMPL_ABSTDLG_BASE(AbstractScImportOptionsDlg_Impl);
IMPL_ABSTDLG_BASE(AbstractScTextImportOptionsDlg_Impl);
@@ -699,10 +703,9 @@ VclPtr<AbstractScColRowLabelDlg> ScAbstractDialogFactory_Impl::CreateScColRowLa
return VclPtr<AbstractScColRowLabelDlg_Impl>::Create(new ScColRowLabelDlg(pParent, bCol, bRow));
}
-VclPtr<AbstractScSortWarningDlg> ScAbstractDialogFactory_Impl::CreateScSortWarningDlg( vcl::Window* pParent, const OUString& rExtendText, const OUString& rCurrentText )
+VclPtr<AbstractScSortWarningDlg> ScAbstractDialogFactory_Impl::CreateScSortWarningDlg(weld::Window* pParent, const OUString& rExtendText, const OUString& rCurrentText)
{
- VclPtr<ScSortWarningDlg> pDlg = VclPtr<ScSortWarningDlg>::Create(pParent, rExtendText, rCurrentText );
- return VclPtr<AbstractScSortWarningDlg_Impl>::Create( pDlg );
+ return VclPtr<AbstractScSortWarningDlg_Impl>::Create(new ScSortWarningDlg(pParent, rExtendText, rCurrentText));
}
VclPtr<AbstractScCondFormatManagerDlg> ScAbstractDialogFactory_Impl::CreateScCondFormatMgrDlg(vcl::Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList )
diff --git a/sc/source/ui/attrdlg/scdlgfact.hxx b/sc/source/ui/attrdlg/scdlgfact.hxx
index 184eaddb11c0..27e6513b2904 100644
--- a/sc/source/ui/attrdlg/scdlgfact.hxx
+++ b/sc/source/ui/attrdlg/scdlgfact.hxx
@@ -440,7 +440,14 @@ public:
class AbstractScSortWarningDlg_Impl : public AbstractScSortWarningDlg
{
- DECL_ABSTDLG_BASE( AbstractScSortWarningDlg_Impl, ScSortWarningDlg )
+protected:
+ std::unique_ptr<ScSortWarningDlg> m_xDlg;
+public:
+ explicit AbstractScSortWarningDlg_Impl(ScSortWarningDlg* p)
+ : m_xDlg(p)
+ {
+ }
+ virtual short Execute() override;
};
class AbstractScStringInputDlg_Impl : public AbstractScStringInputDlg
@@ -508,7 +515,7 @@ public:
bool bCol,
bool bRow) override;
- virtual VclPtr<AbstractScSortWarningDlg> CreateScSortWarningDlg(vcl::Window* pParent, const OUString& rExtendText, const OUString& rCurrentText ) override;
+ virtual VclPtr<AbstractScSortWarningDlg> CreateScSortWarningDlg(weld::Window* pParent, const OUString& rExtendText, const OUString& rCurrentText ) override;
virtual VclPtr<AbstractScCondFormatManagerDlg> CreateScCondFormatMgrDlg(vcl::Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList ) override;
diff --git a/sc/source/ui/dbgui/sortdlg.cxx b/sc/source/ui/dbgui/sortdlg.cxx
index d192885ac773..53feb2d16c4d 100644
--- a/sc/source/ui/dbgui/sortdlg.cxx
+++ b/sc/source/ui/dbgui/sortdlg.cxx
@@ -31,45 +31,35 @@ ScSortDlg::ScSortDlg(vcl::Window* pParent, const SfxItemSet* pArgSet)
AddTabPage("options", ScTabPageSortOptions::Create, nullptr);
}
-ScSortWarningDlg::ScSortWarningDlg(vcl::Window* pParent,
+ScSortWarningDlg::ScSortWarningDlg(weld::Window* pParent,
const OUString& rExtendText, const OUString& rCurrentText)
- : ModalDialog(pParent, "SortWarning", "modules/scalc/ui/sortwarning.ui")
+ : GenericDialogController(pParent, "modules/scalc/ui/sortwarning.ui", "SortWarning")
+ , m_xFtText(m_xBuilder->weld_label("sorttext"))
+ , m_xBtnExtSort(m_xBuilder->weld_button("extend"))
+ , m_xBtnCurSort(m_xBuilder->weld_button("current"))
{
- get( aFtText, "sorttext" );
- get( aBtnExtSort, "extend" );
- get( aBtnCurSort, "current" );
-
- OUString sTextName = aFtText->GetText();
+ OUString sTextName = m_xFtText->get_label();
sTextName = sTextName.replaceFirst("%1", rExtendText);
sTextName = sTextName.replaceFirst("%2", rCurrentText);
- aFtText->SetText( sTextName );
+ m_xFtText->set_label(sTextName);
- aBtnExtSort->SetClickHdl( LINK( this, ScSortWarningDlg, BtnHdl ) );
- aBtnCurSort->SetClickHdl( LINK( this, ScSortWarningDlg, BtnHdl ) );
+ m_xBtnExtSort->connect_clicked( LINK( this, ScSortWarningDlg, BtnHdl ) );
+ m_xBtnCurSort->connect_clicked( LINK( this, ScSortWarningDlg, BtnHdl ) );
}
ScSortWarningDlg::~ScSortWarningDlg()
{
- disposeOnce();
-}
-
-void ScSortWarningDlg::dispose()
-{
- aFtText.clear();
- aBtnExtSort.clear();
- aBtnCurSort.clear();
- ModalDialog::dispose();
}
-IMPL_LINK( ScSortWarningDlg, BtnHdl, Button*, pBtn, void )
+IMPL_LINK(ScSortWarningDlg, BtnHdl, weld::Button&, rBtn, void)
{
- if ( pBtn == aBtnExtSort )
+ if (&rBtn == m_xBtnExtSort.get())
{
- EndDialog( BTN_EXTEND_RANGE );
+ m_xDialog->response(BTN_EXTEND_RANGE);
}
- else if( pBtn == aBtnCurSort )
+ else if(&rBtn == m_xBtnCurSort.get())
{
- EndDialog( BTN_CURRENT_SELECTION );
+ m_xDialog->response(BTN_CURRENT_SELECTION);
}
}
diff --git a/sc/source/ui/inc/sortdlg.hxx b/sc/source/ui/inc/sortdlg.hxx
index 85b24b5de216..6b790aa3965b 100644
--- a/sc/source/ui/inc/sortdlg.hxx
+++ b/sc/source/ui/inc/sortdlg.hxx
@@ -21,9 +21,7 @@
#define INCLUDED_SC_SOURCE_UI_INC_SORTDLG_HXX
#include <sfx2/tabdlg.hxx>
-#include <vcl/button.hxx>
-#include <vcl/dialog.hxx>
-#include <vcl/fixed.hxx>
+#include <vcl/weld.hxx>
#include "scui_def.hxx"
class ScSortDlg : public SfxTabDialog
@@ -41,17 +39,16 @@ private:
bool bIsByRows;
};
-class ScSortWarningDlg : public ModalDialog
+class ScSortWarningDlg : public weld::GenericDialogController
{
public:
- ScSortWarningDlg( vcl::Window* pParent, const OUString& rExtendText,const OUString& rCurrentText );
+ ScSortWarningDlg(weld::Window* pParent, const OUString& rExtendText,const OUString& rCurrentText);
virtual ~ScSortWarningDlg() override;
- virtual void dispose() override;
- DECL_LINK( BtnHdl, Button*, void );
+ DECL_LINK(BtnHdl, weld::Button&, void);
private:
- VclPtr<FixedText> aFtText;
- VclPtr<PushButton> aBtnExtSort;
- VclPtr<PushButton> aBtnCurSort;
+ std::unique_ptr<weld::Label> m_xFtText;
+ std::unique_ptr<weld::Button> m_xBtnExtSort;
+ std::unique_ptr<weld::Button> m_xBtnCurSort;
};
#endif // INCLUDED_SC_SOURCE_UI_INC_SORTDLG_HXX
diff --git a/sc/source/ui/view/cellsh2.cxx b/sc/source/ui/view/cellsh2.cxx
index 72f9f405c994..f97c52cef116 100644
--- a/sc/source/ui/view/cellsh2.cxx
+++ b/sc/source/ui/view/cellsh2.cxx
@@ -181,7 +181,7 @@ static bool lcl_GetSortParam( const ScViewData* pData, const ScSortParam& rSortP
ScAbstractDialogFactory* pFact = ScAbstractDialogFactory::Create();
OSL_ENSURE(pFact, "ScAbstractFactory create fail!");
- ScopedVclPtr<AbstractScSortWarningDlg> pWarningDlg(pFact->CreateScSortWarningDlg( pTabViewShell->GetDialogParent(), aExtendStr, aCurrentStr ));
+ ScopedVclPtr<AbstractScSortWarningDlg> pWarningDlg(pFact->CreateScSortWarningDlg(pTabViewShell->GetFrameWeld(), aExtendStr, aCurrentStr));
OSL_ENSURE(pWarningDlg, "Dialog create fail!");
short bResult = pWarningDlg->Execute();
if( bResult == BTN_EXTEND_RANGE || bResult == BTN_CURRENT_SELECTION )