[Libreoffice-commits] core.git: sc/inc sc/qa sc/source sc/uiconfig
Caolán McNamara
caolanm at redhat.com
Sun May 20 19:15:49 UTC 2018
sc/inc/scabstdlg.hxx | 2 -
sc/qa/unit/screenshots/screenshots.cxx | 2 -
sc/source/ui/attrdlg/scdlgfact.cxx | 13 +++++---
sc/source/ui/attrdlg/scdlgfact.hxx | 10 +++++-
sc/source/ui/dbgui/dapidata.cxx | 49 ++++++++++++-------------------
sc/source/ui/inc/dapidata.hxx | 18 ++++-------
sc/source/ui/view/cellsh1.cxx | 9 +----
sc/uiconfig/scalc/ui/selectdatasource.ui | 26 ++++++----------
8 files changed, 57 insertions(+), 72 deletions(-)
New commits:
commit 7b4a3cefdd1137ce2e42616b2fb1dcf77d01db7b
Author: Caolán McNamara <caolanm at redhat.com>
Date: Sat May 19 21:21:11 2018 +0100
weld ScDataPilotDatabaseDlg
Change-Id: Ie8e9914bb8042e33a2ab2a1e07bb0203a54d5422
Reviewed-on: https://gerrit.libreoffice.org/54584
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/inc/scabstdlg.hxx b/sc/inc/scabstdlg.hxx
index 7032ab97c8c7..b1b33b94b162 100644
--- a/sc/inc/scabstdlg.hxx
+++ b/sc/inc/scabstdlg.hxx
@@ -414,7 +414,7 @@ public:
virtual VclPtr<AbstractScCondFormatManagerDlg> CreateScCondFormatMgrDlg(vcl::Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList ) = 0;
- virtual VclPtr<AbstractScDataPilotDatabaseDlg> CreateScDataPilotDatabaseDlg(vcl::Window* pParent) = 0;
+ virtual VclPtr<AbstractScDataPilotDatabaseDlg> CreateScDataPilotDatabaseDlg(weld::Window* pParent) = 0;
virtual VclPtr<AbstractScDataPilotSourceTypeDlg> CreateScDataPilotSourceTypeDlg(weld::Window* pParent,
bool bEnableExternal) = 0;
diff --git a/sc/qa/unit/screenshots/screenshots.cxx b/sc/qa/unit/screenshots/screenshots.cxx
index 5438f738db7b..59a10ef21dd9 100644
--- a/sc/qa/unit/screenshots/screenshots.cxx
+++ b/sc/qa/unit/screenshots/screenshots.cxx
@@ -178,7 +178,7 @@ VclPtr<VclAbstractDialog> ScScreenshotTest::createDialogByID(sal_uInt32 nID)
case 4: // "modules/scalc/ui/selectdatasource.ui"
{
- pReturnDialog = mpFact->CreateScDataPilotDatabaseDlg(mpViewShell->GetDialogParent());
+ pReturnDialog = mpFact->CreateScDataPilotDatabaseDlg(mpViewShell->GetFrameWeld());
break;
}
case 5: // "modules/scalc/ui/selectsource.ui"
diff --git a/sc/source/ui/attrdlg/scdlgfact.cxx b/sc/source/ui/attrdlg/scdlgfact.cxx
index dfedd10a54a2..2d00bc0ed0a7 100644
--- a/sc/source/ui/attrdlg/scdlgfact.cxx
+++ b/sc/source/ui/attrdlg/scdlgfact.cxx
@@ -84,7 +84,11 @@ short AbstractScColRowLabelDlg_Impl::Execute()
}
IMPL_ABSTDLG_BASE(AbstractScCondFormatManagerDlg_Impl);
-IMPL_ABSTDLG_BASE(AbstractScDataPilotDatabaseDlg_Impl);
+
+short AbstractScDataPilotDatabaseDlg_Impl::Execute()
+{
+ return m_xDlg->run();
+}
short AbstractScDataPilotSourceTypeDlg_Impl::Execute()
{
@@ -255,7 +259,7 @@ bool AbstractScColRowLabelDlg_Impl::IsRow()
void AbstractScDataPilotDatabaseDlg_Impl::GetValues( ScImportSourceDesc& rDesc )
{
- pDlg->GetValues(rDesc);
+ m_xDlg->GetValues(rDesc);
}
bool AbstractScDataPilotSourceTypeDlg_Impl::IsDatabase() const
@@ -719,10 +723,9 @@ VclPtr<AbstractScCondFormatManagerDlg> ScAbstractDialogFactory_Impl::CreateScCon
return VclPtr<AbstractScCondFormatManagerDlg_Impl>::Create( pDlg );
}
-VclPtr<AbstractScDataPilotDatabaseDlg> ScAbstractDialogFactory_Impl::CreateScDataPilotDatabaseDlg(vcl::Window* pParent)
+VclPtr<AbstractScDataPilotDatabaseDlg> ScAbstractDialogFactory_Impl::CreateScDataPilotDatabaseDlg(weld::Window* pParent)
{
- VclPtr<ScDataPilotDatabaseDlg> pDlg = VclPtr<ScDataPilotDatabaseDlg>::Create( pParent );
- return VclPtr<AbstractScDataPilotDatabaseDlg_Impl>::Create( pDlg );
+ return VclPtr<AbstractScDataPilotDatabaseDlg_Impl>::Create(new ScDataPilotDatabaseDlg(pParent));
}
VclPtr<AbstractScDataPilotSourceTypeDlg> ScAbstractDialogFactory_Impl::CreateScDataPilotSourceTypeDlg(
diff --git a/sc/source/ui/attrdlg/scdlgfact.hxx b/sc/source/ui/attrdlg/scdlgfact.hxx
index a27a52ab26d7..50f206cb5ac6 100644
--- a/sc/source/ui/attrdlg/scdlgfact.hxx
+++ b/sc/source/ui/attrdlg/scdlgfact.hxx
@@ -142,7 +142,13 @@ class AbstractScCondFormatManagerDlg_Impl : public AbstractScCondFormatManagerDl
class AbstractScDataPilotDatabaseDlg_Impl :public AbstractScDataPilotDatabaseDlg
{
- DECL_ABSTDLG_BASE(AbstractScDataPilotDatabaseDlg_Impl, ScDataPilotDatabaseDlg)
+ std::unique_ptr<ScDataPilotDatabaseDlg> m_xDlg;
+public:
+ explicit AbstractScDataPilotDatabaseDlg_Impl(ScDataPilotDatabaseDlg* p)
+ : m_xDlg(p)
+ {
+ }
+ virtual short Execute() override;
virtual void GetValues( ScImportSourceDesc& rDesc ) override;
};
@@ -526,7 +532,7 @@ public:
virtual VclPtr<AbstractScCondFormatManagerDlg> CreateScCondFormatMgrDlg(vcl::Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList ) override;
- virtual VclPtr<AbstractScDataPilotDatabaseDlg> CreateScDataPilotDatabaseDlg(vcl::Window* pParent) override;
+ virtual VclPtr<AbstractScDataPilotDatabaseDlg> CreateScDataPilotDatabaseDlg(weld::Window* pParent) override;
virtual VclPtr<AbstractScDataPilotSourceTypeDlg> CreateScDataPilotSourceTypeDlg(weld::Window* pParent,
bool bEnableExternal) override;
diff --git a/sc/source/ui/dbgui/dapidata.cxx b/sc/source/ui/dbgui/dapidata.cxx
index 4e6e36e5eee8..b75b19609916 100644
--- a/sc/source/ui/dbgui/dapidata.cxx
+++ b/sc/source/ui/dbgui/dapidata.cxx
@@ -42,15 +42,13 @@ using namespace com::sun::star;
#define DP_TYPELIST_QUERY 1
#define DP_TYPELIST_SQLNAT 3
-ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( vcl::Window* pParent ) :
- ModalDialog(pParent, "SelectDataSourceDialog",
- "modules/scalc/ui/selectdatasource.ui")
+ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg(weld::Window* pParent)
+ : GenericDialogController(pParent, "modules/scalc/ui/selectdatasource.ui", "SelectDataSourceDialog")
+ , m_xLbDatabase(m_xBuilder->weld_combo_box_text("database"))
+ , m_xCbObject(m_xBuilder->weld_combo_box_text("datasource"))
+ , m_xLbType(m_xBuilder->weld_combo_box_text("type"))
{
- get(m_pLbDatabase, "database");
- get(m_pCbObject, "datasource");
- get(m_pLbType, "type");
-
- WaitObject aWait( this ); // initializing the database service the first time takes a while
+ weld::WaitObject aWait(pParent); // initializing the database service the first time takes a while
try
{
@@ -64,7 +62,7 @@ ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( vcl::Window* pParent ) :
for (long nPos = 0; nPos < nCount; nPos++)
{
OUString aName = pArray[nPos];
- m_pLbDatabase->InsertEntry( aName );
+ m_xLbDatabase->append_text(aName);
}
}
catch(uno::Exception&)
@@ -72,34 +70,25 @@ ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( vcl::Window* pParent ) :
OSL_FAIL("exception in database");
}
- m_pLbDatabase->SelectEntryPos( 0 );
- m_pLbType->SelectEntryPos( 0 );
+ m_xLbDatabase->set_active(0);
+ m_xLbType->set_active(0);
FillObjects();
- m_pLbDatabase->SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
- m_pLbType->SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
+ m_xLbDatabase->connect_changed( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
+ m_xLbType->connect_changed( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
}
ScDataPilotDatabaseDlg::~ScDataPilotDatabaseDlg()
{
- disposeOnce();
-}
-
-void ScDataPilotDatabaseDlg::dispose()
-{
- m_pLbDatabase.clear();
- m_pCbObject.clear();
- m_pLbType.clear();
- ModalDialog::dispose();
}
void ScDataPilotDatabaseDlg::GetValues( ScImportSourceDesc& rDesc )
{
- const sal_Int32 nSelect = m_pLbType->GetSelectedEntryPos();
+ const sal_Int32 nSelect = m_xLbType->get_active();
- rDesc.aDBName = m_pLbDatabase->GetSelectedEntry();
- rDesc.aObject = m_pCbObject->GetText();
+ rDesc.aDBName = m_xLbDatabase->get_active_text();
+ rDesc.aObject = m_xCbObject->get_active_text();
if (rDesc.aDBName.isEmpty() || rDesc.aObject.isEmpty())
rDesc.nType = sheet::DataImportMode_NONE;
@@ -113,20 +102,20 @@ void ScDataPilotDatabaseDlg::GetValues( ScImportSourceDesc& rDesc )
rDesc.bNative = ( nSelect == DP_TYPELIST_SQLNAT );
}
-IMPL_LINK_NOARG(ScDataPilotDatabaseDlg, SelectHdl, ListBox&, void)
+IMPL_LINK_NOARG(ScDataPilotDatabaseDlg, SelectHdl, weld::ComboBoxText&, void)
{
FillObjects();
}
void ScDataPilotDatabaseDlg::FillObjects()
{
- m_pCbObject->Clear();
+ m_xCbObject->clear();
- OUString aDatabaseName = m_pLbDatabase->GetSelectedEntry();
+ OUString aDatabaseName = m_xLbDatabase->get_active_text();
if (aDatabaseName.isEmpty())
return;
- const sal_Int32 nSelect = m_pLbType->GetSelectedEntryPos();
+ const int nSelect = m_xLbType->get_active();
if ( nSelect > DP_TYPELIST_QUERY )
return; // only tables and queries
@@ -181,7 +170,7 @@ void ScDataPilotDatabaseDlg::FillObjects()
for( long nPos=0; nPos<nCount; nPos++ )
{
OUString aName = pArray[nPos];
- m_pCbObject->InsertEntry( aName );
+ m_xCbObject->append_text(aName);
}
}
catch(uno::Exception&)
diff --git a/sc/source/ui/inc/dapidata.hxx b/sc/source/ui/inc/dapidata.hxx
index 6216d4f6fc2f..f916a834af89 100644
--- a/sc/source/ui/inc/dapidata.hxx
+++ b/sc/source/ui/inc/dapidata.hxx
@@ -20,28 +20,24 @@
#ifndef INCLUDED_SC_SOURCE_UI_INC_DAPIDATA_HXX
#define INCLUDED_SC_SOURCE_UI_INC_DAPIDATA_HXX
-#include <vcl/button.hxx>
-#include <vcl/dialog.hxx>
-#include <vcl/lstbox.hxx>
-#include <vcl/combobox.hxx>
+#include <vcl/weld.hxx>
struct ScImportSourceDesc;
-class ScDataPilotDatabaseDlg : public ModalDialog
+class ScDataPilotDatabaseDlg : public weld::GenericDialogController
{
private:
- VclPtr<ListBox> m_pLbDatabase;
- VclPtr<ComboBox> m_pCbObject;
- VclPtr<ListBox> m_pLbType;
+ std::unique_ptr<weld::ComboBoxText> m_xLbDatabase;
+ std::unique_ptr<weld::ComboBoxText> m_xCbObject;
+ std::unique_ptr<weld::ComboBoxText> m_xLbType;
void FillObjects();
- DECL_LINK( SelectHdl, ListBox&, void );
+ DECL_LINK(SelectHdl, weld::ComboBoxText&, void);
public:
- ScDataPilotDatabaseDlg(vcl::Window* pParent);
+ ScDataPilotDatabaseDlg(weld::Window* pParent);
virtual ~ScDataPilotDatabaseDlg() override;
- virtual void dispose() override;
void GetValues( ScImportSourceDesc& rDesc );
};
diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx
index 55fa9e421210..896465c74933 100644
--- a/sc/source/ui/view/cellsh1.cxx
+++ b/sc/source/ui/view/cellsh1.cxx
@@ -2861,13 +2861,10 @@ void ScCellShell::ExecuteDataPilotDialog()
}
else if ( pTypeDlg->IsDatabase() )
{
- OSL_ENSURE(pFact, "ScAbstractFactory create fail!");
-
+ assert(pFact && "ScAbstractFactory create fail!");
ScopedVclPtr<AbstractScDataPilotDatabaseDlg> pDataDlg(
- pFact->CreateScDataPilotDatabaseDlg(
- pTabViewShell->GetDialogParent()));
-
- OSL_ENSURE(pDataDlg, "Dialog create fail!");
+ pFact->CreateScDataPilotDatabaseDlg(pTabViewShell->GetFrameWeld()));
+ assert(pDataDlg && "Dialog create fail!");
if ( pDataDlg->Execute() == RET_OK )
{
ScImportSourceDesc aImpDesc(pDoc);
diff --git a/sc/uiconfig/scalc/ui/selectdatasource.ui b/sc/uiconfig/scalc/ui/selectdatasource.ui
index 38f63fa54417..0bd178bb50e7 100644
--- a/sc/uiconfig/scalc/ui/selectdatasource.ui
+++ b/sc/uiconfig/scalc/ui/selectdatasource.ui
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.20.4 -->
<interface domain="sc">
<requires lib="gtk+" version="3.18"/>
<object class="GtkDialog" id="SelectDataSourceDialog">
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="title" translatable="yes" context="selectdatasource|SelectDataSourceDialog">Select Data Source</property>
+ <property name="modal">True</property>
+ <property name="default_width">0</property>
+ <property name="default_height">0</property>
<property name="type_hint">dialog</property>
<child internal-child="vbox">
<object class="GtkBox" id="dialog-vbox3">
@@ -95,32 +98,28 @@
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">0</property>
<property name="label" translatable="yes" context="selectdatasource|label2">_Database:</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">database</property>
+ <property name="xalign">0</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">0</property>
<property name="label" translatable="yes" context="selectdatasource|label4">_Type:</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">type</property>
+ <property name="xalign">0</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">1</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -132,8 +131,6 @@
<packing>
<property name="left_attach">1</property>
<property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -151,24 +148,20 @@
<packing>
<property name="left_attach">1</property>
<property name="top_attach">1</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label3">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">0</property>
<property name="label" translatable="yes" context="selectdatasource|label3">Data so_urce:</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">datasource</property>
+ <property name="xalign">0</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -186,8 +179,6 @@
<packing>
<property name="left_attach">1</property>
<property name="top_attach">2</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
</object>
@@ -218,5 +209,8 @@
<action-widget response="-6">cancel</action-widget>
<action-widget response="-11">help</action-widget>
</action-widgets>
+ <child>
+ <placeholder/>
+ </child>
</object>
</interface>
More information about the Libreoffice-commits
mailing list