summaryrefslogtreecommitdiff
path: root/chart2/source/controller/dialogs/dlg_DataSource.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'chart2/source/controller/dialogs/dlg_DataSource.cxx')
-rw-r--r--chart2/source/controller/dialogs/dlg_DataSource.cxx72
1 files changed, 34 insertions, 38 deletions
diff --git a/chart2/source/controller/dialogs/dlg_DataSource.cxx b/chart2/source/controller/dialogs/dlg_DataSource.cxx
index b196b24d98d8..c00698fef60d 100644
--- a/chart2/source/controller/dialogs/dlg_DataSource.cxx
+++ b/chart2/source/controller/dialogs/dlg_DataSource.cxx
@@ -18,22 +18,20 @@
*/
#include <com/sun/star/chart2/XChartDocument.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <dlg_DataSource.hxx>
#include <ChartTypeTemplateProvider.hxx>
-#include <DiagramHelper.hxx>
+#include <ChartTypeTemplate.hxx>
+#include <Diagram.hxx>
#include "DialogModel.hxx"
+#include <ChartModel.hxx>
#include "tp_RangeChooser.hxx"
#include "tp_DataSource.hxx"
using namespace ::com::sun::star;
-using namespace ::com::sun::star::chart2;
using namespace ::chart;
-using ::com::sun::star::uno::Reference;
-
namespace chart
{
@@ -43,36 +41,33 @@ class DocumentChartTypeTemplateProvider : public ChartTypeTemplateProvider
{
public:
explicit DocumentChartTypeTemplateProvider(
- const Reference< chart2::XChartDocument > & xDoc );
+ const rtl::Reference<::chart::ChartModel> & xDoc );
// ____ ChartTypeTemplateProvider ____
- virtual Reference< chart2::XChartTypeTemplate > getCurrentTemplate() const override;
+ virtual rtl::Reference< ::chart::ChartTypeTemplate > getCurrentTemplate() const override;
private:
- Reference< chart2::XChartTypeTemplate > m_xTemplate;
+ rtl::Reference< ::chart::ChartTypeTemplate > m_xTemplate;
};
}
DocumentChartTypeTemplateProvider::DocumentChartTypeTemplateProvider(
- const Reference< chart2::XChartDocument > & xDoc )
+ const rtl::Reference<::chart::ChartModel> & xDoc )
{
if( !xDoc.is())
return;
- Reference< chart2::XDiagram > xDia( xDoc->getFirstDiagram());
+ rtl::Reference< Diagram > xDia( xDoc->getFirstChartDiagram());
if( xDia.is())
{
- DiagramHelper::tTemplateWithServiceName aResult(
- DiagramHelper::getTemplateForDiagram(
- xDia,
- Reference< lang::XMultiServiceFactory >(
- xDoc->getChartTypeManager(), uno::UNO_QUERY ) ));
- m_xTemplate.set( aResult.first );
+ Diagram::tTemplateWithServiceName aResult(
+ xDia->getTemplate( xDoc->getTypeManager() ));
+ m_xTemplate = aResult.xChartTypeTemplate;
}
}
-Reference< chart2::XChartTypeTemplate > DocumentChartTypeTemplateProvider::getCurrentTemplate() const
+rtl::Reference< ::chart::ChartTypeTemplate > DocumentChartTypeTemplateProvider::getCurrentTemplate() const
{
return m_xTemplate;
}
@@ -80,26 +75,26 @@ Reference< chart2::XChartTypeTemplate > DocumentChartTypeTemplateProvider::getCu
sal_uInt16 DataSourceDialog::m_nLastPageId = 0;
DataSourceDialog::DataSourceDialog(weld::Window * pParent,
- const Reference< XChartDocument > & xChartDocument,
- const Reference< uno::XComponentContext > & xContext)
- : GenericDialogController(pParent, "modules/schart/ui/datarangedialog.ui",
- "DataRangeDialog")
+ const rtl::Reference<::chart::ChartModel> & xChartDocument)
+ : GenericDialogController(pParent, u"modules/schart/ui/datarangedialog.ui"_ustr,
+ u"DataRangeDialog"_ustr)
, m_apDocTemplateProvider(new DocumentChartTypeTemplateProvider(xChartDocument))
- , m_apDialogModel(new DialogModel(xChartDocument, xContext))
+ , m_apDialogModel(new DialogModel(xChartDocument))
, m_bRangeChooserTabIsValid(true)
, m_bDataSourceTabIsValid(true)
, m_bTogglingEnabled(true)
- , m_xTabControl(m_xBuilder->weld_notebook("tabcontrol"))
- , m_xBtnOK(m_xBuilder->weld_button("ok"))
+ , m_xTabControl(m_xBuilder->weld_notebook(u"tabcontrol"_ustr))
+ , m_xBtnOK(m_xBuilder->weld_button(u"ok"_ustr))
{
- m_xRangeChooserTabPage = std::make_unique<RangeChooserTabPage>(m_xTabControl->get_page("range"), this,
+ m_xRangeChooserTabPage = std::make_unique<RangeChooserTabPage>(m_xTabControl->get_page(u"range"_ustr), this,
*m_apDialogModel,
m_apDocTemplateProvider.get(), true /* bHideDescription */ );
- m_xDataSourceTabPage = std::make_unique<DataSourceTabPage>(m_xTabControl->get_page("series"), this,
+ m_xDataSourceTabPage = std::make_unique<DataSourceTabPage>(m_xTabControl->get_page(u"series"_ustr), this,
*m_apDialogModel,
m_apDocTemplateProvider.get(), true /* bHideDescription */ );
m_xTabControl->connect_enter_page(LINK(this, DataSourceDialog, ActivatePageHdl));
m_xTabControl->connect_leave_page(LINK(this, DataSourceDialog, DeactivatePageHdl));
+ m_xBtnOK->connect_clicked(LINK(this, DataSourceDialog, OkHdl));
ActivatePageHdl(m_xTabControl->get_current_page_ident());
if (m_nLastPageId != 0)
{
@@ -115,20 +110,21 @@ DataSourceDialog::~DataSourceDialog()
m_nLastPageId = m_xTabControl->get_current_page();
}
-short DataSourceDialog::run()
+void DataSourceDialog::commitPages()
{
- short nResult = GenericDialogController::run();
- if( nResult == RET_OK )
- {
- if( m_xRangeChooserTabPage )
- m_xRangeChooserTabPage->commitPage();
- if( m_xDataSourceTabPage )
- m_xDataSourceTabPage->commitPage();
- }
- return nResult;
+ if (m_xRangeChooserTabPage)
+ m_xRangeChooserTabPage->commitPage();
+ if (m_xDataSourceTabPage)
+ m_xDataSourceTabPage->commitPage();
+}
+
+IMPL_LINK_NOARG(DataSourceDialog, OkHdl, weld::Button&, void)
+{
+ commitPages();
+ m_xDialog->response(RET_OK);
}
-IMPL_LINK(DataSourceDialog, ActivatePageHdl, const OString&, rPage, void)
+IMPL_LINK(DataSourceDialog, ActivatePageHdl, const OUString&, rPage, void)
{
if (rPage == "range")
m_xRangeChooserTabPage->Activate();
@@ -137,7 +133,7 @@ IMPL_LINK(DataSourceDialog, ActivatePageHdl, const OString&, rPage, void)
}
// allow/disallow user to leave page
-IMPL_LINK_NOARG(DataSourceDialog, DeactivatePageHdl, const OString&, bool)
+IMPL_LINK_NOARG(DataSourceDialog, DeactivatePageHdl, const OUString&, bool)
{
return m_bTogglingEnabled;
}