diff options
Diffstat (limited to 'sw/source/uibase/shells/textsh1.cxx')
-rw-r--r-- | sw/source/uibase/shells/textsh1.cxx | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/sw/source/uibase/shells/textsh1.cxx b/sw/source/uibase/shells/textsh1.cxx index 76025c2af799..66b4f08dfd96 100644 --- a/sw/source/uibase/shells/textsh1.cxx +++ b/sw/source/uibase/shells/textsh1.cxx @@ -1175,26 +1175,28 @@ void SwTextShell::Execute(SfxRequest &rReq) break; case SID_ATTR_CHAR_COLOR_BACKGROUND: { + Color aSet; if(pItem) - { - Color aSet = ((const SvxColorItem*)pItem)->GetValue(); - SwEditWin& rEdtWin = GetView().GetEditWin(); - rEdtWin.SetTextBackColor(aSet); - SwApplyTemplate* pApply = rEdtWin.GetApplyTemplate(); + aSet = ((const SvxColorItem*)pItem)->GetValue(); + else + aSet = COL_TRANSPARENT; - if(!pApply && (rWrtSh.HasSelection() || rReq.IsAPI())) - { - SvxBrushItem aBrushItem(RES_CHRATR_BACKGROUND); - aBrushItem.SetColor(aSet); - rWrtSh.SetAttrItem( aBrushItem ); - } - else if(!pApply || pApply->nColor != SID_ATTR_CHAR_COLOR_BACKGROUND_EXT) - { - GetView().GetViewFrame()->GetDispatcher()->Execute(SID_ATTR_CHAR_COLOR_BACKGROUND_EXT); - } + SwEditWin& rEdtWin = GetView().GetEditWin(); + rEdtWin.SetTextBackColor(aSet); + SwApplyTemplate* pApply = rEdtWin.GetApplyTemplate(); - rReq.Done(); + if(!pApply && (rWrtSh.HasSelection() || rReq.IsAPI())) + { + SvxBrushItem aBrushItem(RES_CHRATR_BACKGROUND); + aBrushItem.SetColor(aSet); + rWrtSh.SetAttrItem( aBrushItem ); } + else if(!pApply || pApply->nColor != SID_ATTR_CHAR_COLOR_BACKGROUND_EXT) + { + GetView().GetViewFrame()->GetDispatcher()->Execute(SID_ATTR_CHAR_COLOR_BACKGROUND_EXT); + } + + rReq.Done(); } break; case SID_ATTR_CHAR_COLOR_BACKGROUND_EXT: |