The attached patch contain sthe changes to set the initial colours for split
buttons as discussed on this list last week.
I also placed some comments as the initials colours are set in up to 3
different places.
Winfried
From 255403dc0b7b5b2cd37703a06628d19767b9933a Mon Sep 17 00:00:00 2001
From: Winfried Donkers <o...@dci-electronics.nl>
Date: Sun, 11 Mar 2012 09:05:02 +0100
Subject: [PATCH] fdo#45671 set initial color for split buttons
---
svx/source/tbxctrls/tbcontrl.cxx | 12 ++++++++++++
svx/source/tbxctrls/tbxcolorupdate.cxx | 14 ++++++++++++--
sw/source/ui/docvw/edtwin.cxx | 8 ++++++++
3 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index 0ecf87d..b205555f 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -2231,6 +2231,14 @@ void SvxColorToolBoxControl::StateChanged(
//========================================================================
// class SvxColorExtToolBoxControl ----------------------------------------
//========================================================================
+/* Note:
+ The initial color shown on the button is set in /core/svx/source/tbxctrls/tbxcolorupdate.cxx
+ (ToolboxButtonColorUpdater::ToolboxButtonColorUpdater()) .
+ The initial color used by the button is set in /core/svx/source/tbxcntrls/tbcontrl.cxx
+ (SvxColorExtToolBoxControl::SvxColorExtToolBoxControl())
+ and in case of writer for text(background)color also in /core/sw/source/ui/docvw/edtwin.cxx
+ (SwEditWin::aTextBackColor and SwEditWin::aTextBackColor)
+ */
SvxColorExtToolBoxControl::SvxColorExtToolBoxControl(
sal_uInt16 nSlotId,
@@ -2252,11 +2260,13 @@ SvxColorExtToolBoxControl::SvxColorExtToolBoxControl(
case SID_ATTR_CHAR_COLOR:
addStatusListener( OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:Color" )));
nMode = TBX_UPDATER_MODE_CHAR_COLOR_NEW;
+ mLastColor = COL_RED;
break;
case SID_ATTR_CHAR_COLOR2:
addStatusListener( OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:CharColorExt" )));
nMode = TBX_UPDATER_MODE_CHAR_COLOR_NEW;
+ mLastColor = COL_RED;
break;
case SID_BACKGROUND_COLOR:
@@ -2264,11 +2274,13 @@ SvxColorExtToolBoxControl::SvxColorExtToolBoxControl(
default:
addStatusListener( OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:CharBackgroundExt" )));
nMode = TBX_UPDATER_MODE_CHAR_COLOR_NEW;
+ mLastColor = COL_YELLOW;
break;
case SID_FRAME_LINECOLOR:
addStatusListener( OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FrameLineColor" )));
nMode = 0;
+ mLastColor = COL_RED;
break;
}
diff --git a/svx/source/tbxctrls/tbxcolorupdate.cxx b/svx/source/tbxctrls/tbxcolorupdate.cxx
index 1b567d4..7d79f7f 100644
--- a/svx/source/tbxctrls/tbxcolorupdate.cxx
+++ b/svx/source/tbxctrls/tbxcolorupdate.cxx
@@ -44,6 +44,14 @@ namespace svx
//====================================================================
//= ToolboxButtonColorUpdater
//====================================================================
+ /* Note:
+ The initial color shown on the button is set in /core/svx/source/tbxctrls/tbxcolorupdate.cxx
+ (ToolboxButtonColorUpdater::ToolboxButtonColorUpdater()) .
+ The initial color used by the button is set in /core/svx/source/tbxcntrls/tbcontrl.cxx
+ (SvxColorExtToolBoxControl::SvxColorExtToolBoxControl())
+ and in case of writer for text(background)color also in /core/sw/source/ui/docvw/edtwin.cxx
+ (SwEditWin::aTextBackColor and SwEditWin::aTextBackColor)
+ */
ToolboxButtonColorUpdater::ToolboxButtonColorUpdater(
sal_uInt16 nId,
@@ -64,13 +72,15 @@ namespace svx
{
case SID_ATTR_CHAR_COLOR :
case SID_ATTR_CHAR_COLOR2 :
- Update( COL_BLACK );
+ case SID_FRAME_LINECOLOR :
+ Update( COL_RED );
break;
case SID_ATTR_CHAR_COLOR_BACKGROUND :
+ case SID_BACKGROUND_COLOR :
Update( COL_YELLOW );
break;
default :
- Update( COL_GRAY );
+ Update( COL_TRANSPARENT );
}
}
diff --git a/sw/source/ui/docvw/edtwin.cxx b/sw/source/ui/docvw/edtwin.cxx
index 2613779..1dcf02a 100644
--- a/sw/source/ui/docvw/edtwin.cxx
+++ b/sw/source/ui/docvw/edtwin.cxx
@@ -176,6 +176,14 @@ QuickHelpData* SwEditWin::pQuickHlpData = 0;
long SwEditWin::nDDStartPosY = 0;
long SwEditWin::nDDStartPosX = 0;
+/* Note:
+ The initial color shown on the button is set in /core/svx/source/tbxctrls/tbxcolorupdate.cxx
+ (ToolboxButtonColorUpdater::ToolboxButtonColorUpdater()) .
+ The initial color used by the button is set in /core/svx/source/tbxcntrls/tbcontrl.cxx
+ (SvxColorExtToolBoxControl::SvxColorExtToolBoxControl())
+ and in case of writer for text(background)color also in /core/sw/source/ui/docvw/edtwin.cxx
+ (SwEditWin::aTextBackColor and SwEditWin::aTextBackColor)
+ */
Color SwEditWin::aTextBackColor(COL_YELLOW);
Color SwEditWin::aTextColor(COL_RED);
sal_Bool SwEditWin::bTransparentBackColor = sal_False; // background not transparent
--
1.7.7
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice