[Libreoffice-commits] core.git: cui/source
Katarina Behrens
Katarina.Behrens at cib.de
Fri Mar 31 10:54:57 UTC 2017
cui/source/tabpages/tpgradnt.cxx | 9 ++++++++-
cui/source/tabpages/tphatch.cxx | 9 +++++++--
2 files changed, 15 insertions(+), 3 deletions(-)
New commits:
commit ff1f83dd08b7b0169301ffe0a53499a27af613b9
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date: Fri Mar 31 10:00:40 2017 +0200
tdf#105922: Apply custom gradient/hatch even if not saved as preset
Change-Id: Ide35eb2c186d1ef5daaf96b1bd6d52448dfe69f9
Reviewed-on: https://gerrit.libreoffice.org/35961
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens at cib.de>
diff --git a/cui/source/tabpages/tpgradnt.cxx b/cui/source/tabpages/tpgradnt.cxx
index 6bd9788d296b..505d156b4b3c 100644
--- a/cui/source/tabpages/tpgradnt.cxx
+++ b/cui/source/tabpages/tpgradnt.cxx
@@ -227,7 +227,7 @@ bool SvxGradientTabPage::FillItemSet( SfxItemSet* rSet )
{
std::unique_ptr<XGradient> pXGradient;
OUString aString;
- size_t nPos = m_pGradientLB->GetSelectItemPos();
+ size_t nPos = m_pGradientLB->IsNoSelection() ? VALUESET_ITEM_NOTFOUND : m_pGradientLB->GetSelectItemPos();
if( nPos != VALUESET_ITEM_NOTFOUND )
{
pXGradient.reset(new XGradient( m_pGradientList->GetGradient( static_cast<sal_uInt16>(nPos) )->GetGradient() ));
@@ -236,6 +236,7 @@ bool SvxGradientTabPage::FillItemSet( SfxItemSet* rSet )
else
// gradient was passed (unidentified)
{
+ aString = "gradient";
pXGradient.reset(new XGradient( m_pLbColorFrom->GetSelectEntryColor(),
m_pLbColorTo->GetSelectEntryColor(),
(css::awt::GradientStyle) m_pLbGradientType->GetSelectEntryPos(),
@@ -282,21 +283,26 @@ VclPtr<SfxTabPage> SvxGradientTabPage::Create( vcl::Window* pWindow,
IMPL_LINK( SvxGradientTabPage, ModifiedListBoxHdl_Impl, ListBox&, rListBox, void )
{
ModifiedHdl_Impl(&rListBox);
+ // gradient params changed, it is no longer one of the presets
+ m_pGradientLB->SetNoSelection();
}
IMPL_LINK( SvxGradientTabPage, ModifiedColorListBoxHdl_Impl, SvxColorListBox&, rListBox, void )
{
ModifiedHdl_Impl(&rListBox);
+ m_pGradientLB->SetNoSelection();
}
IMPL_LINK( SvxGradientTabPage, ModifiedEditHdl_Impl, Edit&, rBox, void )
{
ModifiedHdl_Impl(&rBox);
+ m_pGradientLB->SetNoSelection();
}
IMPL_LINK( SvxGradientTabPage, ModifiedSliderHdl_Impl, Slider*, rSlider, void )
{
ModifiedHdl_Impl(rSlider);
+ m_pGradientLB->SetNoSelection();
}
IMPL_LINK_NOARG( SvxGradientTabPage, ChangeAutoStepHdl_Impl, CheckBox&, void )
@@ -312,6 +318,7 @@ IMPL_LINK_NOARG( SvxGradientTabPage, ChangeAutoStepHdl_Impl, CheckBox&, void )
m_pMtrIncrement->Enable();
}
ModifiedHdl_Impl(m_pMtrIncrement);
+ m_pGradientLB->SetNoSelection();
}
void SvxGradientTabPage::ModifiedHdl_Impl( void* pControl )
diff --git a/cui/source/tabpages/tphatch.cxx b/cui/source/tabpages/tphatch.cxx
index 3c0c382e3e7b..a6e61d264537 100644
--- a/cui/source/tabpages/tphatch.cxx
+++ b/cui/source/tabpages/tphatch.cxx
@@ -253,13 +253,13 @@ bool SvxHatchTabPage::FillItemSet( SfxItemSet* rSet )
{
std::unique_ptr<XHatch> pXHatch;
OUString aString;
- size_t nPos = m_pHatchLB->GetSelectItemPos();
+ size_t nPos = m_pHatchLB->IsNoSelection() ? VALUESET_ITEM_NOTFOUND : m_pHatchLB->GetSelectItemPos();
if( nPos != VALUESET_ITEM_NOTFOUND )
{
pXHatch.reset(new XHatch( m_pHatchingList->GetHatch( static_cast<sal_uInt16>(nPos) )->GetHatch() ));
aString = m_pHatchLB->GetItemText( m_pHatchLB->GetSelectItemId() );
}
- // gradient has been (unidentified) passed
+ // unidentified hatch has been passed
else
{
pXHatch.reset(new XHatch( m_pLbLineColor->GetSelectEntryColor(),
@@ -309,11 +309,14 @@ VclPtr<SfxTabPage> SvxHatchTabPage::Create( vcl::Window* pWindow,
IMPL_LINK( SvxHatchTabPage, ModifiedListBoxHdl_Impl, ListBox&, rListBox, void )
{
ModifiedHdl_Impl(&rListBox);
+ // hatch params have changed, it is no longer one of the presets
+ m_pHatchLB->SetNoSelection();
}
IMPL_LINK( SvxHatchTabPage, ModifiedColorListBoxHdl_Impl, SvxColorListBox&, rListBox, void )
{
ModifiedHdl_Impl(&rListBox);
+ m_pHatchLB->SetNoSelection();
}
IMPL_LINK_NOARG( SvxHatchTabPage, ToggleHatchBackgroundColor_Impl, CheckBox&, void )
@@ -344,11 +347,13 @@ IMPL_LINK_NOARG( SvxHatchTabPage, ModifiedBackgroundHdl_Impl, SvxColorListBox&,
IMPL_LINK( SvxHatchTabPage, ModifiedEditHdl_Impl, Edit&, rEdit, void )
{
ModifiedHdl_Impl(&rEdit);
+ m_pHatchLB->SetNoSelection();
}
IMPL_LINK( SvxHatchTabPage, ModifiedSliderHdl_Impl, Slider*, rSlider, void )
{
ModifiedHdl_Impl(rSlider);
+ m_pHatchLB->SetNoSelection();
}
void SvxHatchTabPage::ModifiedHdl_Impl( void* p )
{
More information about the Libreoffice-commits
mailing list