summaryrefslogtreecommitdiff
path: root/svx/source/sidebar/paragraph
diff options
context:
space:
mode:
authorOliver-Rainer Wittmann <orw@apache.org>2013-04-24 14:24:02 +0000
committerOliver-Rainer Wittmann <orw@apache.org>2013-04-24 14:24:02 +0000
commitcc9eaeaaa2ab279db0bf9a8fa63034333dbdaae3 (patch)
tree9a1ad219ed7d74aa00600d0ea1f04b71587ef974 /svx/source/sidebar/paragraph
parent81e9ede3e748a40555e87efd1af19521dab5261d (diff)
122074: paragraph property panel - correct enable/disable of indentation increase/descrease controls
Notes
Diffstat (limited to 'svx/source/sidebar/paragraph')
-rwxr-xr-xsvx/source/sidebar/paragraph/ParaPropertyPanel.cxx35
1 files changed, 14 insertions, 21 deletions
diff --git a/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx b/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
index 5de6fba3a30a..a9276ab42d0e 100755
--- a/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
+++ b/svx/source/sidebar/paragraph/ParaPropertyPanel.cxx
@@ -1292,9 +1292,9 @@ void ParaPropertyPanel::StateChangedIndentImpl( sal_uInt16 /* nSID */, SfxItemSt
maTbxIndent_IncDec->Enable();
maTbxIndent_IncDec->EnableItem(ID_HANGING_INDENT, sal_True);
- if(maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Text)
- && maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Default)
- && maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Table))
+ if ( maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Text)
+ && maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Default)
+ && maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Table) )
{
maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_INC, sal_True);
maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_DEC, sal_True);
@@ -1419,27 +1419,20 @@ void ParaPropertyPanel::StateChangeOutLineImpl( sal_uInt16 nSID, SfxItemState eS
void ParaPropertyPanel::StateChangeIncDecImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState )
{
- if (nSID==SID_INC_INDENT)
+ if ( ( maContext.GetCombinedContext() == CombinedEnumContext(Application_Writer, Context_Text)
+ || maContext.GetCombinedContext() == CombinedEnumContext(Application_Writer, Context_Default)
+ || maContext.GetCombinedContext() == CombinedEnumContext(Application_Writer, Context_Table) )
+ && ( nSID == SID_INC_INDENT || nSID == SID_DEC_INDENT ) )
{
- if( pState && eState == SFX_ITEM_UNKNOWN )
- maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_INC, sal_True);
- else
- if( maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Text) &&
- maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Default) &&
- maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Table) )
- maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_INC, sal_False);
- }
- if (nSID==SID_DEC_INDENT)
- {
- if( pState && eState == SFX_ITEM_UNKNOWN )
- maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_DEC, sal_True);
- else
- if( maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Text) &&
- maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Default) &&
- maContext.GetCombinedContext() != CombinedEnumContext(Application_Writer, Context_Table) )
- maTbxIndent_IncDec->EnableItem(BT_TBX_INDENT_DEC, sal_False);
+ // Writer's text shell is the only one which provides reasonable states for Slots SID_INC_INDENT and SID_DEC_INDENT
+ // - namely SFX_ITEM_UNKNOWN and SFX_ITEM_DISABLED
+ maTbxIndent_IncDec->EnableItem(
+ nSID == SID_INC_INDENT ? BT_TBX_INDENT_INC : BT_TBX_INDENT_DEC,
+ ( pState && eState == SFX_ITEM_UNKNOWN ) ? sal_True : sal_False );
}
}
+
+
// Add toggle state for numbering and bullet icons
void ParaPropertyPanel::StateChangeBulletNumImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState )
{