[Libreoffice-commits] core.git: editeng/source include/editeng include/svx sd/sdi sd/source svx/sdi svx/source

Katarina Behrens Katarina.Behrens at cib.de
Mon Jun 1 10:12:42 PDT 2015


 editeng/source/editeng/editdoc.cxx |    2 +-
 include/editeng/editids.hrc        |    6 ++++--
 include/svx/dialogs.hrc            |    1 +
 sd/sdi/_drvwsh.sdi                 |    5 +++++
 sd/sdi/drtxtob.sdi                 |    6 ++++++
 sd/source/ui/app/sddll.cxx         |    1 +
 svx/sdi/svx.sdi                    |   25 +++++++++++++++++++++++++
 svx/sdi/svxitems.sdi               |    1 +
 svx/source/tbxctrls/tbcontrl.cxx   |   18 ++++++++++++++++++
 svx/source/tbxctrls/tbcontrl.src   |    5 +++++
 10 files changed, 67 insertions(+), 3 deletions(-)

New commits:
commit c1b9d61bacaf676d69a0f49a79fb086535f79a48
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Tue May 26 14:56:09 2015 +0200

    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 at libreoffice.org>
    Reviewed-by: Yousuf Philips <philipz85 at hotmail.com>

diff --git a/editeng/source/editeng/editdoc.cxx b/editeng/source/editeng/editdoc.cxx
index 833583d..a67add0 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 793c7e6..91102dd 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 709bd3b..a57c68c 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 38953ca..263a8ed 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 cc466e1..3e975d4 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 7da803a..1a4c797 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 91f08bf..941f3e8 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 b8d77116..6887062 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 5fc515f..25847fa 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 6e0add7..f6cd746 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";


More information about the Libreoffice-commits mailing list