summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKatarina Behrens <Katarina.Behrens@cib.de>2015-05-26 14:56:09 +0200
committerYousuf Philips <philipz85@hotmail.com>2015-06-01 17:12:21 +0000
commitc1b9d61bacaf676d69a0f49a79fb086535f79a48 (patch)
tree473ca93d17b6183e31072f495fcd6335c2ce9eed
parent4e6713e923a8dc1eae00a29060720d91b9134cfa (diff)
tdf#88276: Add slot and handlers for toolbar|sidebar buttons
those changes make getting/setting of text background colour possible from toolbar and sidebar buttons, but likely more handlers needs to be added to various other places in the code Change-Id: I698ca2304399befdd63317eb8872aa3129f27637 Reviewed-on: https://gerrit.libreoffice.org/15909 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Yousuf Philips <philipz85@hotmail.com>
-rw-r--r--editeng/source/editeng/editdoc.cxx2
-rw-r--r--include/editeng/editids.hrc6
-rw-r--r--include/svx/dialogs.hrc1
-rw-r--r--sd/sdi/_drvwsh.sdi5
-rw-r--r--sd/sdi/drtxtob.sdi6
-rw-r--r--sd/source/ui/app/sddll.cxx1
-rw-r--r--svx/sdi/svx.sdi25
-rw-r--r--svx/sdi/svxitems.sdi1
-rw-r--r--svx/source/tbxctrls/tbcontrl.cxx18
-rw-r--r--svx/source/tbxctrls/tbcontrl.src5
10 files changed, 67 insertions, 3 deletions
diff --git a/editeng/source/editeng/editdoc.cxx b/editeng/source/editeng/editdoc.cxx
index 833583d847f8..a67add018a31 100644
--- a/editeng/source/editeng/editdoc.cxx
+++ b/editeng/source/editeng/editdoc.cxx
@@ -211,7 +211,7 @@ const SfxItemInfo aItemInfos[EDITITEMCOUNT] = {
{ SID_ATTR_CHAR_OVERLINE, SfxItemPoolFlags::POOLABLE },
{ SID_ATTR_CHAR_CASEMAP, SfxItemPoolFlags::POOLABLE }, // EE_CHAR_CASEMAP
{ SID_ATTR_CHAR_GRABBAG, SfxItemPoolFlags::POOLABLE }, // EE_CHAR_GRABBAG
- { 0, SfxItemPoolFlags::POOLABLE }, // EE_CHAR_BKGCOLOR
+ { SID_ATTR_CHAR_BACK_COLOR, SfxItemPoolFlags::POOLABLE }, // EE_CHAR_BKGCOLOR
{ 0, SfxItemPoolFlags::POOLABLE }, // EE_FEATURE_TAB
{ 0, SfxItemPoolFlags::POOLABLE }, // EE_FEATURE_LINEBR
{ SID_ATTR_CHAR_CHARSETCOLOR, SfxItemPoolFlags::POOLABLE }, // EE_FEATURE_NOTCONV
diff --git a/include/editeng/editids.hrc b/include/editeng/editids.hrc
index 793c7e6501fd..91102dd0ca8b 100644
--- a/include/editeng/editids.hrc
+++ b/include/editeng/editids.hrc
@@ -119,6 +119,7 @@
#define SID_ATTR_CHAR_LATIN_POSTURE ( SID_SVX_START + 997 )
#define SID_ATTR_CHAR_LATIN_WEIGHT ( SID_SVX_START + 998 )
#define SID_ATTR_CHAR_GRABBAG ( SID_SVX_START + 1142 )
+#define SID_ATTR_CHAR_BACK_COLOR ( SID_SVX_START + 1143 )
// these ID didn't exist prior to the svx split, add new ids here
#define SID_ATTR_CHAR_OVERLINE ( SID_EDIT_START + 68 )
@@ -226,10 +227,11 @@
#define SID_ATTR_CHAR_LATIN_LANGUAGE ( SID_EDIT_START + 92 )
#define SID_ATTR_CHAR_LATIN_POSTURE ( SID_EDIT_START + 93 )
#define SID_ATTR_CHAR_LATIN_WEIGHT ( SID_EDIT_START + 94 )
+#define SID_ATTR_CHAR_BACK_COLOR ( SID_EDIT_START + 95 )
*/
-#if 94 > (SID_EDIT_END-SID_EDIT_START)
-#error Resource-Ueberlauf in #line, #file
+#if 95 > (SID_EDIT_END-SID_EDIT_START)
+#error Resource-Overflow in #line, #file
#endif
#define SID_DRAW_TEXT_VERTICAL SID_ATTR_CHAR_VERTICAL
diff --git a/include/svx/dialogs.hrc b/include/svx/dialogs.hrc
index 709bd3b26de9..a57c68cce93e 100644
--- a/include/svx/dialogs.hrc
+++ b/include/svx/dialogs.hrc
@@ -233,6 +233,7 @@
// Strings of the ToolBox-Controls from tbcontrl.cxx
#define RID_SVXSTR_FILLPATTERN (RID_SVX_START + 191)
#define RID_SVXSTR_FRAME (RID_SVX_START + 192)
+#define RID_SVXSTR_CHAR_BACK_COLOR (RID_SVX_START + 193)
#define RID_SVXSTR_FRAME_COLOR (RID_SVX_START + 194)
#define RID_SVXSTR_FRAME_STYLE (RID_SVX_START + 195)
#define RID_SVXSTR_EXTRAS_CHARBACKGROUND (RID_SVX_START + 196)
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
index 38953ca2b1fc..263a8ed20e21 100644
--- a/sd/sdi/_drvwsh.sdi
+++ b/sd/sdi/_drvwsh.sdi
@@ -2722,6 +2722,11 @@ interface DrawView
ExecMethod = ExecChar ;
StateMethod = GetAttrState ;
]
+ SID_ATTR_CHAR_BACK_COLOR
+ [
+ ExecMethod = ExecChar ;
+ StateMethod = GetAttrState ;
+ ]
SID_ATTR_CHAR_KERNING
[
ExecMethod = ExecChar ;
diff --git a/sd/sdi/drtxtob.sdi b/sd/sdi/drtxtob.sdi
index cc466e1a7c9f..3e975d4946da 100644
--- a/sd/sdi/drtxtob.sdi
+++ b/sd/sdi/drtxtob.sdi
@@ -44,6 +44,12 @@ shell TextObjectBar
StateMethod = GetAttrState;
]
+ SID_ATTR_CHAR_BACK_COLOR // ole : ?, status : ?
+ [
+ ExecMethod = Execute;
+ StateMethod = GetAttrState;
+ ]
+
SID_ATTR_CHAR_WEIGHT // ole : ?, status : ?
[
ExecMethod = Execute;
diff --git a/sd/source/ui/app/sddll.cxx b/sd/source/ui/app/sddll.cxx
index 7da803a3ab44..1a4c79712532 100644
--- a/sd/source/ui/app/sddll.cxx
+++ b/sd/source/ui/app/sddll.cxx
@@ -215,6 +215,7 @@ void SdDLL::RegisterControllers()
SvxStyleToolBoxControl::RegisterControl(0, pMod);
SvxFontNameToolBoxControl::RegisterControl(0, pMod);
SvxColorToolBoxControl::RegisterControl( SID_ATTR_CHAR_COLOR, pMod );
+ SvxColorToolBoxControl::RegisterControl( SID_ATTR_CHAR_BACK_COLOR, pMod );
SvxGrafFilterToolBoxControl::RegisterControl( SID_GRFFILTER, pMod );
SvxGrafModeToolBoxControl::RegisterControl( SID_ATTR_GRAF_MODE, pMod );
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
index 91f08bf8ba60..941f3e8d1966 100644
--- a/svx/sdi/svx.sdi
+++ b/svx/sdi/svx.sdi
@@ -2169,6 +2169,31 @@ SvxColorItem Color SID_ATTR_CHAR_COLOR
GroupId = GID_FORMAT;
]
+SvxBackgroundColorItem CharBackColor SID_ATTR_CHAR_BACK_COLOR
+
+[
+ /* flags: */
+ AutoUpdate = TRUE,
+ Cachable = Cachable,
+ FastCall = FALSE,
+ HasCoreId = FALSE,
+ HasDialog = FALSE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+ Synchron;
+
+ Readonly = FALSE,
+
+ /* config: */
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ StatusBarConfig = FALSE,
+ ToolBoxConfig = TRUE,
+ GroupId = GID_FORMAT;
+]
SfxBoolItem ColorControl SID_COLOR_CONTROL
diff --git a/svx/sdi/svxitems.sdi b/svx/sdi/svxitems.sdi
index b8d771160d06..6887062ebdfb 100644
--- a/svx/sdi/svxitems.sdi
+++ b/svx/sdi/svxitems.sdi
@@ -320,6 +320,7 @@ item INT16 SvxCharReliefItem;
item BOOL SvxBlinkItem;
item BOOL SvxAutoKernItem;
item INT32 SvxColorItem;
+item INT32 SvxBackgroundColorItem;
item BOOL SvxContourItem;
item INT16 SvxFormatBreakItem; // enum
item BOOL SvxFormatKeepItem;
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index 5fc515fcc42f..25847fac4a77 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -1434,6 +1434,8 @@ void SvxColorWindow_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eState, co
aColor = static_cast<const XLineColorItem*>(pState)->GetColorValue();
else if ( pState->ISA( XFillColorItem ) )
aColor = static_cast<const XFillColorItem*>(pState)->GetColorValue();
+ else if ( pState->ISA( SvxBackgroundColorItem ) )
+ aColor = static_cast<const SvxBackgroundColorItem*>(pState)->GetValue();
}
if ( aColor == COL_TRANSPARENT )
@@ -2551,6 +2553,11 @@ SvxColorToolBoxControl::SvxColorToolBoxControl(
bSidebarType = false;
break;
+ case SID_ATTR_CHAR_BACK_COLOR:
+ addStatusListener( OUString( ".uno:CharBackColor" ));
+ mPaletteManager.SetLastColor( COL_YELLOW );
+ break;
+
case SID_FRAME_LINECOLOR:
addStatusListener( OUString( ".uno:FrameLineColor" ));
addStatusListener( OUString( ".uno:BorderTLBR" ));
@@ -2614,6 +2621,10 @@ VclPtr<SfxPopupWindow> SvxColorToolBoxControl::CreatePopupWindow()
pColorWin->SetText( SVX_RESSTR( RID_SVXSTR_BACKGROUND ) );
break;
+ case SID_ATTR_CHAR_BACK_COLOR :
+ pColorWin->SetText( SVX_RESSTR( RID_SVXSTR_CHAR_BACK_COLOR ) );
+ break;
+
case SID_FRAME_LINECOLOR:
pColorWin->SetText( SVX_RESSTR( RID_SVXSTR_FRAME_COLOR ) );
break;
@@ -2712,6 +2723,11 @@ void SvxColorToolBoxControl::Select(sal_uInt16 /*nSelectModifier*/)
aParamName = "BackColor";
break;
+ case SID_ATTR_CHAR_BACK_COLOR :
+ aCommand = ".uno:CharBackColor";
+ aParamName = "CharBackColor";
+ break;
+
case SID_FRAME_LINECOLOR :
aCommand = ".uno:FrameLineColor";
aParamName = "FrameLineColor";
@@ -2750,6 +2766,8 @@ void SvxColorToolBoxControl::RegisterControl(sal_uInt16 nSlotId, SfxModule *pMod
SfxToolBoxControl::RegisterToolBoxControl( pMod, new SfxTbxCtrlFactory( SvxColorToolBoxControl::CreateImpl, TYPE(XLineColorItem), nSlotId ) );
else if ( nSlotId == SID_ATTR_FILL_COLOR )
SfxToolBoxControl::RegisterToolBoxControl( pMod, new SfxTbxCtrlFactory( SvxColorToolBoxControl::CreateImpl, TYPE(XFillColorItem), nSlotId ) );
+ else if ( nSlotId == SID_ATTR_CHAR_BACK_COLOR )
+ SfxToolBoxControl::RegisterToolBoxControl( pMod, new SfxTbxCtrlFactory( SvxColorToolBoxControl::CreateImpl, TYPE(SvxBackgroundColorItem), nSlotId ) );
else
SfxToolBoxControl::RegisterToolBoxControl( pMod, new SfxTbxCtrlFactory( SvxColorToolBoxControl::CreateImpl, TYPE(SvxColorItem), nSlotId ) );
}
diff --git a/svx/source/tbxctrls/tbcontrl.src b/svx/source/tbxctrls/tbcontrl.src
index 6e0add7d9ae8..f6cd74635dc8 100644
--- a/svx/source/tbxctrls/tbcontrl.src
+++ b/svx/source/tbxctrls/tbcontrl.src
@@ -125,6 +125,11 @@ String RID_SVXSTR_EXTRAS_CHARBACKGROUND
Text [ en-US ] = "Highlighting" ;
};
+String RID_SVXSTR_CHAR_BACK_COLOR
+{
+ Text [ en-US ] = "Text Background Color" ;
+};
+
String RID_SVXSTR_BACKGROUND
{
Text [ en-US ] = "Background";