summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-12-20 14:23:16 +0000
committerCaolán McNamara <caolanm@redhat.com>2019-12-21 11:25:19 +0100
commitf9a2639d6a12010dd9e388fc46edc96ebab6db50 (patch)
treee97a459f04ca37649f62d599e4a5aaf105831f51
parentb7fa8e18337b38e04279f477539d51f3d0e9b433 (diff)
weld ChartSeriesPanel
Change-Id: If035b4017eab094642d805cfbc724d6cdd5a115c Reviewed-on: https://gerrit.libreoffice.org/85608 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--chart2/source/controller/sidebar/ChartSeriesPanel.cxx115
-rw-r--r--chart2/source/controller/sidebar/ChartSeriesPanel.hxx29
-rw-r--r--chart2/uiconfig/ui/sidebarseries.ui5
3 files changed, 70 insertions, 79 deletions
diff --git a/chart2/source/controller/sidebar/ChartSeriesPanel.cxx b/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
index d2ce4e198fcc..33f0e1663585 100644
--- a/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
+++ b/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
@@ -29,8 +29,6 @@
#include "ChartSeriesPanel.hxx"
#include <ChartController.hxx>
-#include <vcl/fixed.hxx>
-#include <vcl/lstbox.hxx>
#include <DataSeriesHelper.hxx>
#include <RegressionCurveHelper.hxx>
@@ -276,26 +274,22 @@ ChartSeriesPanel::ChartSeriesPanel(
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
ChartController* pController)
- : PanelLayout(pParent, "ChartSeriesPanel", "modules/schart/ui/sidebarseries.ui", rxFrame),
- mxModel(pController->getModel()),
- mxListener(new ChartSidebarModifyListener(this)),
- mxSelectionListener(new ChartSidebarSelectionListener(this, OBJECTTYPE_DATA_SERIES)),
- mbModelValid(true)
+ : PanelLayout(pParent, "ChartSeriesPanel", "modules/schart/ui/sidebarseries.ui", rxFrame, true)
+ , mxCBLabel(m_xBuilder->weld_check_button("checkbutton_label"))
+ , mxCBTrendline(m_xBuilder->weld_check_button("checkbutton_trendline"))
+ , mxCBXError(m_xBuilder->weld_check_button("checkbutton_x_error"))
+ , mxCBYError(m_xBuilder->weld_check_button("checkbutton_y_error"))
+ , mxRBPrimaryAxis(m_xBuilder->weld_radio_button("radiobutton_primary_axis"))
+ , mxRBSecondaryAxis(m_xBuilder->weld_radio_button("radiobutton_secondary_axis"))
+ , mxBoxLabelPlacement(m_xBuilder->weld_widget("datalabel_box"))
+ , mxLBLabelPlacement(m_xBuilder->weld_combo_box("comboboxtext_label"))
+ , mxFTSeriesName(m_xBuilder->weld_label("label_series_name"))
+ , mxFTSeriesTemplate(m_xBuilder->weld_label("label_series_tmpl"))
+ , mxModel(pController->getModel())
+ , mxListener(new ChartSidebarModifyListener(this))
+ , mxSelectionListener(new ChartSidebarSelectionListener(this, OBJECTTYPE_DATA_SERIES))
+ , mbModelValid(true)
{
- get(mpCBLabel, "checkbutton_label");
- get(mpCBTrendline, "checkbutton_trendline");
- get(mpCBXError, "checkbutton_x_error");
- get(mpCBYError, "checkbutton_y_error");
-
- get(mpRBPrimaryAxis, "radiobutton_primary_axis");
- get(mpRBSecondaryAxis, "radiobutton_secondary_axis");
-
- get(mpBoxLabelPlacement, "datalabel_box");
- get(mpLBLabelPlacement, "comboboxtext_label");
-
- get(mpFTSeriesName, "label_series_name");
- get(mpFTSeriesTemplate, "label_series_tmpl");
-
Initialize();
}
@@ -312,19 +306,19 @@ void ChartSeriesPanel::dispose()
if (xSelectionSupplier.is())
xSelectionSupplier->removeSelectionChangeListener(mxSelectionListener);
- mpCBLabel.clear();
- mpCBTrendline.clear();
- mpCBXError.clear();
- mpCBYError.clear();
+ mxCBLabel.reset();
+ mxCBTrendline.reset();
+ mxCBXError.reset();
+ mxCBYError.reset();
- mpRBPrimaryAxis.clear();
- mpRBSecondaryAxis.clear();
+ mxRBPrimaryAxis.reset();
+ mxRBSecondaryAxis.reset();
- mpBoxLabelPlacement.clear();
- mpLBLabelPlacement.clear();
+ mxBoxLabelPlacement.reset();
+ mxLBLabelPlacement.reset();
- mpFTSeriesName.clear();
- mpFTSeriesTemplate.clear();
+ mxFTSeriesName.reset();
+ mxFTSeriesTemplate.reset();
PanelLayout::dispose();
}
@@ -339,17 +333,17 @@ void ChartSeriesPanel::Initialize()
updateData();
- Link<Button*,void> aLink = LINK(this, ChartSeriesPanel, CheckBoxHdl);
- mpCBLabel->SetClickHdl(aLink);
- mpCBTrendline->SetClickHdl(aLink);
- mpCBXError->SetClickHdl(aLink);
- mpCBYError->SetClickHdl(aLink);
+ Link<weld::ToggleButton&,void> aLink = LINK(this, ChartSeriesPanel, CheckBoxHdl);
+ mxCBLabel->connect_toggled(aLink);
+ mxCBTrendline->connect_toggled(aLink);
+ mxCBXError->connect_toggled(aLink);
+ mxCBYError->connect_toggled(aLink);
- Link<RadioButton&,void> aLink2 = LINK(this, ChartSeriesPanel, RadioBtnHdl);
- mpRBPrimaryAxis->SetToggleHdl(aLink2);
- mpRBSecondaryAxis->SetToggleHdl(aLink2);
+ Link<weld::ToggleButton&,void> aLink2 = LINK(this, ChartSeriesPanel, RadioBtnHdl);
+ mxRBPrimaryAxis->connect_toggled(aLink2);
+ mxRBSecondaryAxis->connect_toggled(aLink2);
- mpLBLabelPlacement->SetSelectHdl(LINK(this, ChartSeriesPanel, ListBoxHdl));
+ mxLBLabelPlacement->connect_changed(LINK(this, ChartSeriesPanel, ListBoxHdl));
}
void ChartSeriesPanel::updateData()
@@ -360,21 +354,21 @@ void ChartSeriesPanel::updateData()
OUString aCID = getCID(mxModel);
SolarMutexGuard aGuard;
bool bLabelVisible = isDataLabelVisible(mxModel, aCID);
- mpCBLabel->Check(bLabelVisible);
- mpCBTrendline->Check(isTrendlineVisible(mxModel, aCID));
- mpCBXError->Check(isErrorBarVisible(mxModel, aCID, false));
- mpCBYError->Check(isErrorBarVisible(mxModel, aCID, true));
+ mxCBLabel->set_active(bLabelVisible);
+ mxCBTrendline->set_active(isTrendlineVisible(mxModel, aCID));
+ mxCBXError->set_active(isErrorBarVisible(mxModel, aCID, false));
+ mxCBYError->set_active(isErrorBarVisible(mxModel, aCID, true));
bool bPrimaryAxis = isPrimaryAxis(mxModel, aCID);
- mpRBPrimaryAxis->Check(bPrimaryAxis);
- mpRBSecondaryAxis->Check(!bPrimaryAxis);
+ mxRBPrimaryAxis->set_active(bPrimaryAxis);
+ mxRBSecondaryAxis->set_active(!bPrimaryAxis);
- mpBoxLabelPlacement->Enable(bLabelVisible);
- mpLBLabelPlacement->SelectEntryPos(getDataLabelPlacement(mxModel, aCID));
+ mxBoxLabelPlacement->set_sensitive(bLabelVisible);
+ mxLBLabelPlacement->set_active(getDataLabelPlacement(mxModel, aCID));
- OUString aFrameLabel = mpFTSeriesTemplate->GetText();
+ OUString aFrameLabel = mxFTSeriesTemplate->get_label();
aFrameLabel = aFrameLabel.replaceFirst("%1", getSeriesLabel(mxModel, aCID));
- mpFTSeriesName->SetText(aFrameLabel);
+ mxFTSeriesName->set_label(aFrameLabel);
}
VclPtr<vcl::Window> ChartSeriesPanel::Create (
@@ -441,34 +435,33 @@ void ChartSeriesPanel::selectionChanged(bool bCorrectType)
updateData();
}
-IMPL_LINK(ChartSeriesPanel, CheckBoxHdl, Button*, pButton, void)
+IMPL_LINK(ChartSeriesPanel, CheckBoxHdl, weld::ToggleButton&, rCheckBox, void)
{
- CheckBox* pCheckBox = static_cast<CheckBox*>(pButton);
- bool bChecked = pCheckBox->IsChecked();
+ bool bChecked = rCheckBox.get_active();
OUString aCID = getCID(mxModel);
- if (pCheckBox == mpCBLabel.get())
+ if (&rCheckBox == mxCBLabel.get())
setDataLabelVisible(mxModel, aCID, bChecked);
- else if (pCheckBox == mpCBTrendline.get())
+ else if (&rCheckBox == mxCBTrendline.get())
setTrendlineVisible(mxModel, aCID, bChecked);
- else if (pCheckBox == mpCBXError.get())
+ else if (&rCheckBox == mxCBXError.get())
setErrorBarVisible(mxModel, aCID, false, bChecked);
- else if (pCheckBox == mpCBYError.get())
+ else if (&rCheckBox == mxCBYError.get())
setErrorBarVisible(mxModel, aCID, true, bChecked);
}
-IMPL_LINK_NOARG(ChartSeriesPanel, RadioBtnHdl, RadioButton&, void)
+IMPL_LINK_NOARG(ChartSeriesPanel, RadioBtnHdl, weld::ToggleButton&, void)
{
OUString aCID = getCID(mxModel);
- bool bChecked = mpRBPrimaryAxis->IsChecked();
+ bool bChecked = mxRBPrimaryAxis->get_active();
setAttachedAxisType(mxModel, aCID, bChecked);
}
-IMPL_LINK_NOARG(ChartSeriesPanel, ListBoxHdl, ListBox&, void)
+IMPL_LINK_NOARG(ChartSeriesPanel, ListBoxHdl, weld::ComboBox&, void)
{
OUString aCID = getCID(mxModel);
- sal_Int32 nPos = mpLBLabelPlacement->GetSelectedEntryPos();
+ sal_Int32 nPos = mxLBLabelPlacement->get_active();
setDataLabelPlacement(mxModel, aCID, nPos);
}
diff --git a/chart2/source/controller/sidebar/ChartSeriesPanel.hxx b/chart2/source/controller/sidebar/ChartSeriesPanel.hxx
index 83dcbffd70ae..37a321af2b83 100644
--- a/chart2/source/controller/sidebar/ChartSeriesPanel.hxx
+++ b/chart2/source/controller/sidebar/ChartSeriesPanel.hxx
@@ -23,7 +23,6 @@
#include <sfx2/sidebar/IContextChangeReceiver.hxx>
#include <sfx2/sidebar/SidebarModelUpdate.hxx>
#include <svx/sidebar/PanelLayout.hxx>
-#include <vcl/layout.hxx>
#include "ChartSidebarModifyListener.hxx"
#include "ChartSidebarSelectionListener.hxx"
@@ -31,8 +30,6 @@
namespace com { namespace sun { namespace star { namespace util { class XModifyListener; } } } }
namespace com { namespace sun { namespace star { namespace view { class XSelectionChangeListener; } } } }
-class ListBox;
-
namespace chart {
class ChartController;
@@ -80,19 +77,19 @@ public:
private:
//ui controls
- VclPtr<CheckBox> mpCBLabel;
- VclPtr<CheckBox> mpCBTrendline;
- VclPtr<CheckBox> mpCBXError;
- VclPtr<CheckBox> mpCBYError;
+ std::unique_ptr<weld::CheckButton> mxCBLabel;
+ std::unique_ptr<weld::CheckButton> mxCBTrendline;
+ std::unique_ptr<weld::CheckButton> mxCBXError;
+ std::unique_ptr<weld::CheckButton> mxCBYError;
- VclPtr<RadioButton> mpRBPrimaryAxis;
- VclPtr<RadioButton> mpRBSecondaryAxis;
+ std::unique_ptr<weld::RadioButton> mxRBPrimaryAxis;
+ std::unique_ptr<weld::RadioButton> mxRBSecondaryAxis;
- VclPtr<VclHBox> mpBoxLabelPlacement;
- VclPtr<ListBox> mpLBLabelPlacement;
+ std::unique_ptr<weld::Widget> mxBoxLabelPlacement;
+ std::unique_ptr<weld::ComboBox> mxLBLabelPlacement;
- VclPtr<FixedText> mpFTSeriesName;
- VclPtr<FixedText> mpFTSeriesTemplate;
+ std::unique_ptr<weld::Label> mxFTSeriesName;
+ std::unique_ptr<weld::Label> mxFTSeriesTemplate;
css::uno::Reference<css::frame::XModel> mxModel;
css::uno::Reference<css::util::XModifyListener> mxListener;
@@ -102,9 +99,9 @@ private:
void Initialize();
- DECL_LINK(CheckBoxHdl, Button*, void);
- DECL_LINK(RadioBtnHdl, RadioButton&, void);
- DECL_LINK(ListBoxHdl, ListBox&, void);
+ DECL_LINK(CheckBoxHdl, weld::ToggleButton&, void);
+ DECL_LINK(RadioBtnHdl, weld::ToggleButton&, void);
+ DECL_LINK(ListBoxHdl, weld::ComboBox&, void);
};
} } // end of namespace ::chart::sidebar
diff --git a/chart2/uiconfig/ui/sidebarseries.ui b/chart2/uiconfig/ui/sidebarseries.ui
index 31dca273bb77..568569464a9e 100644
--- a/chart2/uiconfig/ui/sidebarseries.ui
+++ b/chart2/uiconfig/ui/sidebarseries.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.22.1 -->
<interface domain="chart">
<requires lib="gtk+" version="3.18"/>
<object class="GtkGrid" id="ChartSeriesPanel">
@@ -9,9 +9,9 @@
<object class="GtkBox" id="box1">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="border_width">6</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
- <property name="border_width">6</property>
<child>
<placeholder/>
</child>
@@ -242,6 +242,7 @@
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
+ <property name="group">radiobutton_primary_axis</property>
</object>
<packing>
<property name="expand">False</property>