diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2018-12-05 04:34:39 +0100 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2018-12-05 15:43:42 +0100 |
commit | 19b2ed4dee1ec33ad55473d43bfcd0bfa194cbee (patch) | |
tree | 84652611e1378794544ce26d653ba3c4f3a33f27 /chart2/source/controller | |
parent | c32a4c2fac32b766a05473d037d73cbcd972dadd (diff) |
related tdf#51671, add UI options for new "hide legend entry" feature
Change-Id: I4a9025e317dbd93fb45e676f266c555c72f4d18b
Reviewed-on: https://gerrit.libreoffice.org/64614
Tested-by: Jenkins
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'chart2/source/controller')
5 files changed, 32 insertions, 1 deletions
diff --git a/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx b/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx index 2cab39c84e8e..91f2255cf99e 100644 --- a/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx +++ b/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx @@ -53,6 +53,7 @@ SchOptionTabPage::SchOptionTabPage(TabPageParent pWindow,const SfxItemSet& rInAt , m_xRB_AssumeZero(m_xBuilder->weld_radio_button("RB_ASSUME_ZERO")) , m_xRB_ContinueLine(m_xBuilder->weld_radio_button("RB_CONTINUE_LINE")) , m_xCBIncludeHiddenCells(m_xBuilder->weld_check_button("CB_INCLUDE_HIDDEN_CELLS")) + , m_xCBHideLegendEntry(m_xBuilder->weld_check_button("CB_LEGEND_ENTRY_HIDDEN")) { m_xRbtAxis1->connect_toggled(LINK(this, SchOptionTabPage, EnableHdl)); m_xRbtAxis2->connect_toggled(LINK(this, SchOptionTabPage, EnableHdl)); @@ -108,6 +109,9 @@ bool SchOptionTabPage::FillItemSet(SfxItemSet* rOutAttrs) if (m_xCBIncludeHiddenCells->get_visible()) rOutAttrs->Put(SfxBoolItem(SCHATTR_INCLUDE_HIDDEN_CELLS, m_xCBIncludeHiddenCells->get_active())); + if(m_xCBHideLegendEntry->get_visible()) + rOutAttrs->Put(SfxBoolItem(SCHATTR_HIDE_LEGEND_ENTRY, m_xCBHideLegendEntry->get_active())); + return true; } @@ -215,6 +219,12 @@ void SchOptionTabPage::Reset(const SfxItemSet* rInAttrs) m_xGrpPlotOptions->show(false); } + if (rInAttrs->GetItemState(SCHATTR_HIDE_LEGEND_ENTRY, true, &pPoolItem) == SfxItemState::SET) + { + bool bVal = static_cast<const SfxBoolItem*>(pPoolItem)->GetValue(); + m_xCBHideLegendEntry->set_active(bVal); + } + AdaptControlPositionsAndVisibility(); } diff --git a/chart2/source/controller/dialogs/tp_SeriesToAxis.hxx b/chart2/source/controller/dialogs/tp_SeriesToAxis.hxx index 1f6a16aeac43..7ffbed77ca9d 100644 --- a/chart2/source/controller/dialogs/tp_SeriesToAxis.hxx +++ b/chart2/source/controller/dialogs/tp_SeriesToAxis.hxx @@ -70,6 +70,7 @@ private: //member std::unique_ptr<weld::RadioButton> m_xRB_AssumeZero; std::unique_ptr<weld::RadioButton> m_xRB_ContinueLine; std::unique_ptr<weld::CheckButton> m_xCBIncludeHiddenCells; + std::unique_ptr<weld::CheckButton> m_xCBHideLegendEntry; }; } //namespace chart diff --git a/chart2/source/controller/inc/SeriesOptionsItemConverter.hxx b/chart2/source/controller/inc/SeriesOptionsItemConverter.hxx index ad8fd31cfd20..378956c47212 100644 --- a/chart2/source/controller/inc/SeriesOptionsItemConverter.hxx +++ b/chart2/source/controller/inc/SeriesOptionsItemConverter.hxx @@ -74,6 +74,8 @@ private: bool m_bSupportingPlottingOfHiddenCells; bool m_bIncludeHiddenCells; + + bool m_bHideLegendEntry; }; } // namespace wrapper diff --git a/chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx b/chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx index b8c85f61c046..e7c0fca9b855 100644 --- a/chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx +++ b/chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx @@ -130,7 +130,8 @@ const sal_uInt16 nTextLabelWhichPairs[] = SCHATTR_CLOCKWISE,SCHATTR_CLOCKWISE, \ SCHATTR_MISSING_VALUE_TREATMENT,SCHATTR_MISSING_VALUE_TREATMENT, \ SCHATTR_AVAILABLE_MISSING_VALUE_TREATMENTS,SCHATTR_AVAILABLE_MISSING_VALUE_TREATMENTS, \ - SCHATTR_INCLUDE_HIDDEN_CELLS,SCHATTR_INCLUDE_HIDDEN_CELLS + SCHATTR_INCLUDE_HIDDEN_CELLS,SCHATTR_INCLUDE_HIDDEN_CELLS, \ + SCHATTR_HIDE_LEGEND_ENTRY,SCHATTR_HIDE_LEGEND_ENTRY const sal_uInt16 nSeriesOptionsWhichPairs[] = { diff --git a/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx b/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx index 7b98478e75b2..b289a16423ae 100644 --- a/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx +++ b/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx @@ -74,6 +74,7 @@ SeriesOptionsItemConverter::SeriesOptionsItemConverter( , m_nMissingValueTreatment(0) , m_bSupportingPlottingOfHiddenCells(false) , m_bIncludeHiddenCells(true) + , m_bHideLegendEntry(false) { try { @@ -156,6 +157,8 @@ SeriesOptionsItemConverter::SeriesOptionsItemConverter( { } } + + m_bHideLegendEntry = !xPropertySet->getPropertyValue("ShowLegendEntry").get<bool>(); } catch( const uno::Exception & ) { @@ -351,6 +354,15 @@ bool SeriesOptionsItemConverter::ApplySpecialItem( sal_uInt16 nWhichId, const Sf } } break; + case SCHATTR_HIDE_LEGEND_ENTRY: + { + bool bHideLegendEntry = static_cast<const SfxBoolItem &>(rItemSet.Get(nWhichId)).GetValue(); + if (bHideLegendEntry != m_bHideLegendEntry) + { + GetPropertySet()->setPropertyValue("ShowLegendEntry", css::uno::makeAny(!bHideLegendEntry)); + } + } + break; } return bChanged; } @@ -422,6 +434,11 @@ void SeriesOptionsItemConverter::FillSpecialItem( rOutItemSet.Put( SfxBoolItem(nWhichId, m_bIncludeHiddenCells) ); break; } + case SCHATTR_HIDE_LEGEND_ENTRY: + { + rOutItemSet.Put(SfxBoolItem(nWhichId, m_bHideLegendEntry)); + break; + } default: break; } |