From 4be6e7becec9413cfd22c06376031b02486145b2 Mon Sep 17 00:00:00 2001 From: Heena Gupta Date: Thu, 8 Jan 2015 17:53:28 +0530 Subject: fdo#87675: Disable 'edit' when next style is same as current one. Change-Id: Ifd149890460c44dc3eececc06a36f1b76d46929b Reviewed-on: https://gerrit.libreoffice.org/13811 Tested-by: Michael Stahl Reviewed-by: Michael Stahl --- include/sfx2/mgetempl.hxx | 1 + sfx2/source/dialog/mgetempl.cxx | 17 +++++++++++++++++ sfx2/uiconfig/ui/managestylepage.ui | 6 +----- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/include/sfx2/mgetempl.hxx b/include/sfx2/mgetempl.hxx index 12fafb48b187..fc6aefc8bdf6 100644 --- a/include/sfx2/mgetempl.hxx +++ b/include/sfx2/mgetempl.hxx @@ -70,6 +70,7 @@ friend class SfxStyleDialog; DECL_LINK( GetFocusHdl, Edit * ); DECL_LINK( LoseFocusHdl, Edit * ); + DECL_LINK( EditStyleSelectHdl_Impl, void * ); DECL_LINK( EditStyleHdl_Impl, void * ); void UpdateName_Impl(ListBox *, const OUString &rNew); diff --git a/sfx2/source/dialog/mgetempl.cxx b/sfx2/source/dialog/mgetempl.cxx index c9c83704073e..06e531afd637 100644 --- a/sfx2/source/dialog/mgetempl.cxx +++ b/sfx2/source/dialog/mgetempl.cxx @@ -82,6 +82,11 @@ SfxManageStyleSheetPage::SfxManageStyleSheetPage(vcl::Window* pParent, const Sfx // this Page needs ExchangeSupport SetExchangeSupport(); + if ( aFollow == aName ) + m_pEditStyleBtn->Disable(); + else + m_pEditStyleBtn->Enable(); + ResMgr* pResMgr = SfxGetpApp()->GetModule_Impl()->GetResMgr(); OSL_ENSURE( pResMgr, "No ResMgr in Module" ); pFamilies = new SfxStyleFamilies( ResId( DLG_STYLE_DESIGNER, *pResMgr ) ); @@ -228,6 +233,7 @@ SfxManageStyleSheetPage::SfxManageStyleSheetPage(vcl::Window* pParent, const Sfx // It is a style with auto update? (SW only) if(SfxItemState::SET == rAttrSet.GetItemState(SID_ATTR_AUTO_STYLE_UPDATE)) m_pAutoCB->Show(); + m_pFollowLb->SetSelectHdl( LINK( this, SfxManageStyleSheetPage, EditStyleSelectHdl_Impl ) ); m_pEditStyleBtn->SetClickHdl( LINK( this, SfxManageStyleSheetPage, EditStyleHdl_Impl ) ); } @@ -315,6 +321,17 @@ void SfxManageStyleSheetPage::SetDescriptionText_Impl() m_pDescFt->SetText( pStyle->GetDescription( eUnit ) ); } +IMPL_LINK_NOARG( SfxManageStyleSheetPage, EditStyleSelectHdl_Impl ) +{ + OUString aTemplName(m_pFollowLb->GetSelectEntry()); + OUString aEditTemplName(m_pNameRo->GetText()); + if (!( aTemplName == aEditTemplName)) + m_pEditStyleBtn->Enable(); + else + m_pEditStyleBtn->Disable(); + return 0; +} + IMPL_LINK_NOARG( SfxManageStyleSheetPage, EditStyleHdl_Impl ) { diff --git a/sfx2/uiconfig/ui/managestylepage.ui b/sfx2/uiconfig/ui/managestylepage.ui index 396fd3966951..0569c5fd0090 100644 --- a/sfx2/uiconfig/ui/managestylepage.ui +++ b/sfx2/uiconfig/ui/managestylepage.ui @@ -102,11 +102,7 @@ Edit Style True - True - True - True - True - True + False 2 -- cgit v1.2.3