LCOV - code coverage report
Current view: top level - cui/source/tabpages - tparea.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 0 1481 0.0 %
Date: 2012-08-25 Functions: 0 62 0.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 0 2637 0.0 %

           Branch data     Line data    Source code
       1                 :            : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2                 :            : /*************************************************************************
       3                 :            :  *
       4                 :            :  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       5                 :            :  *
       6                 :            :  * Copyright 2000, 2010 Oracle and/or its affiliates.
       7                 :            :  *
       8                 :            :  * OpenOffice.org - a multi-platform office productivity suite
       9                 :            :  *
      10                 :            :  * This file is part of OpenOffice.org.
      11                 :            :  *
      12                 :            :  * OpenOffice.org is free software: you can redistribute it and/or modify
      13                 :            :  * it under the terms of the GNU Lesser General Public License version 3
      14                 :            :  * only, as published by the Free Software Foundation.
      15                 :            :  *
      16                 :            :  * OpenOffice.org is distributed in the hope that it will be useful,
      17                 :            :  * but WITHOUT ANY WARRANTY; without even the implied warranty of
      18                 :            :  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      19                 :            :  * GNU Lesser General Public License version 3 for more details
      20                 :            :  * (a copy is included in the LICENSE file that accompanied this code).
      21                 :            :  *
      22                 :            :  * You should have received a copy of the GNU Lesser General Public License
      23                 :            :  * version 3 along with OpenOffice.org.  If not, see
      24                 :            :  * <http://www.openoffice.org/license.html>
      25                 :            :  * for a copy of the LGPLv3 License.
      26                 :            :  *
      27                 :            :  ************************************************************************/
      28                 :            : 
      29                 :            : #include <tools/shl.hxx>
      30                 :            : #include <tools/urlobj.hxx>
      31                 :            : #include <sfx2/app.hxx>
      32                 :            : #include <sfx2/module.hxx>
      33                 :            : #include <svx/dialogs.hrc>
      34                 :            : 
      35                 :            : #define _SVX_TPAREA_CXX
      36                 :            : 
      37                 :            : #if defined (UNX) || defined (ICC) || defined(WNT)
      38                 :            : #include <stdlib.h>
      39                 :            : #endif
      40                 :            : 
      41                 :            : #include "svx/xattr.hxx"
      42                 :            : #include <svx/xpool.hxx>
      43                 :            : #include <cuires.hrc>
      44                 :            : #include "tabarea.hrc"
      45                 :            : #include <svx/xflbckit.hxx>
      46                 :            : #include <svx/svdattr.hxx>
      47                 :            : #include <svx/xtable.hxx>
      48                 :            : #include <svx/xlineit0.hxx>
      49                 :            : #include "svx/drawitem.hxx"
      50                 :            : #include "cuitabarea.hxx"
      51                 :            : #include "dlgname.hxx"
      52                 :            : #include <dialmgr.hxx>
      53                 :            : #include "svx/dlgutil.hxx"
      54                 :            : #include <svl/intitem.hxx>
      55                 :            : #include <sfx2/request.hxx>
      56                 :            : #include "paragrph.hrc"
      57                 :            : 
      58                 :            : // static ----------------------------------------------------------------
      59                 :            : 
      60                 :            : static sal_uInt16 pAreaRanges[] =
      61                 :            : {
      62                 :            :     XATTR_GRADIENTSTEPCOUNT,
      63                 :            :     XATTR_GRADIENTSTEPCOUNT,
      64                 :            :     SID_ATTR_FILL_STYLE,
      65                 :            :     SID_ATTR_FILL_BITMAP,
      66                 :            :     0
      67                 :            : };
      68                 :            : 
      69                 :            : static sal_uInt16 pTransparenceRanges[] =
      70                 :            : {
      71                 :            :     XATTR_FILLTRANSPARENCE,
      72                 :            :     XATTR_FILLTRANSPARENCE,
      73                 :            :     SDRATTR_SHADOWTRANSPARENCE,
      74                 :            :     SDRATTR_SHADOWTRANSPARENCE,
      75                 :            :     XATTR_FILLFLOATTRANSPARENCE,
      76                 :            :     XATTR_FILLFLOATTRANSPARENCE,
      77                 :            :     0
      78                 :            : };
      79                 :            : 
      80                 :            : /*************************************************************************
      81                 :            : |*
      82                 :            : |*  Dialog for transparence
      83                 :            : |*
      84                 :            : \************************************************************************/
      85                 :            : 
      86                 :          0 : IMPL_LINK_NOARG(SvxTransparenceTabPage, ClickTransOffHdl_Impl)
      87                 :            : {
      88                 :            :     // disable all other controls
      89                 :          0 :     ActivateLinear(sal_False);
      90                 :          0 :     ActivateGradient(sal_False);
      91                 :            : 
      92                 :            :     // Preview
      93                 :          0 :     rXFSet.ClearItem (XATTR_FILLTRANSPARENCE);
      94                 :          0 :     rXFSet.ClearItem (XATTR_FILLFLOATTRANSPARENCE);
      95                 :          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
      96                 :          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
      97                 :            : 
      98                 :          0 :     InvalidatePreview( sal_False );
      99                 :            : 
     100                 :          0 :     return( 0L );
     101                 :            : }
     102                 :            : 
     103                 :          0 : IMPL_LINK_NOARG(SvxTransparenceTabPage, ClickTransLinearHdl_Impl)
     104                 :            : {
     105                 :            :     // enable linear, disable other
     106                 :          0 :     ActivateLinear(sal_True);
     107                 :          0 :     ActivateGradient(sal_False);
     108                 :            : 
     109                 :            :     // preview
     110                 :          0 :     rXFSet.ClearItem (XATTR_FILLFLOATTRANSPARENCE);
     111                 :          0 :     ModifyTransparentHdl_Impl (NULL);
     112                 :            : 
     113                 :          0 :     return( 0L );
     114                 :            : }
     115                 :            : 
     116                 :          0 : IMPL_LINK_NOARG(SvxTransparenceTabPage, ClickTransGradientHdl_Impl)
     117                 :            : {
     118                 :            :     // enable gradient, disable other
     119                 :          0 :     ActivateLinear(sal_False);
     120                 :          0 :     ActivateGradient(sal_True);
     121                 :            : 
     122                 :            :     // preview
     123                 :          0 :     rXFSet.ClearItem (XATTR_FILLTRANSPARENCE);
     124                 :          0 :     ModifiedTrgrHdl_Impl (NULL);
     125                 :            : 
     126                 :          0 :     return( 0L );
     127                 :            : }
     128                 :            : 
     129                 :          0 : void SvxTransparenceTabPage::ActivateLinear(sal_Bool bActivate)
     130                 :            : {
     131                 :          0 :     aMtrTransparent.Enable(bActivate);
     132                 :          0 : }
     133                 :            : 
     134                 :          0 : IMPL_LINK_NOARG(SvxTransparenceTabPage, ModifyTransparentHdl_Impl)
     135                 :            : {
     136         [ #  # ]:          0 :     sal_uInt16 nPos = (sal_uInt16)aMtrTransparent.GetValue();
     137         [ #  # ]:          0 :     XFillTransparenceItem aItem(nPos);
     138 [ #  # ][ #  # ]:          0 :     rXFSet.Put(XFillTransparenceItem(aItem));
                 [ #  # ]
     139                 :            : 
     140                 :            :     // preview
     141         [ #  # ]:          0 :     InvalidatePreview();
     142                 :            : 
     143         [ #  # ]:          0 :     return 0L;
     144                 :            : }
     145                 :            : 
     146                 :          0 : IMPL_LINK(SvxTransparenceTabPage, ModifiedTrgrHdl_Impl, void *, pControl)
     147                 :            : {
     148 [ #  # ][ #  # ]:          0 :     if(pControl == &aLbTrgrGradientType || pControl == this)
     149                 :            :     {
     150         [ #  # ]:          0 :         XGradientStyle eXGS = (XGradientStyle)aLbTrgrGradientType.GetSelectEntryPos();
     151         [ #  # ]:          0 :         SetControlState_Impl( eXGS );
     152                 :            :     }
     153                 :            : 
     154                 :            :     // preview
     155         [ #  # ]:          0 :     sal_uInt8 nStartCol = (sal_uInt8)(((sal_uInt16)aMtrTrgrStartValue.GetValue() * 255) / 100);
     156         [ #  # ]:          0 :     sal_uInt8 nEndCol = (sal_uInt8)(((sal_uInt16)aMtrTrgrEndValue.GetValue() * 255) / 100);
     157                 :            :     XGradient aTmpGradient(
     158                 :            :                 Color(nStartCol, nStartCol, nStartCol),
     159                 :            :                 Color(nEndCol, nEndCol, nEndCol),
     160         [ #  # ]:          0 :                 (XGradientStyle)aLbTrgrGradientType.GetSelectEntryPos(),
     161         [ #  # ]:          0 :                 (sal_uInt16)aMtrTrgrAngle.GetValue() * 10,
     162         [ #  # ]:          0 :                 (sal_uInt16)aMtrTrgrCenterX.GetValue(),
     163         [ #  # ]:          0 :                 (sal_uInt16)aMtrTrgrCenterY.GetValue(),
     164         [ #  # ]:          0 :                 (sal_uInt16)aMtrTrgrBorder.GetValue(),
     165         [ #  # ]:          0 :                 100, 100);
     166                 :            : 
     167         [ #  # ]:          0 :     String aString;
     168         [ #  # ]:          0 :     XFillFloatTransparenceItem aItem( rXFSet.GetPool()/*aString*/, aTmpGradient);
     169         [ #  # ]:          0 :     rXFSet.Put ( aItem );
     170                 :            : 
     171         [ #  # ]:          0 :     InvalidatePreview();
     172                 :            : 
     173 [ #  # ][ #  # ]:          0 :     return( 0L );
     174                 :            : }
     175                 :            : 
     176                 :          0 : void SvxTransparenceTabPage::ActivateGradient(sal_Bool bActivate)
     177                 :            : {
     178                 :          0 :     aFtTrgrType.Enable(bActivate);
     179                 :          0 :     aLbTrgrGradientType.Enable(bActivate);
     180                 :          0 :     aFtTrgrCenterX.Enable(bActivate);
     181                 :          0 :     aMtrTrgrCenterX.Enable(bActivate);
     182                 :          0 :     aFtTrgrCenterY.Enable(bActivate);
     183                 :          0 :     aMtrTrgrCenterY.Enable(bActivate);
     184                 :          0 :     aFtTrgrAngle.Enable(bActivate);
     185                 :          0 :     aMtrTrgrAngle.Enable(bActivate);
     186                 :          0 :     aFtTrgrBorder.Enable(bActivate);
     187                 :          0 :     aMtrTrgrBorder.Enable(bActivate);
     188                 :          0 :     aFtTrgrStartValue.Enable(bActivate);
     189                 :          0 :     aMtrTrgrStartValue.Enable(bActivate);
     190                 :          0 :     aFtTrgrEndValue.Enable(bActivate);
     191                 :          0 :     aMtrTrgrEndValue.Enable(bActivate);
     192                 :            : 
     193         [ #  # ]:          0 :     if(bActivate)
     194                 :            :     {
     195                 :          0 :         XGradientStyle eXGS = (XGradientStyle)aLbTrgrGradientType.GetSelectEntryPos();
     196                 :          0 :         SetControlState_Impl( eXGS );
     197                 :            :     }
     198                 :          0 : }
     199                 :            : 
     200                 :          0 : IMPL_LINK_NOARG(SvxTransparenceTabPage, ChangeTrgrTypeHdl_Impl)
     201                 :            : {
     202                 :          0 :     return( 0L );
     203                 :            : }
     204                 :            : 
     205                 :          0 : void SvxTransparenceTabPage::SetControlState_Impl(XGradientStyle eXGS)
     206                 :            : {
     207   [ #  #  #  #  :          0 :     switch(eXGS)
                      # ]
     208                 :            :     {
     209                 :            :         case XGRAD_LINEAR:
     210                 :            :         case XGRAD_AXIAL:
     211                 :          0 :             aFtTrgrCenterX.Disable();
     212                 :          0 :             aMtrTrgrCenterX.Disable();
     213                 :          0 :             aFtTrgrCenterY.Disable();
     214                 :          0 :             aMtrTrgrCenterY.Disable();
     215                 :          0 :             aFtTrgrAngle.Enable();
     216                 :          0 :             aMtrTrgrAngle.Enable();
     217                 :          0 :             break;
     218                 :            : 
     219                 :            :         case XGRAD_RADIAL:
     220                 :          0 :             aFtTrgrCenterX.Enable();
     221                 :          0 :             aMtrTrgrCenterX.Enable();
     222                 :          0 :             aFtTrgrCenterY.Enable();
     223                 :          0 :             aMtrTrgrCenterY.Enable();
     224                 :          0 :             aFtTrgrAngle.Disable();
     225                 :          0 :             aMtrTrgrAngle.Disable();
     226                 :          0 :             break;
     227                 :            : 
     228                 :            :         case XGRAD_ELLIPTICAL:
     229                 :          0 :             aFtTrgrCenterX.Enable();
     230                 :          0 :             aMtrTrgrCenterX.Enable();
     231                 :          0 :             aFtTrgrCenterY.Enable();
     232                 :          0 :             aMtrTrgrCenterY.Enable();
     233                 :          0 :             aFtTrgrAngle.Enable();
     234                 :          0 :             aMtrTrgrAngle.Enable();
     235                 :          0 :             break;
     236                 :            : 
     237                 :            :         case XGRAD_SQUARE:
     238                 :            :         case XGRAD_RECT:
     239                 :          0 :             aFtTrgrCenterX.Enable();
     240                 :          0 :             aMtrTrgrCenterX.Enable();
     241                 :          0 :             aFtTrgrCenterY.Enable();
     242                 :          0 :             aMtrTrgrCenterY.Enable();
     243                 :          0 :             aFtTrgrAngle.Enable();
     244                 :          0 :             aMtrTrgrAngle.Enable();
     245                 :          0 :             break;
     246                 :            :     }
     247                 :          0 : }
     248                 :            : 
     249                 :          0 : SvxTransparenceTabPage::SvxTransparenceTabPage(Window* pParent, const SfxItemSet& rInAttrs)
     250                 :          0 : :   SvxTabPage          ( pParent, CUI_RES( RID_SVXPAGE_TRANSPARENCE ), rInAttrs),
     251                 :            :     rOutAttrs           ( rInAttrs ),
     252                 :            :     nPageType(0),
     253                 :            :     nDlgType(0),
     254                 :            : 
     255         [ #  # ]:          0 :     aFlProp             ( this, CUI_RES( FL_PROP ) ),
     256         [ #  # ]:          0 :     aRbtTransOff        ( this, CUI_RES( RBT_TRANS_OFF ) ),
     257         [ #  # ]:          0 :     aRbtTransLinear     ( this, CUI_RES( RBT_TRANS_LINEAR ) ),
     258         [ #  # ]:          0 :     aRbtTransGradient   ( this, CUI_RES( RBT_TRANS_GRADIENT ) ),
     259                 :            : 
     260         [ #  # ]:          0 :     aMtrTransparent     ( this, CUI_RES( MTR_TRANSPARENT ) ),
     261                 :            : 
     262         [ #  # ]:          0 :     aFtTrgrType         ( this, CUI_RES( FT_TRGR_TYPE ) ),
     263         [ #  # ]:          0 :     aLbTrgrGradientType ( this, CUI_RES( LB_TRGR_GRADIENT_TYPES ) ),
     264         [ #  # ]:          0 :     aFtTrgrCenterX      ( this, CUI_RES( FT_TRGR_CENTER_X ) ),
     265         [ #  # ]:          0 :     aMtrTrgrCenterX     ( this, CUI_RES( MTR_TRGR_CENTER_X ) ),
     266         [ #  # ]:          0 :     aFtTrgrCenterY      ( this, CUI_RES( FT_TRGR_CENTER_Y ) ),
     267         [ #  # ]:          0 :     aMtrTrgrCenterY     ( this, CUI_RES( MTR_TRGR_CENTER_Y ) ),
     268         [ #  # ]:          0 :     aFtTrgrAngle        ( this, CUI_RES( FT_TRGR_ANGLE ) ),
     269         [ #  # ]:          0 :     aMtrTrgrAngle       ( this, CUI_RES( MTR_TRGR_ANGLE ) ),
     270         [ #  # ]:          0 :     aFtTrgrBorder       ( this, CUI_RES( FT_TRGR_BORDER ) ),
     271         [ #  # ]:          0 :     aMtrTrgrBorder      ( this, CUI_RES( MTR_TRGR_BORDER ) ),
     272         [ #  # ]:          0 :     aFtTrgrStartValue   ( this, CUI_RES( FT_TRGR_START_VALUE ) ),
     273         [ #  # ]:          0 :     aMtrTrgrStartValue  ( this, CUI_RES( MTR_TRGR_START_VALUE ) ),
     274         [ #  # ]:          0 :     aFtTrgrEndValue     ( this, CUI_RES( FT_TRGR_END_VALUE ) ),
     275         [ #  # ]:          0 :     aMtrTrgrEndValue    ( this, CUI_RES( MTR_TRGR_END_VALUE ) ),
     276                 :            : 
     277         [ #  # ]:          0 :     aCtlBitmapPreview   ( this, CUI_RES( CTL_BITMAP_PREVIEW ) ),
     278         [ #  # ]:          0 :     aCtlXRectPreview    ( this, CUI_RES( CTL_TRANS_PREVIEW ) ),
     279                 :            :     bBitmap             ( sal_False ),
     280                 :          0 :     pXPool              ( (XOutdevItemPool*) rInAttrs.GetPool() ),
     281                 :            :     aXFillAttr          ( pXPool ),
     282 [ #  # ][ #  # ]:          0 :     rXFSet              ( aXFillAttr.GetItemSet() )
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
           [ #  #  #  # ]
                 [ #  # ]
     283                 :            : {
     284         [ #  # ]:          0 :     FreeResource();
     285                 :            : 
     286 [ #  # ][ #  # ]:          0 :     String accName = String(CUI_RES(STR_EXAMPLE));
     287         [ #  # ]:          0 :     aCtlBitmapPreview.SetAccessibleName(accName);
     288         [ #  # ]:          0 :     aCtlXRectPreview.SetAccessibleName(accName);
     289         [ #  # ]:          0 :     aMtrTransparent.SetAccessibleRelationLabeledBy( &aRbtTransLinear );
     290                 :            : 
     291                 :            :     // main selection
     292         [ #  # ]:          0 :     aRbtTransOff.SetClickHdl(LINK(this, SvxTransparenceTabPage, ClickTransOffHdl_Impl));
     293         [ #  # ]:          0 :     aRbtTransLinear.SetClickHdl(LINK(this, SvxTransparenceTabPage, ClickTransLinearHdl_Impl));
     294         [ #  # ]:          0 :     aRbtTransGradient.SetClickHdl(LINK(this, SvxTransparenceTabPage, ClickTransGradientHdl_Impl));
     295                 :            : 
     296                 :            :     // linear transparency
     297         [ #  # ]:          0 :     aMtrTransparent.SetValue( 50 );
     298         [ #  # ]:          0 :     aMtrTransparent.SetModifyHdl(LINK(this, SvxTransparenceTabPage, ModifyTransparentHdl_Impl));
     299                 :            : 
     300                 :            :     // gradient transparency
     301         [ #  # ]:          0 :     aMtrTrgrEndValue.SetValue( 100 );
     302         [ #  # ]:          0 :     aMtrTrgrStartValue.SetValue( 0 );
     303         [ #  # ]:          0 :     aLbTrgrGradientType.SetSelectHdl(LINK(this, SvxTransparenceTabPage, ChangeTrgrTypeHdl_Impl));
     304         [ #  # ]:          0 :     Link aLink = LINK( this, SvxTransparenceTabPage, ModifiedTrgrHdl_Impl);
     305                 :          0 :     aLbTrgrGradientType.SetSelectHdl( aLink );
     306                 :          0 :     aMtrTrgrCenterX.SetModifyHdl( aLink );
     307                 :          0 :     aMtrTrgrCenterY.SetModifyHdl( aLink );
     308                 :          0 :     aMtrTrgrAngle.SetModifyHdl( aLink );
     309                 :          0 :     aMtrTrgrBorder.SetModifyHdl( aLink );
     310                 :          0 :     aMtrTrgrStartValue.SetModifyHdl( aLink );
     311                 :          0 :     aMtrTrgrEndValue.SetModifyHdl( aLink );
     312                 :            : 
     313                 :            :     // this page needs ExchangeSupport
     314         [ #  # ]:          0 :     SetExchangeSupport();
     315                 :          0 : }
     316                 :            : 
     317                 :          0 : void SvxTransparenceTabPage::Construct()
     318                 :            : {
     319                 :          0 : }
     320                 :            : 
     321                 :          0 : SfxTabPage* SvxTransparenceTabPage::Create(Window* pWindow, const SfxItemSet& rAttrs)
     322                 :            : {
     323         [ #  # ]:          0 :     return(new SvxTransparenceTabPage(pWindow, rAttrs));
     324                 :            : }
     325                 :            : 
     326                 :          0 : sal_uInt16* SvxTransparenceTabPage::GetRanges()
     327                 :            : {
     328                 :          0 :     return(pTransparenceRanges);
     329                 :            : }
     330                 :            : 
     331                 :          0 : sal_Bool SvxTransparenceTabPage::FillItemSet(SfxItemSet& rAttrs)
     332                 :            : {
     333                 :          0 :     const SfxPoolItem* pGradientItem = NULL;
     334                 :          0 :     const SfxPoolItem* pLinearItem = NULL;
     335         [ #  # ]:          0 :     SfxItemState eStateGradient(rOutAttrs.GetItemState(XATTR_FILLFLOATTRANSPARENCE, sal_True, &pGradientItem));
     336         [ #  # ]:          0 :     SfxItemState eStateLinear(rOutAttrs.GetItemState(XATTR_FILLTRANSPARENCE, sal_True, &pLinearItem));
     337 [ #  # ][ #  # ]:          0 :     sal_Bool bGradActive = (eStateGradient == SFX_ITEM_SET && ((XFillFloatTransparenceItem*)pGradientItem)->IsEnabled());
     338 [ #  # ][ #  # ]:          0 :     sal_Bool bLinearActive = (eStateLinear == SFX_ITEM_SET && ((XFillTransparenceItem*)pLinearItem)->GetValue() != 0);
     339                 :            : 
     340                 :            :     // #103765#
     341                 :          0 :     sal_Bool bGradUsed = (eStateGradient == SFX_ITEM_DONTCARE);
     342                 :          0 :     sal_Bool bLinearUsed = (eStateLinear == SFX_ITEM_DONTCARE);
     343                 :            : 
     344                 :          0 :     sal_Bool bModified(sal_False);
     345                 :          0 :     sal_Bool bSwitchOffLinear(sal_False);
     346                 :          0 :     sal_Bool bSwitchOffGradient(sal_False);
     347                 :            : 
     348 [ #  # ][ #  # ]:          0 :     if(aMtrTransparent.IsEnabled())
     349                 :            :     {
     350                 :            :         // linear transparence
     351         [ #  # ]:          0 :         sal_uInt16 nPos = (sal_uInt16)aMtrTransparent.GetValue();
     352 [ #  # ][ #  # ]:          0 :         if(nPos != (sal_uInt16)aMtrTransparent.GetSavedValue().ToInt32() || !bLinearActive)
         [ #  # ][ #  # ]
     353                 :            :         {
     354         [ #  # ]:          0 :             XFillTransparenceItem aItem(nPos);
     355         [ #  # ]:          0 :             SdrShadowTransparenceItem aShadowItem(nPos);
     356         [ #  # ]:          0 :             const SfxPoolItem* pOld = GetOldItem(rAttrs, XATTR_FILLTRANSPARENCE);
     357 [ #  # ][ #  # ]:          0 :             if(!pOld || !(*(const XFillTransparenceItem*)pOld == aItem) || !bLinearActive)
         [ #  # ][ #  # ]
                 [ #  # ]
     358                 :            :             {
     359         [ #  # ]:          0 :                 rAttrs.Put(aItem);
     360         [ #  # ]:          0 :                 rAttrs.Put(aShadowItem);
     361                 :          0 :                 bModified = sal_True;
     362                 :          0 :                 bSwitchOffGradient = sal_True;
     363 [ #  # ][ #  # ]:          0 :             }
     364                 :            :         }
     365                 :            :     }
     366 [ #  # ][ #  # ]:          0 :     else if(aLbTrgrGradientType.IsEnabled())
     367                 :            :     {
     368                 :            :         // transparence gradient, fill ItemSet from values
     369   [ #  #  #  # ]:          0 :         if(!bGradActive
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     370         [ #  # ]:          0 :             || (XGradientStyle)aLbTrgrGradientType.GetSelectEntryPos() != (XGradientStyle)aLbTrgrGradientType.GetSavedValue()
     371 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrAngle.GetValue() != (sal_uInt16)aMtrTrgrAngle.GetSavedValue().ToInt32()
     372 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrCenterX.GetValue() != (sal_uInt16)aMtrTrgrCenterX.GetSavedValue().ToInt32()
     373 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrCenterY.GetValue() != (sal_uInt16)aMtrTrgrCenterY.GetSavedValue().ToInt32()
     374 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrBorder.GetValue() != (sal_uInt16)aMtrTrgrBorder.GetSavedValue().ToInt32()
     375 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrStartValue.GetValue() != (sal_uInt16)aMtrTrgrStartValue.GetSavedValue().ToInt32()
     376 [ #  # ][ #  # ]:          0 :             || (sal_uInt16)aMtrTrgrEndValue.GetValue() != (sal_uInt16)aMtrTrgrEndValue.GetSavedValue().ToInt32() )
     377                 :            :         {
     378         [ #  # ]:          0 :             sal_uInt8 nStartCol = (sal_uInt8)(((sal_uInt16)aMtrTrgrStartValue.GetValue() * 255) / 100);
     379         [ #  # ]:          0 :             sal_uInt8 nEndCol = (sal_uInt8)(((sal_uInt16)aMtrTrgrEndValue.GetValue() * 255) / 100);
     380                 :            :             XGradient aTmpGradient(
     381                 :            :                         Color(nStartCol, nStartCol, nStartCol),
     382                 :            :                         Color(nEndCol, nEndCol, nEndCol),
     383         [ #  # ]:          0 :                         (XGradientStyle)aLbTrgrGradientType.GetSelectEntryPos(),
     384         [ #  # ]:          0 :                         (sal_uInt16)aMtrTrgrAngle.GetValue() * 10,
     385         [ #  # ]:          0 :                         (sal_uInt16)aMtrTrgrCenterX.GetValue(),
     386         [ #  # ]:          0 :                         (sal_uInt16)aMtrTrgrCenterY.GetValue(),
     387         [ #  # ]:          0 :                         (sal_uInt16)aMtrTrgrBorder.GetValue(),
     388         [ #  # ]:          0 :                         100, 100);
     389                 :            : 
     390         [ #  # ]:          0 :             String aString;
     391         [ #  # ]:          0 :             XFillFloatTransparenceItem aItem( rXFSet.GetPool()/*aString*/, aTmpGradient);
     392         [ #  # ]:          0 :             const SfxPoolItem* pOld = GetOldItem(rAttrs, XATTR_FILLFLOATTRANSPARENCE);
     393                 :            : 
     394 [ #  # ][ #  # ]:          0 :             if(!pOld || !(*(const XFillFloatTransparenceItem*)pOld == aItem) || !bGradActive)
         [ #  # ][ #  # ]
                 [ #  # ]
     395                 :            :             {
     396         [ #  # ]:          0 :                 rAttrs.Put(aItem);
     397                 :          0 :                 bModified = sal_True;
     398                 :          0 :                 bSwitchOffLinear = sal_True;
     399 [ #  # ][ #  # ]:          0 :             }
     400                 :            :         }
     401                 :            :     }
     402                 :            :     else
     403                 :            :     {
     404                 :            :         // no transparence
     405                 :          0 :         bSwitchOffGradient = sal_True;
     406                 :          0 :         bSwitchOffLinear = sal_True;
     407                 :            :     }
     408                 :            : 
     409                 :            :     // disable unused XFillFloatTransparenceItem
     410 [ #  # ][ #  # ]:          0 :     if(bSwitchOffGradient && (bGradActive || bGradUsed))
                 [ #  # ]
     411                 :            :     {
     412                 :          0 :         Color aColor(COL_BLACK);
     413         [ #  # ]:          0 :         XGradient aGrad(aColor, Color(COL_WHITE));
     414                 :          0 :         aGrad.SetStartIntens(100);
     415                 :          0 :         aGrad.SetEndIntens(100);
     416         [ #  # ]:          0 :         String aString;
     417         [ #  # ]:          0 :         XFillFloatTransparenceItem aItem( rXFSet.GetPool()/*aString*/, aGrad);
     418                 :          0 :         aItem.SetEnabled(sal_False);
     419         [ #  # ]:          0 :         rAttrs.Put(aItem);
     420 [ #  # ][ #  # ]:          0 :         bModified = sal_True;
     421                 :            :     }
     422                 :            : 
     423                 :            :     // disable unused XFillFloatTransparenceItem
     424 [ #  # ][ #  # ]:          0 :     if(bSwitchOffLinear && (bLinearActive || bLinearUsed))
                 [ #  # ]
     425                 :            :     {
     426         [ #  # ]:          0 :         XFillTransparenceItem aItem(0);
     427         [ #  # ]:          0 :         SdrShadowTransparenceItem aShadowItem(0);
     428         [ #  # ]:          0 :         rAttrs.Put(aItem);
     429         [ #  # ]:          0 :         rAttrs.Put(aShadowItem);
     430 [ #  # ][ #  # ]:          0 :         bModified = sal_True;
     431                 :            :     }
     432 [ #  # ][ #  # ]:          0 :     rAttrs.Put (CntUInt16Item(SID_PAGE_TYPE,nPageType));
                 [ #  # ]
     433                 :          0 :     return bModified;
     434                 :            : }
     435                 :            : 
     436                 :          0 : void SvxTransparenceTabPage::Reset(const SfxItemSet& rAttrs)
     437                 :            : {
     438                 :          0 :     const SfxPoolItem* pGradientItem = NULL;
     439         [ #  # ]:          0 :     SfxItemState eStateGradient(rAttrs.GetItemState(XATTR_FILLFLOATTRANSPARENCE, sal_True, &pGradientItem));
     440         [ #  # ]:          0 :     if(!pGradientItem)
     441         [ #  # ]:          0 :         pGradientItem = &rAttrs.Get(XATTR_FILLFLOATTRANSPARENCE);
     442 [ #  # ][ #  # ]:          0 :     sal_Bool bGradActive = (eStateGradient == SFX_ITEM_SET && ((XFillFloatTransparenceItem*)pGradientItem)->IsEnabled());
     443                 :            : 
     444                 :          0 :     const SfxPoolItem* pLinearItem = NULL;
     445         [ #  # ]:          0 :     SfxItemState eStateLinear(rAttrs.GetItemState(XATTR_FILLTRANSPARENCE, sal_True, &pLinearItem));
     446         [ #  # ]:          0 :     if(!pLinearItem)
     447         [ #  # ]:          0 :         pLinearItem = &rAttrs.Get(XATTR_FILLTRANSPARENCE);
     448 [ #  # ][ #  # ]:          0 :     sal_Bool bLinearActive = (eStateLinear == SFX_ITEM_SET && ((XFillTransparenceItem*)pLinearItem)->GetValue() != 0);
     449                 :            : 
     450                 :            :     // transparence gradient
     451         [ #  # ]:          0 :     const XGradient& rGradient = ((XFillFloatTransparenceItem*)pGradientItem)->GetGradientValue();
     452                 :          0 :     XGradientStyle eXGS(rGradient.GetGradientStyle());
     453         [ #  # ]:          0 :     aLbTrgrGradientType.SelectEntryPos(sal::static_int_cast< sal_uInt16 >(eXGS));
     454         [ #  # ]:          0 :     aMtrTrgrAngle.SetValue(rGradient.GetAngle() / 10);
     455         [ #  # ]:          0 :     aMtrTrgrBorder.SetValue(rGradient.GetBorder());
     456         [ #  # ]:          0 :     aMtrTrgrCenterX.SetValue(rGradient.GetXOffset());
     457         [ #  # ]:          0 :     aMtrTrgrCenterY.SetValue(rGradient.GetYOffset());
     458         [ #  # ]:          0 :     aMtrTrgrStartValue.SetValue((sal_uInt16)((((sal_uInt16)rGradient.GetStartColor().GetRed() + 1) * 100) / 255));
     459         [ #  # ]:          0 :     aMtrTrgrEndValue.SetValue((sal_uInt16)((((sal_uInt16)rGradient.GetEndColor().GetRed() + 1) * 100) / 255));
     460                 :            : 
     461                 :            :     // linear transparence
     462                 :          0 :     sal_uInt16 nTransp = ((XFillTransparenceItem*)pLinearItem)->GetValue();
     463 [ #  # ][ #  # ]:          0 :     aMtrTransparent.SetValue(bLinearActive ? nTransp : 50);
     464         [ #  # ]:          0 :     ModifyTransparentHdl_Impl(NULL);
     465                 :            : 
     466                 :            :     // select the correct radio button
     467         [ #  # ]:          0 :     if(bGradActive)
     468                 :            :     {
     469                 :            :         // transparence gradient, set controls appropriate to item
     470         [ #  # ]:          0 :         aRbtTransGradient.Check();
     471         [ #  # ]:          0 :         ClickTransGradientHdl_Impl(NULL);
     472                 :            :     }
     473         [ #  # ]:          0 :     else if(bLinearActive)
     474                 :            :     {
     475                 :            :         // linear transparence
     476         [ #  # ]:          0 :         aRbtTransLinear.Check();
     477         [ #  # ]:          0 :         ClickTransLinearHdl_Impl(NULL);
     478                 :            :     }
     479                 :            :     else
     480                 :            :     {
     481                 :            :         // no transparence
     482         [ #  # ]:          0 :         aRbtTransOff.Check();
     483         [ #  # ]:          0 :         ClickTransOffHdl_Impl(NULL);
     484         [ #  # ]:          0 :         ModifiedTrgrHdl_Impl(NULL);
     485                 :            :     }
     486                 :            : 
     487                 :            :     // save values
     488         [ #  # ]:          0 :     aMtrTransparent.SaveValue();
     489         [ #  # ]:          0 :     aLbTrgrGradientType.SaveValue();
     490         [ #  # ]:          0 :     aMtrTrgrCenterX.SaveValue();
     491         [ #  # ]:          0 :     aMtrTrgrCenterY.SaveValue();
     492         [ #  # ]:          0 :     aMtrTrgrAngle.SaveValue();
     493         [ #  # ]:          0 :     aMtrTrgrBorder.SaveValue();
     494         [ #  # ]:          0 :     aMtrTrgrStartValue.SaveValue();
     495         [ #  # ]:          0 :     aMtrTrgrEndValue.SaveValue();
     496                 :            : 
     497         [ #  # ]:          0 :     sal_Bool bActive = InitPreview ( rAttrs );
     498         [ #  # ]:          0 :     InvalidatePreview ( bActive );
     499                 :          0 : }
     500                 :            : 
     501                 :          0 : void SvxTransparenceTabPage::ActivatePage(const SfxItemSet& rSet)
     502                 :            : {
     503                 :          0 :     SFX_ITEMSET_ARG (&rSet,pPageTypeItem,CntUInt16Item,SID_PAGE_TYPE,sal_False);
     504         [ #  # ]:          0 :     if (pPageTypeItem)
     505                 :          0 :         SetPageType(pPageTypeItem->GetValue());
     506                 :            : 
     507         [ #  # ]:          0 :     if(nDlgType == 0) // area dialog
     508                 :          0 :         nPageType = PT_TRANSPARENCE;
     509                 :            : 
     510                 :          0 :     InitPreview ( rSet );
     511                 :          0 : }
     512                 :            : 
     513                 :          0 : int SvxTransparenceTabPage::DeactivatePage(SfxItemSet* _pSet)
     514                 :            : {
     515         [ #  # ]:          0 :     if( _pSet )
     516                 :          0 :         FillItemSet( *_pSet );
     517                 :          0 :     return(LEAVE_PAGE);
     518                 :            : }
     519                 :            : 
     520                 :          0 : void SvxTransparenceTabPage::PointChanged(Window* , RECT_POINT eRcPt)
     521                 :            : {
     522                 :          0 :     eRP = eRcPt;
     523                 :          0 : }
     524                 :            : 
     525                 :            : //
     526                 :            : // Preview-Methods
     527                 :            : //
     528                 :          0 : sal_Bool SvxTransparenceTabPage::InitPreview ( const SfxItemSet& rSet )
     529                 :            : {
     530                 :            :     // set transparencetyp for preview
     531         [ #  # ]:          0 :     if ( aRbtTransOff.IsChecked() )
     532                 :            :     {
     533                 :          0 :         ClickTransOffHdl_Impl(NULL);
     534         [ #  # ]:          0 :     } else if ( aRbtTransLinear.IsChecked() )
     535                 :            :     {
     536                 :          0 :         ClickTransLinearHdl_Impl(NULL);
     537         [ #  # ]:          0 :     } else if ( aRbtTransGradient.IsChecked() )
     538                 :            :     {
     539                 :          0 :         ClickTransGradientHdl_Impl(NULL);
     540                 :            :     }
     541                 :            : 
     542                 :            :     // Get fillstyle for preview
     543                 :          0 :     rXFSet.Put ( ( XFillStyleItem& )    rSet.Get(XATTR_FILLSTYLE) );
     544                 :          0 :     rXFSet.Put ( ( XFillColorItem& )    rSet.Get(XATTR_FILLCOLOR) );
     545                 :          0 :     rXFSet.Put ( ( XFillGradientItem& ) rSet.Get(XATTR_FILLGRADIENT) );
     546                 :          0 :     rXFSet.Put ( ( XFillHatchItem& )    rSet.Get(XATTR_FILLHATCH) );
     547                 :          0 :     rXFSet.Put ( ( XFillBackgroundItem&)rSet.Get(XATTR_FILLBACKGROUND) );
     548                 :          0 :     rXFSet.Put ( ( XFillBitmapItem& )   rSet.Get(XATTR_FILLBITMAP) );
     549                 :            : 
     550                 :          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
     551                 :          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
     552                 :            : 
     553                 :          0 :     bBitmap = ( ( ( XFillStyleItem& )rSet.Get(XATTR_FILLSTYLE) ).GetValue() == XFILL_BITMAP );
     554                 :            : 
     555                 :            :     // show the right preview window
     556         [ #  # ]:          0 :     if ( bBitmap )
     557                 :            :     {
     558                 :          0 :         aCtlBitmapPreview.Show();
     559                 :          0 :         aCtlXRectPreview.Hide();
     560                 :            :     }
     561                 :            :     else
     562                 :            :     {
     563                 :          0 :         aCtlBitmapPreview.Hide();
     564                 :          0 :         aCtlXRectPreview.Show();
     565                 :            :     }
     566                 :            : 
     567                 :          0 :     return !aRbtTransOff.IsChecked();
     568                 :            : }
     569                 :            : 
     570                 :          0 : void SvxTransparenceTabPage::InvalidatePreview (sal_Bool bEnable)
     571                 :            : {
     572         [ #  # ]:          0 :     if ( bBitmap )
     573                 :            :     {
     574         [ #  # ]:          0 :         if ( bEnable )
     575                 :            :         {
     576                 :          0 :             aCtlBitmapPreview.Enable();
     577                 :          0 :             aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
     578                 :            :         }
     579                 :            :         else
     580                 :          0 :             aCtlBitmapPreview.Disable();
     581                 :          0 :         aCtlBitmapPreview.Invalidate();
     582                 :            :     }
     583                 :            :     else
     584                 :            :     {
     585         [ #  # ]:          0 :         if ( bEnable )
     586                 :            :         {
     587                 :          0 :             aCtlXRectPreview.Enable();
     588                 :          0 :             aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
     589                 :            :         }
     590                 :            :         else
     591                 :          0 :             aCtlXRectPreview.Disable();
     592                 :          0 :         aCtlXRectPreview.Invalidate();
     593                 :            :     }
     594                 :          0 : }
     595                 :            : 
     596                 :          0 : void SvxTransparenceTabPage::PageCreated (SfxAllItemSet aSet)
     597                 :            : {
     598                 :          0 :     SFX_ITEMSET_ARG (&aSet,pPageTypeItem,SfxUInt16Item,SID_PAGE_TYPE,sal_False);
     599                 :          0 :     SFX_ITEMSET_ARG (&aSet,pDlgTypeItem,SfxUInt16Item,SID_DLG_TYPE,sal_False);
     600                 :            : 
     601         [ #  # ]:          0 :     if (pPageTypeItem)
     602                 :          0 :         SetPageType(pPageTypeItem->GetValue());
     603         [ #  # ]:          0 :     if (pDlgTypeItem)
     604                 :          0 :         SetDlgType(pDlgTypeItem->GetValue());
     605                 :          0 :     Construct();
     606                 :          0 : }
     607                 :            : /*************************************************************************
     608                 :            : |*
     609                 :            : |*  Dialog to modify fill-attributes
     610                 :            : |*
     611                 :            : \************************************************************************/
     612                 :            : 
     613                 :          0 : SvxAreaTabPage::SvxAreaTabPage( Window* pParent, const SfxItemSet& rInAttrs ) :
     614                 :            : 
     615                 :          0 :     SvxTabPage          ( pParent, CUI_RES( RID_SVXPAGE_AREA ), rInAttrs ),
     616                 :            : 
     617         [ #  # ]:          0 :     aFlProp             ( this, CUI_RES( FL_PROP ) ),
     618         [ #  # ]:          0 :     aTypeLB             ( this, CUI_RES( LB_AREA_TYPE ) ),
     619                 :            : 
     620         [ #  # ]:          0 :     aLbColor            ( this, CUI_RES( LB_COLOR ) ),
     621         [ #  # ]:          0 :     aLbGradient         ( this, CUI_RES( LB_GRADIENT ) ),
     622         [ #  # ]:          0 :     aLbHatching         ( this, CUI_RES( LB_HATCHING ) ),
     623         [ #  # ]:          0 :     aLbBitmap           ( this, CUI_RES( LB_BITMAP ) ),
     624         [ #  # ]:          0 :     aCtlBitmapPreview   ( this, CUI_RES( CTL_BITMAP_PREVIEW ) ),
     625                 :            : 
     626         [ #  # ]:          0 :     aTsbStepCount       ( this, CUI_RES( TSB_STEPCOUNT ) ),
     627         [ #  # ]:          0 :     aFlStepCount        ( this, CUI_RES( FL_STEPCOUNT ) ),
     628         [ #  # ]:          0 :     aNumFldStepCount    ( this, CUI_RES( NUM_FLD_STEPCOUNT ) ),
     629                 :            : 
     630         [ #  # ]:          0 :     aCbxHatchBckgrd     ( this, CUI_RES( CB_HATCHBCKGRD ) ),
     631         [ #  # ]:          0 :     aLbHatchBckgrdColor ( this, CUI_RES( LB_HATCHBCKGRDCOLOR ) ),
     632                 :            : 
     633         [ #  # ]:          0 :     aFlSize             ( this, CUI_RES( FL_SIZE ) ),
     634         [ #  # ]:          0 :     aTsbOriginal        ( this, CUI_RES( TSB_ORIGINAL ) ),
     635         [ #  # ]:          0 :     aTsbScale           ( this, CUI_RES( TSB_SCALE ) ),
     636         [ #  # ]:          0 :     aFtXSize            ( this, CUI_RES( FT_X_SIZE ) ),
     637         [ #  # ]:          0 :     aMtrFldXSize        ( this, CUI_RES( MTR_FLD_X_SIZE ) ),
     638         [ #  # ]:          0 :     aFtYSize            ( this, CUI_RES( FT_Y_SIZE ) ),
     639         [ #  # ]:          0 :     aMtrFldYSize        ( this, CUI_RES( MTR_FLD_Y_SIZE ) ),
     640         [ #  # ]:          0 :     aFlPosition         ( this, CUI_RES( FL_POSITION ) ),
     641         [ #  # ]:          0 :     aCtlPosition        ( this, CUI_RES( CTL_POSITION ), RP_RM, 110, 80, CS_RECT ),
     642         [ #  # ]:          0 :     aFtXOffset          ( this, CUI_RES( FT_X_OFFSET ) ),
     643         [ #  # ]:          0 :     aMtrFldXOffset      ( this, CUI_RES( MTR_FLD_X_OFFSET ) ),
     644         [ #  # ]:          0 :     aFtYOffset          ( this, CUI_RES( FT_Y_OFFSET ) ),
     645         [ #  # ]:          0 :     aMtrFldYOffset      ( this, CUI_RES( MTR_FLD_Y_OFFSET ) ),
     646         [ #  # ]:          0 :     aTsbTile            ( this, CUI_RES( TSB_TILE ) ),
     647         [ #  # ]:          0 :     aTsbStretch         ( this, CUI_RES( TSB_STRETCH ) ),
     648         [ #  # ]:          0 :     aFlOffset           ( this, CUI_RES( FL_OFFSET ) ),
     649         [ #  # ]:          0 :     aRbtRow             ( this, CUI_RES( RBT_ROW ) ),
     650         [ #  # ]:          0 :     aRbtColumn          ( this, CUI_RES( RBT_COLUMN ) ),
     651         [ #  # ]:          0 :     aMtrFldOffset       ( this, CUI_RES( MTR_FLD_OFFSET ) ),
     652                 :            : 
     653         [ #  # ]:          0 :     aCtlXRectPreview    ( this, CUI_RES( CTL_COLOR_PREVIEW ) ),
     654                 :            : 
     655                 :            :     rOutAttrs           ( rInAttrs ),
     656                 :            : 
     657                 :            :     pColorList( NULL ),
     658                 :            :     pGradientList( NULL ),
     659                 :            :     pHatchingList( NULL ),
     660                 :            :     pBitmapList( NULL ),
     661                 :            : 
     662                 :          0 :     pXPool              ( (XOutdevItemPool*) rInAttrs.GetPool() ),
     663                 :            :     aXFillAttr          ( pXPool ),
     664 [ #  # ][ #  # ]:          0 :     rXFSet              ( aXFillAttr.GetItemSet() )
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
     665                 :            : {
     666         [ #  # ]:          0 :     FreeResource();
     667                 :            : 
     668 [ #  # ][ #  # ]:          0 :     String accName = String(CUI_RES(STR_EXAMPLE));
     669         [ #  # ]:          0 :     aCtlXRectPreview.SetAccessibleName(accName);
     670         [ #  # ]:          0 :     aCtlBitmapPreview.SetAccessibleName(accName);
     671                 :            : 
     672                 :            :     // groups that overlay each other
     673         [ #  # ]:          0 :     aLbBitmap.Hide();
     674         [ #  # ]:          0 :     aCtlBitmapPreview.Hide();
     675                 :            : 
     676         [ #  # ]:          0 :     aFlStepCount.Hide();
     677         [ #  # ]:          0 :     aTsbStepCount.Hide();
     678         [ #  # ]:          0 :     aNumFldStepCount.Hide();
     679                 :            : 
     680         [ #  # ]:          0 :     aTsbTile.Hide();
     681         [ #  # ]:          0 :     aTsbStretch.Hide();
     682         [ #  # ]:          0 :     aTsbScale.Hide();
     683         [ #  # ]:          0 :     aTsbOriginal.Hide();
     684         [ #  # ]:          0 :     aFtXSize.Hide();
     685         [ #  # ]:          0 :     aMtrFldXSize.Hide();
     686         [ #  # ]:          0 :     aFtYSize.Hide();
     687         [ #  # ]:          0 :     aMtrFldYSize.Hide();
     688         [ #  # ]:          0 :     aFlSize.Hide();
     689         [ #  # ]:          0 :     aRbtRow.Hide();
     690         [ #  # ]:          0 :     aRbtColumn.Hide();
     691         [ #  # ]:          0 :     aMtrFldOffset.Hide();
     692         [ #  # ]:          0 :     aFlOffset.Hide();
     693         [ #  # ]:          0 :     aCtlPosition.Hide();
     694         [ #  # ]:          0 :     aFtXOffset.Hide();
     695         [ #  # ]:          0 :     aMtrFldXOffset.Hide();
     696         [ #  # ]:          0 :     aFtYOffset.Hide();
     697         [ #  # ]:          0 :     aMtrFldYOffset.Hide();
     698         [ #  # ]:          0 :     aFlPosition.Hide();
     699                 :            :     // Controls for Hatch-Background
     700         [ #  # ]:          0 :     aCbxHatchBckgrd.Hide();
     701         [ #  # ]:          0 :     aLbHatchBckgrdColor.Hide();
     702                 :            : 
     703                 :            : 
     704         [ #  # ]:          0 :     aTsbOriginal.EnableTriState( sal_False );
     705                 :            : 
     706                 :            : 
     707                 :            :     // this page needs ExchangeSupport
     708                 :          0 :     SetExchangeSupport();
     709                 :            : 
     710                 :            :     // set Metrics
     711         [ #  # ]:          0 :     eFUnit = GetModuleFieldUnit( rInAttrs );
     712                 :            : 
     713         [ #  # ]:          0 :     switch ( eFUnit )
     714                 :            :     {
     715                 :            :         case FUNIT_M:
     716                 :            :         case FUNIT_KM:
     717                 :          0 :             eFUnit = FUNIT_MM;
     718                 :          0 :         break;
     719                 :            :         default: ;//prevent warning
     720                 :            :     }
     721         [ #  # ]:          0 :     SetFieldUnit( aMtrFldXSize, eFUnit, sal_True );
     722         [ #  # ]:          0 :     SetFieldUnit( aMtrFldYSize, eFUnit, sal_True );
     723                 :            : 
     724                 :            :     // get PoolUnit
     725                 :          0 :     SfxItemPool* pPool = rOutAttrs.GetPool();
     726                 :            :     DBG_ASSERT( pPool, "Wo ist der Pool?" );
     727         [ #  # ]:          0 :     ePoolUnit = pPool->GetMetric( XATTR_FILLBMP_SIZEX );
     728                 :            : 
     729                 :            :     // setting the output device
     730 [ #  # ][ #  # ]:          0 :     rXFSet.Put( XFillStyleItem( XFILL_SOLID ) );
                 [ #  # ]
     731 [ #  # ][ #  # ]:          0 :     rXFSet.Put( XFillColorItem( String(), COL_BLACK ) );
         [ #  # ][ #  # ]
                 [ #  # ]
     732         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
     733         [ #  # ]:          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
     734                 :            : 
     735         [ #  # ]:          0 :     aLbColor.SetSelectHdl( LINK( this, SvxAreaTabPage, ModifyColorHdl_Impl ) );
     736         [ #  # ]:          0 :     aLbHatchBckgrdColor.SetSelectHdl( LINK( this, SvxAreaTabPage, ModifyHatchBckgrdColorHdl_Impl ) );
     737         [ #  # ]:          0 :     aCbxHatchBckgrd.SetToggleHdl( LINK( this, SvxAreaTabPage, ToggleHatchBckgrdColorHdl_Impl ) );
     738                 :            : 
     739                 :            :     aLbGradient.SetSelectHdl(
     740         [ #  # ]:          0 :         LINK( this, SvxAreaTabPage, ModifyGradientHdl_Impl ) );
     741                 :            :     aLbHatching.SetSelectHdl(
     742         [ #  # ]:          0 :         LINK( this, SvxAreaTabPage, ModifyHatchingHdl_Impl ) );
     743                 :            :     aLbBitmap.SetSelectHdl(
     744         [ #  # ]:          0 :         LINK( this, SvxAreaTabPage, ModifyBitmapHdl_Impl ) );
     745                 :            : 
     746                 :            :     aTsbStepCount.SetClickHdl(
     747         [ #  # ]:          0 :         LINK( this, SvxAreaTabPage, ModifyStepCountHdl_Impl ) );
     748                 :            :     aNumFldStepCount.SetModifyHdl(
     749         [ #  # ]:          0 :         LINK( this, SvxAreaTabPage, ModifyStepCountHdl_Impl ) );
     750                 :            : 
     751         [ #  # ]:          0 :     Link aLink( LINK( this, SvxAreaTabPage, ModifyTileHdl_Impl ) );
     752                 :          0 :     aTsbTile.SetClickHdl( aLink );
     753                 :          0 :     aTsbStretch.SetClickHdl( aLink );
     754                 :          0 :     aTsbOriginal.SetClickHdl( aLink );
     755                 :          0 :     aMtrFldXSize.SetModifyHdl( aLink );
     756                 :          0 :     aMtrFldYSize.SetModifyHdl( aLink );
     757                 :          0 :     aRbtRow.SetClickHdl( aLink );
     758                 :          0 :     aRbtColumn.SetClickHdl( aLink );
     759                 :          0 :     aMtrFldOffset.SetModifyHdl( aLink );
     760                 :          0 :     aMtrFldXOffset.SetModifyHdl( aLink );
     761                 :          0 :     aMtrFldYOffset.SetModifyHdl( aLink );
     762         [ #  # ]:          0 :     aTsbScale.SetClickHdl( LINK( this, SvxAreaTabPage, ClickScaleHdl_Impl ) );
     763                 :            : 
     764         [ #  # ]:          0 :     aTypeLB.SetSelectHdl( LINK( this, SvxAreaTabPage, SelectDialogTypeHdl_Impl ) );
     765                 :            : 
     766                 :            :     // #i76307# always paint the preview in LTR, because this is what the document does
     767         [ #  # ]:          0 :     aCtlXRectPreview.EnableRTL(sal_False);
     768                 :            : 
     769         [ #  # ]:          0 :     aNumFldStepCount.SetAccessibleRelationLabeledBy( &aTsbStepCount );
     770         [ #  # ]:          0 :     aCtlPosition.SetAccessibleRelationMemberOf( &aFlPosition );
     771         [ #  # ]:          0 :     aLbHatchBckgrdColor.SetAccessibleRelationLabeledBy( &aCbxHatchBckgrd );
     772 [ #  # ][ #  # ]:          0 :     aLbHatchBckgrdColor.SetAccessibleName(aCbxHatchBckgrd.GetText());
                 [ #  # ]
     773                 :            : 
     774         [ #  # ]:          0 :     aLbColor.SetAccessibleRelationMemberOf( &aFlProp );
     775         [ #  # ]:          0 :     aMtrFldOffset.SetAccessibleRelationLabeledBy(&aFlOffset);
     776 [ #  # ][ #  # ]:          0 :     aMtrFldOffset.SetAccessibleName(aFlOffset.GetText());
         [ #  # ][ #  # ]
     777                 :          0 : }
     778                 :            : 
     779                 :            : // -----------------------------------------------------------------------
     780                 :            : 
     781                 :          0 : void SvxAreaTabPage::Construct()
     782                 :            : {
     783                 :            :     // fill colortables / lists
     784                 :          0 :     aLbColor.Fill( pColorList );
     785                 :          0 :     aLbHatchBckgrdColor.Fill ( pColorList );
     786                 :            : 
     787                 :          0 :     aLbGradient.Fill( pGradientList );
     788                 :          0 :     aLbHatching.Fill( pHatchingList );
     789                 :          0 :     aLbBitmap.Fill( pBitmapList );
     790                 :          0 : }
     791                 :            : 
     792                 :            : // -----------------------------------------------------------------------
     793                 :            : 
     794                 :          0 : void SvxAreaTabPage::ActivatePage( const SfxItemSet& rSet )
     795                 :            : {
     796                 :            :     sal_uInt16 nCount;
     797                 :          0 :     SFX_ITEMSET_ARG (&rSet,pPageTypeItem,SfxUInt16Item,SID_PAGE_TYPE,sal_False);
     798                 :          0 :     SFX_ITEMSET_ARG (&rSet,pPosItem,SfxUInt16Item,SID_TABPAGE_POS,sal_False);
     799         [ #  # ]:          0 :     if (pPageTypeItem)
     800                 :          0 :         SetPageType(pPageTypeItem->GetValue());
     801         [ #  # ]:          0 :     if (pPosItem)
     802                 :          0 :         SetPos(pPosItem->GetValue());
     803         [ #  # ]:          0 :     if( nDlgType == 0 ) // area dialog
     804                 :            :     {
     805                 :          0 :         *pbAreaTP = sal_True;
     806                 :            : 
     807         [ #  # ]:          0 :         if( pColorList.is() )
     808                 :            :         {
     809                 :          0 :             sal_uInt16 _nPos = 0;
     810                 :            : 
     811         [ #  # ]:          0 :             if( *pnBitmapListState )
     812                 :            :             {
     813         [ #  # ]:          0 :                 if( *pnBitmapListState & CT_CHANGED )
     814                 :          0 :                     pBitmapList = ( (SvxAreaTabDialog*) GetParentDialog() )->
     815         [ #  # ]:          0 :                                             GetNewBitmapList();
     816                 :            : 
     817                 :          0 :                 _nPos = aLbBitmap.GetSelectEntryPos();
     818                 :            : 
     819                 :          0 :                 aLbBitmap.Clear();
     820                 :          0 :                 aLbBitmap.Fill( pBitmapList );
     821                 :          0 :                 nCount = aLbBitmap.GetEntryCount();
     822         [ #  # ]:          0 :                 if( nCount == 0 )
     823                 :            :                     ; // This case should never occur
     824         [ #  # ]:          0 :                 else if( nCount <= _nPos )
     825                 :          0 :                     aLbBitmap.SelectEntryPos( 0 );
     826                 :            :                 else
     827                 :          0 :                     aLbBitmap.SelectEntryPos( _nPos );
     828                 :          0 :                 ModifyBitmapHdl_Impl( this );
     829                 :            :             }
     830                 :            : 
     831         [ #  # ]:          0 :             if( *pnHatchingListState )
     832                 :            :             {
     833         [ #  # ]:          0 :                 if( *pnHatchingListState & CT_CHANGED )
     834                 :          0 :                     pHatchingList = ( (SvxAreaTabDialog*) GetParentDialog() )->
     835         [ #  # ]:          0 :                                             GetNewHatchingList();
     836                 :            : 
     837                 :          0 :                 _nPos = aLbHatching.GetSelectEntryPos();
     838                 :            : 
     839                 :          0 :                 aLbHatching.Clear();
     840                 :          0 :                 aLbHatching.Fill( pHatchingList );
     841                 :          0 :                 nCount = aLbHatching.GetEntryCount();
     842         [ #  # ]:          0 :                 if( nCount == 0 )
     843                 :            :                     ; // This case should never occur
     844         [ #  # ]:          0 :                 else if( nCount <= _nPos )
     845                 :          0 :                     aLbHatching.SelectEntryPos( 0 );
     846                 :            :                 else
     847                 :          0 :                     aLbHatching.SelectEntryPos( _nPos );
     848                 :          0 :                 ModifyHatchingHdl_Impl( this );
     849                 :            : 
     850                 :          0 :                 ModifyHatchBckgrdColorHdl_Impl( this );
     851                 :            :             }
     852                 :            : 
     853         [ #  # ]:          0 :             if( *pnGradientListState )
     854                 :            :             {
     855         [ #  # ]:          0 :                 if( *pnGradientListState & CT_CHANGED )
     856                 :          0 :                     pGradientList = ( (SvxAreaTabDialog*) GetParentDialog() )->
     857         [ #  # ]:          0 :                                             GetNewGradientList();
     858                 :            : 
     859                 :          0 :                 _nPos = aLbGradient.GetSelectEntryPos();
     860                 :            : 
     861                 :          0 :                 aLbGradient.Clear();
     862                 :          0 :                 aLbGradient.Fill( pGradientList );
     863                 :          0 :                 nCount = aLbGradient.GetEntryCount();
     864         [ #  # ]:          0 :                 if( nCount == 0 )
     865                 :            :                     ; // This case should never occur
     866         [ #  # ]:          0 :                 else if( nCount <= _nPos )
     867                 :          0 :                     aLbGradient.SelectEntryPos( 0 );
     868                 :            :                 else
     869                 :          0 :                     aLbGradient.SelectEntryPos( _nPos );
     870                 :          0 :                 ModifyGradientHdl_Impl( this );
     871                 :            :             }
     872                 :            : 
     873         [ #  # ]:          0 :             if( *pnColorListState )
     874                 :            :             {
     875         [ #  # ]:          0 :                 if( *pnColorListState & CT_CHANGED )
     876                 :          0 :                     pColorList = ( (SvxAreaTabDialog*) GetParentDialog() )->
     877         [ #  # ]:          0 :                                             GetNewColorList();
     878                 :            :                 // aLbColor
     879                 :          0 :                 _nPos = aLbColor.GetSelectEntryPos();
     880                 :          0 :                 aLbColor.Clear();
     881                 :          0 :                 aLbColor.Fill( pColorList );
     882                 :          0 :                 nCount = aLbColor.GetEntryCount();
     883         [ #  # ]:          0 :                 if( nCount == 0 )
     884                 :            :                     ; // This case should never occur
     885         [ #  # ]:          0 :                 else if( nCount <= _nPos )
     886                 :          0 :                     aLbColor.SelectEntryPos( 0 );
     887                 :            :                 else
     888                 :          0 :                     aLbColor.SelectEntryPos( _nPos );
     889                 :            : 
     890                 :          0 :                 ModifyColorHdl_Impl( this );
     891                 :            : 
     892                 :            :                 // Backgroundcolor of hatch
     893                 :          0 :                 _nPos = aLbHatchBckgrdColor.GetSelectEntryPos();
     894                 :          0 :                 aLbHatchBckgrdColor.Clear();
     895                 :          0 :                 aLbHatchBckgrdColor.Fill( pColorList );
     896                 :          0 :                 nCount = aLbHatchBckgrdColor.GetEntryCount();
     897         [ #  # ]:          0 :                 if( nCount == 0 )
     898                 :            :                     ; // This case should never occur
     899         [ #  # ]:          0 :                 else if( nCount <= _nPos )
     900                 :          0 :                     aLbHatchBckgrdColor.SelectEntryPos( 0 );
     901                 :            :                 else
     902                 :          0 :                     aLbHatchBckgrdColor.SelectEntryPos( _nPos );
     903                 :            : 
     904                 :          0 :                 ModifyHatchBckgrdColorHdl_Impl( this );
     905                 :            :             }
     906                 :            : 
     907                 :            :             // evaluate if any other Tabpage set another filltype
     908         [ #  # ]:          0 :             if( aTypeLB.GetSelectEntryPos() > XFILL_NONE)
     909                 :            :             {
     910   [ #  #  #  #  :          0 :                 switch( nPageType )
                      # ]
     911                 :            :                 {
     912                 :            :                     case PT_GRADIENT:
     913                 :          0 :                         aTypeLB.SelectEntryPos( XFILL_GRADIENT );
     914                 :          0 :                         aLbGradient.SelectEntryPos( _nPos );
     915                 :          0 :                         ClickGradientHdl_Impl();
     916                 :          0 :                     break;
     917                 :            : 
     918                 :            :                     case PT_HATCH:
     919                 :          0 :                         aTypeLB.SelectEntryPos( XFILL_HATCH );
     920                 :          0 :                         aLbHatching.SelectEntryPos( _nPos );
     921                 :          0 :                         ClickHatchingHdl_Impl();
     922                 :          0 :                     break;
     923                 :            : 
     924                 :            :                     case PT_BITMAP:
     925                 :          0 :                         aTypeLB.SelectEntryPos( XFILL_BITMAP );
     926                 :          0 :                         aLbBitmap.SelectEntryPos( _nPos );
     927                 :          0 :                         ClickBitmapHdl_Impl();
     928                 :          0 :                     break;
     929                 :            : 
     930                 :            :                     case PT_COLOR:
     931                 :          0 :                         aTypeLB.SelectEntryPos( XFILL_SOLID );
     932                 :          0 :                         aLbColor.SelectEntryPos( _nPos );
     933                 :          0 :                         aLbHatchBckgrdColor.SelectEntryPos( _nPos );
     934                 :          0 :                         ClickColorHdl_Impl();
     935                 :          0 :                     break;
     936                 :            :                 }
     937                 :            :             }
     938                 :          0 :             nPageType = PT_AREA;
     939                 :            :         }
     940                 :            :     }
     941                 :          0 : }
     942                 :            : 
     943                 :            : // -----------------------------------------------------------------------
     944                 :            : 
     945                 :          0 : int SvxAreaTabPage::DeactivatePage( SfxItemSet* _pSet )
     946                 :            : {
     947         [ #  # ]:          0 :     if( nDlgType == 0 ) // area dialog
     948                 :            :     {
     949                 :          0 :         sal_uInt16 nPosOrig = nPos;
     950                 :          0 :         XFillStyle eStyle = (XFillStyle) aTypeLB.GetSelectEntryPos();
     951   [ #  #  #  #  :          0 :         switch( eStyle )
                      # ]
     952                 :            :         {
     953                 :            :             case XFILL_GRADIENT:
     954                 :            :             {
     955                 :          0 :                         nPageType = PT_GRADIENT;
     956                 :          0 :                         nPos = aLbGradient.GetSelectEntryPos();
     957         [ #  # ]:          0 :                         if( nPosOrig != nPos )
     958                 :          0 :                             *pnGradientListState |= CT_MODIFIED;
     959                 :            :             }
     960                 :          0 :             break;
     961                 :            :             case XFILL_HATCH:
     962                 :            :             {
     963                 :          0 :                 nPageType = PT_HATCH;
     964                 :          0 :                 nPos = aLbHatching.GetSelectEntryPos();
     965         [ #  # ]:          0 :                 if( nPosOrig != nPos )
     966                 :          0 :                     *pnHatchingListState |= CT_MODIFIED;
     967                 :            :             }
     968                 :          0 :             break;
     969                 :            :             case XFILL_BITMAP:
     970                 :            :             {
     971                 :          0 :                 nPageType = PT_BITMAP;
     972                 :          0 :                 nPos = aLbBitmap.GetSelectEntryPos();
     973         [ #  # ]:          0 :                 if( nPosOrig != nPos )
     974                 :          0 :                     *pnBitmapListState |= CT_MODIFIED;
     975                 :            :             }
     976                 :          0 :             break;
     977                 :            :             case XFILL_SOLID:
     978                 :            :             {
     979                 :          0 :                 nPageType = PT_COLOR;
     980                 :          0 :                 nPos = aLbColor.GetSelectEntryPos();
     981         [ #  # ]:          0 :                 if( nPosOrig != nPos )
     982                 :          0 :                     *pnColorListState |= CT_MODIFIED;
     983                 :            :             }
     984                 :          0 :             break;
     985                 :            :             default: ;//prevent warning
     986                 :            :         }
     987                 :            :     }
     988                 :            : 
     989         [ #  # ]:          0 :     if( _pSet )
     990                 :          0 :         FillItemSet( *_pSet );
     991                 :            : 
     992                 :          0 :     return( LEAVE_PAGE );
     993                 :            : }
     994                 :            : 
     995                 :            : // -----------------------------------------------------------------------
     996                 :            : 
     997                 :          0 : sal_Bool SvxAreaTabPage::FillItemSet( SfxItemSet& rAttrs )
     998                 :            : {
     999                 :          0 :     const SfxPoolItem* pOld = NULL;
    1000                 :            :     sal_uInt16  _nPos;
    1001                 :          0 :     sal_Bool    bModified = sal_False;
    1002                 :            : 
    1003 [ #  # ][ #  # ]:          0 :     if( nDlgType != 0 || *pbAreaTP )
    1004                 :            :     {
    1005         [ #  # ]:          0 :         XFillStyle eStyle = (XFillStyle) aTypeLB.GetSelectEntryPos();
    1006                 :          0 :         XFillStyle eSavedStyle = (XFillStyle) aTypeLB.GetSavedValue();
    1007   [ #  #  #  #  :          0 :         switch( eStyle )
                   #  # ]
    1008                 :            :         {
    1009                 :            :             case XFILL_NONE:
    1010                 :            :             {
    1011         [ #  # ]:          0 :                 if(  eSavedStyle != eStyle )
    1012                 :            :                 {
    1013         [ #  # ]:          0 :                     XFillStyleItem aStyleItem( XFILL_NONE );
    1014         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLSTYLE );
    1015 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillStyleItem*)pOld == aStyleItem ) )
         [ #  # ][ #  # ]
    1016                 :            :                     {
    1017         [ #  # ]:          0 :                         rAttrs.Put( aStyleItem );
    1018                 :          0 :                         bModified = sal_True;
    1019         [ #  # ]:          0 :                     }
    1020                 :            :                 }
    1021                 :            :             }
    1022                 :          0 :             break;
    1023                 :            :             case XFILL_SOLID:
    1024                 :            :             {
    1025         [ #  # ]:          0 :                  _nPos = aLbColor.GetSelectEntryPos();
    1026   [ #  #  #  # ]:          0 :                  if( _nPos != LISTBOX_ENTRY_NOTFOUND &&
                 [ #  # ]
    1027                 :          0 :                      _nPos != aLbColor.GetSavedValue() )
    1028                 :            :                  {
    1029                 :            :                      XFillColorItem aItem( aLbColor.GetSelectEntry(),
    1030 [ #  # ][ #  # ]:          0 :                                            aLbColor.GetSelectEntryColor() );
         [ #  # ][ #  # ]
    1031         [ #  # ]:          0 :                      pOld = GetOldItem( rAttrs, XATTR_FILLCOLOR );
    1032 [ #  # ][ #  # ]:          0 :                      if ( !pOld || !( *(const XFillColorItem*)pOld == aItem ) )
         [ #  # ][ #  # ]
    1033                 :            :                      {
    1034         [ #  # ]:          0 :                          rAttrs.Put( aItem );
    1035                 :          0 :                          bModified = sal_True;
    1036         [ #  # ]:          0 :                      }
    1037                 :            :                  }
    1038                 :            :                  // NEW
    1039 [ #  # ][ #  # ]:          0 :                  if( (eSavedStyle != eStyle) &&
         [ #  # ][ #  # ]
    1040                 :            :                      ( bModified ||
    1041 [ #  # ][ #  # ]:          0 :                        SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLCOLOR ), sal_True ) ) )
    1042                 :            :                  {
    1043         [ #  # ]:          0 :                      XFillStyleItem aStyleItem( XFILL_SOLID );
    1044         [ #  # ]:          0 :                      pOld = GetOldItem( rAttrs, XATTR_FILLSTYLE );
    1045 [ #  # ][ #  # ]:          0 :                      if ( !pOld || !( *(const XFillStyleItem*)pOld == aStyleItem ) )
         [ #  # ][ #  # ]
    1046                 :            :                      {
    1047         [ #  # ]:          0 :                          rAttrs.Put( aStyleItem );
    1048                 :          0 :                          bModified = sal_True;
    1049         [ #  # ]:          0 :                      }
    1050                 :            :                  }
    1051                 :            :             }
    1052                 :          0 :             break;
    1053                 :            :             case XFILL_GRADIENT:
    1054                 :            :             {
    1055         [ #  # ]:          0 :                 _nPos = aLbGradient.GetSelectEntryPos();
    1056   [ #  #  #  # ]:          0 :                 if( _nPos != LISTBOX_ENTRY_NOTFOUND &&
                 [ #  # ]
    1057                 :          0 :                     _nPos != aLbGradient.GetSavedValue() )
    1058                 :            :                 {
    1059         [ #  # ]:          0 :                     XGradient aGradient = pGradientList->GetGradient( _nPos )->GetGradient();
    1060         [ #  # ]:          0 :                     String aString = aLbGradient.GetSelectEntry();
    1061         [ #  # ]:          0 :                     XFillGradientItem aItem( aString, aGradient );
    1062         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLGRADIENT );
    1063 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillGradientItem*)pOld == aItem ) )
         [ #  # ][ #  # ]
    1064                 :            :                     {
    1065         [ #  # ]:          0 :                         rAttrs.Put( aItem );
    1066                 :          0 :                         bModified = sal_True;
    1067 [ #  # ][ #  # ]:          0 :                     }
    1068                 :            :                 }
    1069                 :            :                 // NEW
    1070 [ #  # ][ #  # ]:          0 :                 if( (eSavedStyle != eStyle) &&
         [ #  # ][ #  # ]
    1071                 :            :                     ( bModified ||
    1072 [ #  # ][ #  # ]:          0 :                       SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLGRADIENT ), sal_True ) ) )
    1073                 :            :                 {
    1074         [ #  # ]:          0 :                     XFillStyleItem aStyleItem( XFILL_GRADIENT );
    1075         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLSTYLE );
    1076 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillStyleItem*)pOld == aStyleItem ) )
         [ #  # ][ #  # ]
    1077                 :            :                     {
    1078         [ #  # ]:          0 :                         rAttrs.Put( aStyleItem );
    1079                 :          0 :                         bModified = sal_True;
    1080         [ #  # ]:          0 :                     }
    1081                 :            :                 }
    1082                 :            :             }
    1083                 :          0 :             break;
    1084                 :            :             case XFILL_HATCH:
    1085                 :            :             {
    1086         [ #  # ]:          0 :                 _nPos = aLbHatching.GetSelectEntryPos();
    1087   [ #  #  #  # ]:          0 :                 if( _nPos != LISTBOX_ENTRY_NOTFOUND &&
                 [ #  # ]
    1088                 :          0 :                    _nPos != aLbHatching.GetSavedValue() )
    1089                 :            :                 {
    1090         [ #  # ]:          0 :                     XHatch aHatching = pHatchingList->GetHatch( _nPos )->GetHatch();
    1091         [ #  # ]:          0 :                     String aString = aLbHatching.GetSelectEntry();
    1092         [ #  # ]:          0 :                     XFillHatchItem aItem( aString, aHatching );
    1093         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLHATCH );
    1094 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillHatchItem*)pOld == aItem ) )
         [ #  # ][ #  # ]
    1095                 :            :                     {
    1096         [ #  # ]:          0 :                         rAttrs.Put( aItem );
    1097                 :          0 :                         bModified = sal_True;
    1098 [ #  # ][ #  # ]:          0 :                     }
    1099                 :            :                 }
    1100 [ #  # ][ #  # ]:          0 :                 XFillBackgroundItem aItem ( aCbxHatchBckgrd.IsChecked() );
    1101         [ #  # ]:          0 :                 rAttrs.Put( aItem );
    1102         [ #  # ]:          0 :                 nPos = aLbHatchBckgrdColor.GetSelectEntryPos();
    1103   [ #  #  #  # ]:          0 :                 if( nPos != LISTBOX_ENTRY_NOTFOUND &&
                 [ #  # ]
    1104                 :          0 :                      nPos != aLbHatchBckgrdColor.GetSavedValue() )
    1105                 :            :                 {
    1106                 :            :                     XFillColorItem aFillColorItem( aLbHatchBckgrdColor.GetSelectEntry(),
    1107 [ #  # ][ #  # ]:          0 :                                           aLbHatchBckgrdColor.GetSelectEntryColor() );
         [ #  # ][ #  # ]
    1108         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLCOLOR );
    1109 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillColorItem*)pOld == aFillColorItem ) )
         [ #  # ][ #  # ]
    1110                 :            :                     {
    1111         [ #  # ]:          0 :                         rAttrs.Put( aFillColorItem );
    1112                 :          0 :                         bModified = sal_True;
    1113         [ #  # ]:          0 :                     }
    1114                 :            :                 }
    1115                 :            :                 // NEW
    1116 [ #  # ][ #  # ]:          0 :                 if( (eSavedStyle != eStyle) &&
         [ #  # ][ #  # ]
    1117                 :            :                     ( bModified ||
    1118 [ #  # ][ #  # ]:          0 :                       SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLHATCH ), sal_True ) ) )
    1119                 :            :                 {
    1120         [ #  # ]:          0 :                     XFillStyleItem aStyleItem( XFILL_HATCH );
    1121         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLSTYLE );
    1122 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillStyleItem*)pOld == aStyleItem ) )
         [ #  # ][ #  # ]
    1123                 :            :                     {
    1124         [ #  # ]:          0 :                         rAttrs.Put( aStyleItem );
    1125                 :          0 :                         bModified = sal_True;
    1126         [ #  # ]:          0 :                     }
    1127         [ #  # ]:          0 :                 }
    1128                 :            :             }
    1129                 :          0 :             break;
    1130                 :            :             case XFILL_BITMAP:
    1131                 :            :             {
    1132         [ #  # ]:          0 :                 nPos = aLbBitmap.GetSelectEntryPos();
    1133   [ #  #  #  # ]:          0 :                 if( nPos != LISTBOX_ENTRY_NOTFOUND &&
                 [ #  # ]
    1134                 :          0 :                     nPos != aLbBitmap.GetSavedValue() )
    1135                 :            :                 {
    1136 [ #  # ][ #  # ]:          0 :                     XOBitmap aXOBitmap = pBitmapList->GetBitmap( nPos )->GetXBitmap();
    1137         [ #  # ]:          0 :                     String aString = aLbBitmap.GetSelectEntry();
    1138         [ #  # ]:          0 :                     XFillBitmapItem aFillBitmapItem( aString, aXOBitmap );
    1139         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLBITMAP );
    1140 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillBitmapItem*)pOld == aFillBitmapItem ) )
         [ #  # ][ #  # ]
    1141                 :            :                     {
    1142         [ #  # ]:          0 :                         rAttrs.Put( aFillBitmapItem );
    1143                 :          0 :                         bModified = sal_True;
    1144 [ #  # ][ #  # ]:          0 :                     }
                 [ #  # ]
    1145                 :            :                 }
    1146                 :            :                 // NEW
    1147 [ #  # ][ #  # ]:          0 :                 if( (eSavedStyle != eStyle) &&
         [ #  # ][ #  # ]
    1148                 :            :                     ( bModified ||
    1149 [ #  # ][ #  # ]:          0 :                       SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLBITMAP ), sal_True ) ) )
    1150                 :            :                 {
    1151         [ #  # ]:          0 :                     XFillStyleItem aStyleItem( XFILL_BITMAP );
    1152         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLSTYLE );
    1153 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillStyleItem*)pOld == aStyleItem ) )
         [ #  # ][ #  # ]
    1154                 :            :                     {
    1155         [ #  # ]:          0 :                         rAttrs.Put( aStyleItem );
    1156                 :          0 :                         bModified = sal_True;
    1157         [ #  # ]:          0 :                     }
    1158                 :            :                }
    1159                 :            :            }
    1160                 :          0 :            break;
    1161                 :            :        }
    1162                 :            : 
    1163                 :            :         // step size
    1164 [ #  # ][ #  # ]:          0 :         if( aTsbStepCount.IsEnabled() )
    1165                 :            :         {
    1166                 :          0 :             sal_uInt16 nValue = 0;
    1167                 :          0 :             sal_Bool   bValueModified = sal_False;
    1168                 :          0 :             TriState eState = aTsbStepCount.GetState();
    1169         [ #  # ]:          0 :             if( eState == STATE_CHECK )
    1170                 :            :             {
    1171         [ #  # ]:          0 :                 if( eState != aTsbStepCount.GetSavedValue() )
    1172                 :          0 :                     bValueModified = sal_True;
    1173                 :            :             }
    1174                 :            :             else
    1175                 :            :             {
    1176                 :            :                 // condition != Disabled ?
    1177 [ #  # ][ #  # ]:          0 :                 if( aNumFldStepCount.GetText().Len() > 0 )
                 [ #  # ]
    1178                 :            :                 {
    1179         [ #  # ]:          0 :                     nValue = (sal_uInt16) aNumFldStepCount.GetValue();
    1180 [ #  # ][ #  # ]:          0 :                     if( nValue != (sal_uInt16) aNumFldStepCount.GetSavedValue().ToInt32() )
    1181                 :          0 :                         bValueModified = sal_True;
    1182                 :            :                 }
    1183                 :            :             }
    1184         [ #  # ]:          0 :             if( bValueModified )
    1185                 :            :             {
    1186         [ #  # ]:          0 :                 XGradientStepCountItem aFillBitmapItem( nValue );
    1187         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_GRADIENTSTEPCOUNT );
    1188 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XGradientStepCountItem*)pOld == aFillBitmapItem ) )
         [ #  # ][ #  # ]
    1189                 :            :                 {
    1190         [ #  # ]:          0 :                     rAttrs.Put( aFillBitmapItem );
    1191                 :          0 :                     bModified = sal_True;
    1192         [ #  # ]:          0 :                 }
    1193                 :            :             }
    1194                 :            :         }
    1195                 :            : 
    1196 [ #  # ][ #  # ]:          0 :         if( aTsbTile.IsEnabled() )
    1197                 :            :         {
    1198                 :          0 :             TriState eState = aTsbTile.GetState();
    1199         [ #  # ]:          0 :             if( eState != aTsbTile.GetSavedValue() )
    1200                 :            :             {
    1201                 :            :                 XFillBmpTileItem aFillBmpTileItem(
    1202         [ #  # ]:          0 :                     sal::static_int_cast< sal_Bool >( eState ) );
    1203         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_TILE );
    1204 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpTileItem*)pOld == aFillBmpTileItem ) )
         [ #  # ][ #  # ]
    1205                 :            :                 {
    1206         [ #  # ]:          0 :                     rAttrs.Put( aFillBmpTileItem );
    1207                 :          0 :                     bModified = sal_True;
    1208         [ #  # ]:          0 :                 }
    1209                 :            :             }
    1210                 :            :         }
    1211                 :            : 
    1212 [ #  # ][ #  # ]:          0 :         if( aTsbStretch.IsEnabled() )
    1213                 :            :         {
    1214                 :          0 :             TriState eState = aTsbStretch.GetState();
    1215         [ #  # ]:          0 :             if( eState != aTsbStretch.GetSavedValue() )
    1216                 :            :             {
    1217                 :            :                 XFillBmpStretchItem aFillBmpStretchItem(
    1218         [ #  # ]:          0 :                     sal::static_int_cast< sal_Bool >( eState ) );
    1219         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_STRETCH );
    1220 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpStretchItem*)pOld == aFillBmpStretchItem ) )
         [ #  # ][ #  # ]
    1221                 :            :                 {
    1222         [ #  # ]:          0 :                     rAttrs.Put( aFillBmpStretchItem );
    1223                 :          0 :                     bModified = sal_True;
    1224         [ #  # ]:          0 :                 }
    1225                 :            :             }
    1226                 :            :         }
    1227                 :            : 
    1228                 :            :         // Original size (in the UI) is used as follows:
    1229                 :            :         // Controls are disabled, but have to be set.
    1230                 :            :         // SizeX = 0; SizeY = 0; Log = sal_True
    1231                 :            : 
    1232                 :            :         //aTsbScale
    1233                 :          0 :         TriState eState = aTsbScale.GetState();
    1234         [ #  # ]:          0 :         if( eState != aTsbScale.GetSavedValue() ||
           [ #  #  #  # ]
         [ #  # ][ #  # ]
    1235         [ #  # ]:          0 :             ( !aTsbScale.IsEnabled() &&
    1236         [ #  # ]:          0 :               aTsbOriginal.IsEnabled() &&
    1237                 :          0 :               aTsbScale.GetSavedValue() != STATE_CHECK ) )
    1238                 :            :         {
    1239                 :          0 :             XFillBmpSizeLogItem* pItem = NULL;
    1240 [ #  # ][ #  # ]:          0 :             if( aTsbScale.IsEnabled() )
    1241 [ #  # ][ #  # ]:          0 :                 pItem = new XFillBmpSizeLogItem( eState == STATE_NOCHECK );
    1242 [ #  # ][ #  # ]:          0 :             else if( aTsbOriginal.IsEnabled() && aTsbOriginal.GetState() == STATE_CHECK )
         [ #  # ][ #  # ]
    1243 [ #  # ][ #  # ]:          0 :                 pItem = new XFillBmpSizeLogItem( sal_True );
    1244                 :            : 
    1245         [ #  # ]:          0 :             if( pItem )
    1246                 :            :             {
    1247         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_SIZELOG );
    1248 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpSizeLogItem*)pOld == *pItem ) )
         [ #  # ][ #  # ]
    1249                 :            :                 {
    1250         [ #  # ]:          0 :                     rAttrs.Put( *pItem );
    1251                 :          0 :                     bModified = sal_True;
    1252                 :            :                 }
    1253 [ #  # ][ #  # ]:          0 :                 delete pItem;
    1254                 :            :             }
    1255                 :            :         }
    1256                 :            : 
    1257                 :            :         //aMtrFldXSize
    1258         [ #  # ]:          0 :         String aStr = aMtrFldXSize.GetText();
    1259                 :            :         {
    1260                 :          0 :             XFillBmpSizeXItem* pItem = NULL;
    1261                 :          0 :             TriState eScaleState = aTsbScale.GetState();
    1262                 :            : 
    1263   [ #  #  #  # ]:          0 :             if( aMtrFldXSize.IsEnabled() &&
         [ #  # ][ #  # ]
                 [ #  # ]
    1264                 :          0 :                 aStr.Len() > 0  &&
    1265         [ #  # ]:          0 :                 aStr != aMtrFldXSize.GetSavedValue() )
    1266                 :            :             {
    1267         [ #  # ]:          0 :                 if( eScaleState == STATE_NOCHECK )
    1268 [ #  # ][ #  # ]:          0 :                     pItem = new XFillBmpSizeXItem( GetCoreValue( aMtrFldXSize, ePoolUnit ) );
                 [ #  # ]
    1269                 :            :                 else
    1270                 :            :                 {
    1271                 :            :                     // Percentage values are set negatively, so that
    1272                 :            :                     // they aren't scaled; this is considered in the item.
    1273 [ #  # ][ #  # ]:          0 :                     pItem = new XFillBmpSizeXItem( -labs( static_cast<long>(aMtrFldXSize.GetValue()) ) );
                 [ #  # ]
    1274                 :            :                 }
    1275                 :            :             }
    1276 [ #  # ][ #  #  :          0 :             else if( aTsbOriginal.IsEnabled() &&
             #  #  #  # ]
                 [ #  # ]
    1277                 :          0 :                      aTsbOriginal.GetState() == STATE_CHECK &&
    1278                 :          0 :                      aMtrFldXSize.GetSavedValue().Len() > 0 )
    1279 [ #  # ][ #  # ]:          0 :                 pItem = new XFillBmpSizeXItem( 0 );
    1280                 :            : 
    1281         [ #  # ]:          0 :             if( pItem )
    1282                 :            :             {
    1283         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_SIZEX );
    1284 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpSizeXItem*)pOld == *pItem ) )
         [ #  # ][ #  # ]
    1285                 :            :                 {
    1286         [ #  # ]:          0 :                     rAttrs.Put( *pItem );
    1287                 :          0 :                     bModified = sal_True;
    1288                 :            :                 }
    1289 [ #  # ][ #  # ]:          0 :                 delete pItem;
    1290                 :            :             }
    1291                 :            :         }
    1292                 :            : 
    1293                 :            :         //aMtrFldYSize
    1294 [ #  # ][ #  # ]:          0 :         aStr = aMtrFldYSize.GetText();
                 [ #  # ]
    1295                 :            :         {
    1296                 :          0 :             XFillBmpSizeYItem* pItem = NULL;
    1297                 :          0 :             TriState eScaleState = aTsbScale.GetState();
    1298                 :            : 
    1299   [ #  #  #  # ]:          0 :             if( aMtrFldYSize.IsEnabled() &&
         [ #  # ][ #  # ]
                 [ #  # ]
    1300                 :          0 :                 aStr.Len() > 0  &&
    1301         [ #  # ]:          0 :                 aStr != aMtrFldYSize.GetSavedValue() )
    1302                 :            :             {
    1303         [ #  # ]:          0 :                 if( eScaleState == STATE_NOCHECK )
    1304 [ #  # ][ #  # ]:          0 :                     pItem = new XFillBmpSizeYItem( GetCoreValue( aMtrFldYSize, ePoolUnit ) );
                 [ #  # ]
    1305                 :            :                 else
    1306                 :            :                 {
    1307                 :            :                     // Percentage values are set negatively, so that
    1308                 :            :                     // they aren't scaled by the MetricItem;
    1309                 :            :                     // this is considered in the item.
    1310 [ #  # ][ #  # ]:          0 :                     pItem = new XFillBmpSizeYItem( -labs( static_cast<long>(aMtrFldYSize.GetValue()) ) );
                 [ #  # ]
    1311                 :            :                 }
    1312                 :            :             }
    1313 [ #  # ][ #  #  :          0 :             else if( aTsbOriginal.IsEnabled() &&
             #  #  #  # ]
                 [ #  # ]
    1314                 :          0 :                      aTsbOriginal.GetState() == STATE_CHECK &&
    1315                 :          0 :                      aMtrFldYSize.GetSavedValue().Len() > 0 )
    1316 [ #  # ][ #  # ]:          0 :                 pItem = new XFillBmpSizeYItem( 0 );
    1317                 :            : 
    1318         [ #  # ]:          0 :             if( pItem )
    1319                 :            :             {
    1320         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_SIZEY );
    1321 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpSizeYItem*)pOld == *pItem ) )
         [ #  # ][ #  # ]
    1322                 :            :                 {
    1323         [ #  # ]:          0 :                     rAttrs.Put( *pItem );
    1324                 :          0 :                     bModified = sal_True;
    1325                 :            :                 }
    1326 [ #  # ][ #  # ]:          0 :                 delete pItem;
    1327                 :            :             }
    1328                 :            :         }
    1329                 :            : 
    1330                 :            :         //aRbtRow
    1331                 :            :         //aRbtColumn
    1332                 :            :         //aMtrFldOffset
    1333 [ #  # ][ #  # ]:          0 :         if( aMtrFldOffset.IsEnabled() )
    1334                 :            :         {
    1335         [ #  # ]:          0 :             String aMtrString = aMtrFldOffset.GetText();
    1336 [ #  # ][ #  #  :          0 :             if( ( aMtrString.Len() > 0  &&
             #  #  #  # ]
                 [ #  # ]
    1337         [ #  # ]:          0 :                   aMtrString != aMtrFldOffset.GetSavedValue() ) ||
    1338                 :          0 :                   aRbtRow.GetSavedValue() != aRbtRow.IsChecked() ||
    1339                 :          0 :                   aRbtColumn.GetSavedValue() != aRbtColumn.IsChecked() )
    1340                 :            :             {
    1341         [ #  # ]:          0 :                 if( aRbtRow.IsChecked() )
    1342                 :            :                 {
    1343 [ #  # ][ #  # ]:          0 :                     XFillBmpTileOffsetXItem aFillBmpTileOffsetXItem( (sal_uInt16) aMtrFldOffset.GetValue() );
    1344         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLBMP_TILEOFFSETX );
    1345 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillBmpTileOffsetXItem*)pOld == aFillBmpTileOffsetXItem ) )
         [ #  # ][ #  # ]
    1346                 :            :                     {
    1347         [ #  # ]:          0 :                         rAttrs.Put( aFillBmpTileOffsetXItem );
    1348 [ #  # ][ #  # ]:          0 :                         rAttrs.Put( XFillBmpTileOffsetYItem( 0 ) );
                 [ #  # ]
    1349                 :          0 :                         bModified = sal_True;
    1350         [ #  # ]:          0 :                     }
    1351                 :            :                 }
    1352         [ #  # ]:          0 :                 else if( aRbtColumn.IsChecked() )
    1353                 :            :                 {
    1354 [ #  # ][ #  # ]:          0 :                     XFillBmpTileOffsetYItem aFillBmpTileOffsetYItem( (sal_uInt16) aMtrFldOffset.GetValue() );
    1355         [ #  # ]:          0 :                     pOld = GetOldItem( rAttrs, XATTR_FILLBMP_TILEOFFSETY );
    1356 [ #  # ][ #  # ]:          0 :                     if ( !pOld || !( *(const XFillBmpTileOffsetYItem*)pOld == aFillBmpTileOffsetYItem ) )
         [ #  # ][ #  # ]
    1357                 :            :                     {
    1358         [ #  # ]:          0 :                         rAttrs.Put( aFillBmpTileOffsetYItem );
    1359 [ #  # ][ #  # ]:          0 :                         rAttrs.Put( XFillBmpTileOffsetXItem( 0 ) );
                 [ #  # ]
    1360                 :          0 :                         bModified = sal_True;
    1361         [ #  # ]:          0 :                     }
    1362                 :            :                 }
    1363         [ #  # ]:          0 :             }
    1364                 :            :         }
    1365                 :            : 
    1366                 :            :         //aCtlPosition
    1367 [ #  # ][ #  # ]:          0 :         if( aCtlPosition.IsEnabled() )
    1368                 :            :         {
    1369                 :          0 :             sal_Bool bPut = sal_False;
    1370         [ #  # ]:          0 :             RECT_POINT _eRP = aCtlPosition.GetActualRP();
    1371                 :            : 
    1372 [ #  # ][ #  # ]:          0 :             if( SFX_ITEM_DONTCARE == rOutAttrs.GetItemState( XATTR_FILLBMP_POS ) )
    1373                 :          0 :                 bPut = sal_True;
    1374                 :            :             else
    1375                 :            :             {
    1376         [ #  # ]:          0 :                 RECT_POINT eValue = ( ( const XFillBmpPosItem& ) rOutAttrs.Get( XATTR_FILLBMP_POS ) ).GetValue();
    1377         [ #  # ]:          0 :                 if( eValue != _eRP )
    1378                 :          0 :                     bPut = sal_True;
    1379                 :            :             }
    1380         [ #  # ]:          0 :             if( bPut )
    1381                 :            :             {
    1382         [ #  # ]:          0 :                 XFillBmpPosItem aFillBmpPosItem( _eRP );
    1383         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_POS );
    1384 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpPosItem*)pOld == aFillBmpPosItem ) )
         [ #  # ][ #  # ]
    1385                 :            :                 {
    1386         [ #  # ]:          0 :                     rAttrs.Put( aFillBmpPosItem );
    1387                 :          0 :                     bModified = sal_True;
    1388         [ #  # ]:          0 :                 }
    1389                 :            :             }
    1390                 :            :         }
    1391                 :            : 
    1392                 :            :         //aMtrFldXOffset
    1393 [ #  # ][ #  # ]:          0 :         if( aMtrFldXOffset.IsEnabled() )
    1394                 :            :         {
    1395         [ #  # ]:          0 :             String sMtrXOffset = aMtrFldXOffset.GetText();
    1396 [ #  # ][ #  # ]:          0 :             if( sMtrXOffset.Len() > 0  &&
                 [ #  # ]
    1397         [ #  # ]:          0 :                 sMtrXOffset != aMtrFldXOffset.GetSavedValue() )
    1398                 :            :             {
    1399 [ #  # ][ #  # ]:          0 :                 XFillBmpPosOffsetXItem aFillBmpPosOffsetXItem( (sal_uInt16) aMtrFldXOffset.GetValue() );
    1400         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_POSOFFSETX );
    1401 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpPosOffsetXItem*)pOld == aFillBmpPosOffsetXItem ) )
         [ #  # ][ #  # ]
    1402                 :            :                 {
    1403         [ #  # ]:          0 :                     rAttrs.Put( aFillBmpPosOffsetXItem );
    1404                 :          0 :                     bModified = sal_True;
    1405         [ #  # ]:          0 :                 }
    1406         [ #  # ]:          0 :             }
    1407                 :            :         }
    1408                 :            : 
    1409                 :            :         //aMtrFldYOffset
    1410 [ #  # ][ #  # ]:          0 :         if( aMtrFldYOffset.IsEnabled() )
    1411                 :            :         {
    1412         [ #  # ]:          0 :             String sMtrYOffset = aMtrFldYOffset.GetText();
    1413 [ #  # ][ #  # ]:          0 :             if( sMtrYOffset.Len() > 0  &&
                 [ #  # ]
    1414         [ #  # ]:          0 :                 sMtrYOffset != aMtrFldYOffset.GetSavedValue() )
    1415                 :            :             {
    1416 [ #  # ][ #  # ]:          0 :                 XFillBmpPosOffsetYItem aFillBmpPosOffsetYItem( (sal_uInt16) aMtrFldYOffset.GetValue() );
    1417         [ #  # ]:          0 :                 pOld = GetOldItem( rAttrs, XATTR_FILLBMP_POSOFFSETY );
    1418 [ #  # ][ #  # ]:          0 :                 if ( !pOld || !( *(const XFillBmpPosOffsetYItem*)pOld == aFillBmpPosOffsetYItem ) )
         [ #  # ][ #  # ]
    1419                 :            :                 {
    1420         [ #  # ]:          0 :                     rAttrs.Put( aFillBmpPosOffsetYItem );
    1421                 :          0 :                     bModified = sal_True;
    1422         [ #  # ]:          0 :                 }
    1423         [ #  # ]:          0 :             }
    1424                 :            :         }
    1425 [ #  # ][ #  # ]:          0 :         rAttrs.Put (SfxUInt16Item(SID_PAGE_TYPE,nPageType));
                 [ #  # ]
    1426 [ #  # ][ #  # ]:          0 :         rAttrs.Put (SfxUInt16Item(SID_TABPAGE_POS,nPos));
         [ #  # ][ #  # ]
    1427                 :            :     }
    1428                 :            : 
    1429                 :          0 :     return( bModified );
    1430                 :            : }
    1431                 :            : 
    1432                 :            : // -----------------------------------------------------------------------
    1433                 :            : 
    1434                 :          0 : void SvxAreaTabPage::Reset( const SfxItemSet& rAttrs )
    1435                 :            : {
    1436                 :            :     XFillStyle eXFS;
    1437         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLSTYLE ) != SFX_ITEM_DONTCARE )
    1438                 :            :     {
    1439                 :            :         eXFS = (XFillStyle) ( ( ( const XFillStyleItem& ) rAttrs.
    1440                 :          0 :                                 Get( GetWhich( XATTR_FILLSTYLE ) ) ).GetValue() );
    1441                 :          0 :         aTypeLB.SelectEntryPos( sal::static_int_cast< sal_uInt16 >( eXFS ) );
    1442   [ #  #  #  #  :          0 :         switch( eXFS )
                   #  # ]
    1443                 :            :         {
    1444                 :            :             case XFILL_NONE:
    1445                 :          0 :                 ClickInvisibleHdl_Impl();
    1446                 :          0 :             break;
    1447                 :            : 
    1448                 :            :             case XFILL_SOLID:
    1449         [ #  # ]:          0 :                 if( SFX_ITEM_DONTCARE != rAttrs.GetItemState( XATTR_FILLCOLOR ) )
    1450                 :            :                 {
    1451                 :            :                     XFillColorItem aColorItem( ( const XFillColorItem& )
    1452 [ #  # ][ #  # ]:          0 :                                         rAttrs.Get( XATTR_FILLCOLOR ) );
    1453                 :            : 
    1454 [ #  # ][ #  # ]:          0 :                     aLbColor.SelectEntry( aColorItem.GetColorValue() );
    1455 [ #  # ][ #  # ]:          0 :                     aLbHatchBckgrdColor.SelectEntry( aColorItem.GetColorValue() );
                 [ #  # ]
    1456                 :            :                 }
    1457                 :          0 :                 ClickColorHdl_Impl();
    1458                 :            : 
    1459                 :          0 :             break;
    1460                 :            : 
    1461                 :            :             case XFILL_GRADIENT:
    1462         [ #  # ]:          0 :                 if( SFX_ITEM_DONTCARE != rAttrs.GetItemState( XATTR_FILLGRADIENT ) )
    1463                 :            :                 {
    1464                 :            :                     XFillGradientItem aGradientItem( ( ( const XFillGradientItem& )
    1465 [ #  # ][ #  # ]:          0 :                                             rAttrs.Get( XATTR_FILLGRADIENT ) ) );
    1466         [ #  # ]:          0 :                     String    aString( aGradientItem.GetName() );
    1467         [ #  # ]:          0 :                     XGradient aGradient( aGradientItem.GetGradientValue() );
    1468                 :            : 
    1469 [ #  # ][ #  # ]:          0 :                     aLbGradient.SelectEntryByList( pGradientList, aString, aGradient );
                 [ #  # ]
    1470                 :            :                 }
    1471                 :          0 :                 ClickGradientHdl_Impl();
    1472                 :          0 :             break;
    1473                 :            : 
    1474                 :            :             case XFILL_HATCH:
    1475         [ #  # ]:          0 :                 if( SFX_ITEM_DONTCARE != rAttrs.GetItemState( XATTR_FILLHATCH ) )
    1476                 :            :                 {
    1477                 :            :                     aLbHatching.SelectEntry( ( ( const XFillHatchItem& )
    1478         [ #  # ]:          0 :                                     rAttrs.Get( XATTR_FILLHATCH ) ).GetName() );
    1479                 :            :                 }
    1480                 :          0 :                 ClickHatchingHdl_Impl();
    1481                 :            : 
    1482         [ #  # ]:          0 :                 if ( SFX_ITEM_DONTCARE != rAttrs.GetItemState ( XATTR_FILLBACKGROUND ) )
    1483                 :            :                 {
    1484                 :          0 :                     aCbxHatchBckgrd.Check ( ( ( const XFillBackgroundItem& ) rAttrs.Get ( XATTR_FILLBACKGROUND ) ).GetValue() );
    1485                 :            :                 }
    1486                 :          0 :                 ToggleHatchBckgrdColorHdl_Impl( this );
    1487         [ #  # ]:          0 :                 if( SFX_ITEM_DONTCARE != rAttrs.GetItemState( XATTR_FILLCOLOR ) )
    1488                 :            :                 {
    1489                 :            :                     XFillColorItem aColorItem( ( const XFillColorItem& )
    1490 [ #  # ][ #  # ]:          0 :                                         rAttrs.Get( XATTR_FILLCOLOR ) );
    1491                 :            : 
    1492 [ #  # ][ #  # ]:          0 :                     aLbColor.SelectEntry( aColorItem.GetColorValue() );
    1493 [ #  # ][ #  # ]:          0 :                     aLbHatchBckgrdColor.SelectEntry( aColorItem.GetColorValue() );
                 [ #  # ]
    1494                 :            :                 }
    1495                 :          0 :             break;
    1496                 :            : 
    1497                 :            :             case XFILL_BITMAP:
    1498                 :            :             {
    1499         [ #  # ]:          0 :                 if( SFX_ITEM_DONTCARE != rAttrs.GetItemState( XATTR_FILLBITMAP ) )
    1500                 :            :                 {
    1501                 :            :                     XFillBitmapItem aBitmapItem( ( const XFillBitmapItem& )
    1502 [ #  # ][ #  # ]:          0 :                                         rAttrs.Get( XATTR_FILLBITMAP ) );
    1503                 :            : 
    1504         [ #  # ]:          0 :                     String aString( aBitmapItem.GetName() );
    1505 [ #  # ][ #  # ]:          0 :                     aLbBitmap.SelectEntry( aString );
                 [ #  # ]
    1506                 :            :                 }
    1507                 :          0 :                 ClickBitmapHdl_Impl();
    1508                 :            :             }
    1509                 :          0 :             break;
    1510                 :            : 
    1511                 :            :             default:
    1512                 :          0 :             break;
    1513                 :            :         }
    1514                 :            :     }
    1515                 :            :     else
    1516                 :            :     {
    1517                 :            :         // make all LBs not accessible
    1518                 :          0 :         aLbColor.Hide();
    1519                 :          0 :         aLbGradient.Hide();
    1520                 :          0 :         aLbHatching.Hide();
    1521                 :          0 :         aLbBitmap.Hide();
    1522                 :          0 :         aCtlBitmapPreview.Hide();
    1523                 :          0 :         aLbColor.Disable();
    1524                 :          0 :         aLbColor.Show();
    1525                 :            : 
    1526                 :            :         // so that Reset() also works correctly with Back
    1527                 :          0 :         aTypeLB.SetNoSelection();
    1528                 :            :     }
    1529                 :            : 
    1530                 :            :     // step size
    1531   [ #  #  #  # ]:          0 :     if( ( rAttrs.GetItemState( XATTR_GRADIENTSTEPCOUNT ) != SFX_ITEM_DONTCARE ) ||
                 [ #  # ]
    1532                 :          0 :         ( rAttrs.GetItemState( XATTR_FILLSTYLE ) != SFX_ITEM_DONTCARE ) )
    1533                 :            :     {
    1534                 :          0 :         aTsbStepCount.EnableTriState( sal_False );
    1535                 :          0 :         sal_uInt16 nValue = ( ( const XGradientStepCountItem& ) rAttrs.Get( XATTR_GRADIENTSTEPCOUNT ) ).GetValue();
    1536         [ #  # ]:          0 :         if( nValue == 0 )
    1537                 :            :         {
    1538                 :          0 :             aTsbStepCount.SetState( STATE_CHECK );
    1539         [ #  # ]:          0 :             aNumFldStepCount.SetText( String() );
    1540                 :            :         }
    1541                 :            :         else
    1542                 :            :         {
    1543                 :          0 :             aTsbStepCount.SetState( STATE_NOCHECK );
    1544                 :          0 :             aNumFldStepCount.SetValue( nValue );
    1545                 :            :         }
    1546                 :          0 :         ModifyStepCountHdl_Impl( &aTsbStepCount );
    1547                 :            :     }
    1548                 :            :     else
    1549                 :            :     {
    1550                 :          0 :         aTsbStepCount.SetState( STATE_DONTKNOW );
    1551         [ #  # ]:          0 :         aNumFldStepCount.SetText( String() );
    1552                 :            :     }
    1553                 :            : 
    1554                 :            :     // attributes for the bitmap filling
    1555                 :            : 
    1556         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_TILE ) != SFX_ITEM_DONTCARE )
    1557                 :            :     {
    1558                 :          0 :         aTsbTile.EnableTriState( sal_False );
    1559                 :            : 
    1560         [ #  # ]:          0 :         if( ( ( const XFillBmpTileItem& ) rAttrs.Get( XATTR_FILLBMP_TILE ) ).GetValue() )
    1561                 :          0 :             aTsbTile.SetState( STATE_CHECK );
    1562                 :            :         else
    1563                 :          0 :             aTsbTile.SetState( STATE_NOCHECK );
    1564                 :            :     }
    1565                 :            :     else
    1566                 :          0 :         aTsbTile.SetState( STATE_DONTKNOW );
    1567                 :            : 
    1568         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_STRETCH ) != SFX_ITEM_DONTCARE )
    1569                 :            :     {
    1570                 :          0 :         aTsbStretch.EnableTriState( sal_False );
    1571                 :            : 
    1572         [ #  # ]:          0 :         if( ( ( const XFillBmpStretchItem& ) rAttrs.Get( XATTR_FILLBMP_STRETCH ) ).GetValue() )
    1573                 :          0 :             aTsbStretch.SetState( STATE_CHECK );
    1574                 :            :         else
    1575                 :          0 :             aTsbStretch.SetState( STATE_NOCHECK );
    1576                 :            :     }
    1577                 :            :     else
    1578                 :          0 :         aTsbStretch.SetState( STATE_DONTKNOW );
    1579                 :            : 
    1580                 :            : 
    1581                 :            :     //aTsbScale
    1582         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_SIZELOG ) != SFX_ITEM_DONTCARE )
    1583                 :            :     {
    1584                 :          0 :         aTsbScale.EnableTriState( sal_False );
    1585                 :            : 
    1586         [ #  # ]:          0 :         if( ( ( const XFillBmpSizeLogItem& ) rAttrs.Get( XATTR_FILLBMP_SIZELOG ) ).GetValue() )
    1587                 :          0 :             aTsbScale.SetState( STATE_NOCHECK );
    1588                 :            :         else
    1589                 :          0 :             aTsbScale.SetState( STATE_CHECK );
    1590                 :            : 
    1591                 :          0 :         ClickScaleHdl_Impl( NULL );
    1592                 :            :     }
    1593                 :            :     else
    1594                 :          0 :         aTsbScale.SetState( STATE_DONTKNOW );
    1595                 :            : 
    1596                 :            : 
    1597                 :            :     // determine status for the original size
    1598                 :          0 :     TriState eOriginal = STATE_NOCHECK;
    1599                 :            : 
    1600                 :            :     //aMtrFldXSize
    1601         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_SIZEX ) != SFX_ITEM_DONTCARE )
    1602                 :            :     {
    1603                 :          0 :         sal_Int32 nValue = ( ( const XFillBmpSizeXItem& ) rAttrs.Get( XATTR_FILLBMP_SIZEX ) ).GetValue();
    1604         [ #  # ]:          0 :         if( aTsbScale.GetState() == STATE_CHECK )
    1605                 :            :         {
    1606                 :            :             // If there's a percentage value in the item,
    1607                 :            :             // it is negative because of the MetricItems.
    1608                 :          0 :             aMtrFldXSize.SetValue( labs( nValue ) );
    1609                 :            :         }
    1610                 :            :         else
    1611                 :          0 :             SetMetricValue( aMtrFldXSize, nValue, ePoolUnit );
    1612                 :          0 :         aMtrFldXSize.SaveValue();
    1613                 :            : 
    1614         [ #  # ]:          0 :         if( nValue == 0 )
    1615                 :            :         {
    1616                 :          0 :             eOriginal = STATE_CHECK;
    1617                 :            :             // value would be too small otherwise when turning off the original size
    1618                 :            :             // (performance problem)
    1619                 :          0 :             aMtrFldXSize.SetValue( 100 );
    1620                 :            :         }
    1621                 :            :     }
    1622                 :            :     else
    1623                 :            :     {
    1624         [ #  # ]:          0 :         aMtrFldXSize.SetText( String() );
    1625                 :          0 :         aMtrFldXSize.SaveValue();
    1626                 :            :     }
    1627                 :            : 
    1628                 :            :     //aMtrFldYSize
    1629         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_SIZEY ) != SFX_ITEM_DONTCARE )
    1630                 :            :     {
    1631                 :          0 :         sal_Int32 nValue = ( ( const XFillBmpSizeYItem& ) rAttrs.Get( XATTR_FILLBMP_SIZEY ) ).GetValue();
    1632         [ #  # ]:          0 :         if( aTsbScale.GetState() == STATE_CHECK )
    1633                 :            :         {
    1634                 :            :             // If there's a percentage value in the item,
    1635                 :            :             // it is negative because of the MetricItems.
    1636                 :          0 :             aMtrFldYSize.SetValue( labs( nValue ) );
    1637                 :            :         }
    1638                 :            :         else
    1639                 :          0 :             SetMetricValue( aMtrFldYSize, nValue, ePoolUnit );
    1640                 :          0 :         aMtrFldYSize.SaveValue();
    1641                 :            : 
    1642         [ #  # ]:          0 :         if( nValue == 0 )
    1643                 :          0 :             aMtrFldYSize.SetValue( 100 ); //s.o.
    1644                 :            :         else
    1645                 :          0 :             eOriginal = STATE_NOCHECK;
    1646                 :            :     }
    1647                 :            :     else
    1648                 :            :     {
    1649         [ #  # ]:          0 :         aMtrFldYSize.SetText( String() );
    1650                 :          0 :         aMtrFldYSize.SaveValue();
    1651                 :          0 :         eOriginal = STATE_NOCHECK;
    1652                 :            :     }
    1653                 :            : 
    1654                 :            :     // aTsbOriginal
    1655                 :          0 :     aTsbOriginal.SetState( eOriginal );
    1656                 :            : 
    1657                 :            :     // #93372# Setting proper state after changing button
    1658                 :          0 :     ModifyTileHdl_Impl( NULL );
    1659                 :            : 
    1660                 :            :     //aRbtRow
    1661                 :            :     //aRbtColumn
    1662                 :            :     //aMtrFldOffset
    1663         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_TILEOFFSETX ) != SFX_ITEM_DONTCARE )
    1664                 :            :     {
    1665                 :          0 :         sal_uInt16 nValue = ( ( const XFillBmpTileOffsetXItem& ) rAttrs.Get( XATTR_FILLBMP_TILEOFFSETX ) ).GetValue();
    1666         [ #  # ]:          0 :         if( nValue > 0 )
    1667                 :            :         {
    1668                 :          0 :             aMtrFldOffset.SetValue( nValue );
    1669                 :          0 :             aRbtRow.Check();
    1670                 :            :         }
    1671         [ #  # ]:          0 :         else if( rAttrs.GetItemState( XATTR_FILLBMP_TILEOFFSETY ) != SFX_ITEM_DONTCARE )
    1672                 :            :         {
    1673                 :          0 :             nValue = ( ( const XFillBmpTileOffsetYItem& ) rAttrs.Get( XATTR_FILLBMP_TILEOFFSETY ) ).GetValue();
    1674         [ #  # ]:          0 :             if( nValue > 0 )
    1675                 :            :             {
    1676                 :          0 :                 aMtrFldOffset.SetValue( nValue );
    1677                 :          0 :                 aRbtColumn.Check();
    1678                 :            :             }
    1679                 :            :         }
    1680                 :            :         else
    1681                 :          0 :             aMtrFldOffset.SetValue( 0 );
    1682                 :            :     }
    1683                 :            :     else
    1684         [ #  # ]:          0 :         aMtrFldOffset.SetText( String() );
    1685                 :            : 
    1686                 :            : 
    1687                 :            :     //aCtlPosition
    1688         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_POS ) != SFX_ITEM_DONTCARE )
    1689                 :            :     {
    1690                 :          0 :         RECT_POINT eValue = ( ( const XFillBmpPosItem& ) rAttrs.Get( XATTR_FILLBMP_POS ) ).GetValue();
    1691                 :          0 :         aCtlPosition.SetActualRP( eValue );
    1692                 :            :     }
    1693                 :            :     else
    1694                 :          0 :         aCtlPosition.Reset();
    1695                 :            : 
    1696                 :            :     //aMtrFldXOffset
    1697         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_POSOFFSETX ) != SFX_ITEM_DONTCARE )
    1698                 :            :     {
    1699                 :          0 :         sal_Int32 nValue = ( ( const XFillBmpPosOffsetXItem& ) rAttrs.Get( XATTR_FILLBMP_POSOFFSETX ) ).GetValue();
    1700                 :          0 :         aMtrFldXOffset.SetValue( nValue );
    1701                 :            :     }
    1702                 :            :     else
    1703         [ #  # ]:          0 :         aMtrFldXOffset.SetText( String() );
    1704                 :            : 
    1705                 :            :     //aMtrFldYOffset
    1706         [ #  # ]:          0 :     if( rAttrs.GetItemState( XATTR_FILLBMP_POSOFFSETY ) != SFX_ITEM_DONTCARE )
    1707                 :            :     {
    1708                 :          0 :         sal_Int32 nValue = ( ( const XFillBmpPosOffsetYItem& ) rAttrs.Get( XATTR_FILLBMP_POSOFFSETY ) ).GetValue();
    1709                 :          0 :         aMtrFldYOffset.SetValue( nValue );
    1710                 :            :     }
    1711                 :            :     else
    1712         [ #  # ]:          0 :         aMtrFldYOffset.SetText( String() );
    1713                 :            : 
    1714                 :            :     // not earlier so that tile and stretch are considered
    1715         [ #  # ]:          0 :     if( aTypeLB.GetSelectEntryPos() == XFILL_BITMAP )
    1716                 :          0 :         ClickBitmapHdl_Impl();
    1717                 :            : 
    1718                 :          0 :     aTypeLB.SaveValue();
    1719                 :          0 :     aLbColor.SaveValue();
    1720                 :          0 :     aLbGradient.SaveValue();
    1721                 :          0 :     aLbHatching.SaveValue();
    1722                 :          0 :     aLbHatchBckgrdColor.SaveValue();
    1723                 :          0 :     aLbBitmap.SaveValue();
    1724                 :          0 :     aTsbStepCount.SaveValue();
    1725                 :          0 :     aNumFldStepCount.SaveValue();
    1726                 :          0 :     aTsbTile.SaveValue();
    1727                 :          0 :     aTsbStretch.SaveValue();
    1728                 :          0 :     aTsbScale.SaveValue();
    1729                 :          0 :     aRbtRow.SaveValue();
    1730                 :          0 :     aRbtColumn.SaveValue();
    1731                 :          0 :     aMtrFldOffset.SaveValue();
    1732                 :          0 :     aMtrFldXOffset.SaveValue();
    1733                 :          0 :     aMtrFldYOffset.SaveValue();
    1734                 :          0 : }
    1735                 :            : 
    1736                 :            : // -----------------------------------------------------------------------
    1737                 :            : 
    1738                 :          0 : SfxTabPage* SvxAreaTabPage::Create( Window* pWindow,
    1739                 :            :                 const SfxItemSet& rAttrs )
    1740                 :            : {
    1741         [ #  # ]:          0 :     return( new SvxAreaTabPage( pWindow, rAttrs ) );
    1742                 :            : }
    1743                 :            : 
    1744                 :            : //------------------------------------------------------------------------
    1745                 :            : 
    1746                 :          0 : sal_uInt16* SvxAreaTabPage::GetRanges()
    1747                 :            : {
    1748                 :          0 :     return( pAreaRanges );
    1749                 :            : }
    1750                 :            : 
    1751                 :            : //------------------------------------------------------------------------
    1752                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, SelectDialogTypeHdl_Impl)
    1753                 :            : {
    1754   [ #  #  #  #  :          0 :     switch( (XFillStyle)aTypeLB.GetSelectEntryPos() )
                   #  # ]
    1755                 :            :     {
    1756                 :          0 :         case XFILL_NONE: ClickInvisibleHdl_Impl(); break;
    1757                 :          0 :         case XFILL_SOLID: ClickColorHdl_Impl(); break;
    1758                 :          0 :         case XFILL_GRADIENT: ClickGradientHdl_Impl(); break;
    1759                 :          0 :         case XFILL_HATCH: ClickHatchingHdl_Impl(); break;
    1760                 :          0 :         case XFILL_BITMAP: ClickBitmapHdl_Impl(); break;
    1761                 :            :     }
    1762                 :            : 
    1763                 :          0 :     return 0;
    1764                 :            : }
    1765                 :            : 
    1766                 :          0 : void SvxAreaTabPage::ClickInvisibleHdl_Impl()
    1767                 :            : {
    1768                 :          0 :     aTsbTile.Hide();
    1769                 :          0 :     aTsbStretch.Hide();
    1770                 :          0 :     aTsbScale.Hide();
    1771                 :          0 :     aTsbOriginal.Hide();
    1772                 :          0 :     aFtXSize.Hide();
    1773                 :          0 :     aMtrFldXSize.Hide();
    1774                 :          0 :     aFtYSize.Hide();
    1775                 :          0 :     aMtrFldYSize.Hide();
    1776                 :          0 :     aFlSize.Hide();
    1777                 :          0 :     aRbtRow.Hide();
    1778                 :          0 :     aRbtColumn.Hide();
    1779                 :          0 :     aMtrFldOffset.Hide();
    1780                 :          0 :     aFlOffset.Hide();
    1781                 :          0 :     aCtlPosition.Hide();
    1782                 :          0 :     aFtXOffset.Hide();
    1783                 :          0 :     aMtrFldXOffset.Hide();
    1784                 :          0 :     aFtYOffset.Hide();
    1785                 :          0 :     aMtrFldYOffset.Hide();
    1786                 :          0 :     aFlPosition.Hide();
    1787                 :            : 
    1788                 :          0 :     aLbColor.Hide();
    1789                 :          0 :     aLbGradient.Hide();
    1790                 :          0 :     aLbHatching.Hide();
    1791                 :          0 :     aLbBitmap.Hide();
    1792                 :          0 :     aCtlXRectPreview.Hide();
    1793                 :          0 :     aCtlBitmapPreview.Hide();
    1794                 :            : 
    1795                 :          0 :     aFlStepCount.Hide();
    1796                 :          0 :     aTsbStepCount.Hide();
    1797                 :          0 :     aNumFldStepCount.Hide();
    1798                 :            : 
    1799                 :            :     // Controls for Hatch-Background
    1800                 :          0 :     aCbxHatchBckgrd.Hide();
    1801                 :          0 :     aLbHatchBckgrdColor.Hide();
    1802                 :            : 
    1803         [ #  # ]:          0 :     rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
    1804                 :          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    1805                 :          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
    1806                 :            : 
    1807                 :          0 :     aCtlXRectPreview.Invalidate();
    1808                 :          0 :     aCtlBitmapPreview.Invalidate();
    1809                 :          0 : }
    1810                 :            : 
    1811                 :            : //------------------------------------------------------------------------
    1812                 :            : 
    1813                 :          0 : void SvxAreaTabPage::ClickColorHdl_Impl()
    1814                 :            : {
    1815         [ #  # ]:          0 :     aTsbTile.Hide();
    1816         [ #  # ]:          0 :     aTsbStretch.Hide();
    1817         [ #  # ]:          0 :     aTsbScale.Hide();
    1818         [ #  # ]:          0 :     aTsbOriginal.Hide();
    1819         [ #  # ]:          0 :     aFtXSize.Hide();
    1820         [ #  # ]:          0 :     aMtrFldXSize.Hide();
    1821         [ #  # ]:          0 :     aFtYSize.Hide();
    1822         [ #  # ]:          0 :     aMtrFldYSize.Hide();
    1823         [ #  # ]:          0 :     aFlSize.Hide();
    1824         [ #  # ]:          0 :     aRbtRow.Hide();
    1825         [ #  # ]:          0 :     aRbtColumn.Hide();
    1826         [ #  # ]:          0 :     aMtrFldOffset.Hide();
    1827         [ #  # ]:          0 :     aFlOffset.Hide();
    1828         [ #  # ]:          0 :     aCtlPosition.Hide();
    1829         [ #  # ]:          0 :     aFtXOffset.Hide();
    1830         [ #  # ]:          0 :     aMtrFldXOffset.Hide();
    1831         [ #  # ]:          0 :     aFtYOffset.Hide();
    1832         [ #  # ]:          0 :     aMtrFldYOffset.Hide();
    1833         [ #  # ]:          0 :     aFlPosition.Hide();
    1834                 :            : 
    1835         [ #  # ]:          0 :     aLbColor.Enable();
    1836         [ #  # ]:          0 :     aLbColor.Show();
    1837         [ #  # ]:          0 :     aLbGradient.Hide();
    1838         [ #  # ]:          0 :     aLbHatching.Hide();
    1839         [ #  # ]:          0 :     aLbBitmap.Hide();
    1840         [ #  # ]:          0 :     aCtlXRectPreview.Enable();
    1841         [ #  # ]:          0 :     aCtlXRectPreview.Show();
    1842         [ #  # ]:          0 :     aCtlBitmapPreview.Hide();
    1843                 :            : 
    1844         [ #  # ]:          0 :     aFlStepCount.Hide();
    1845         [ #  # ]:          0 :     aTsbStepCount.Hide();
    1846         [ #  # ]:          0 :     aNumFldStepCount.Hide();
    1847                 :            : 
    1848                 :            :     // Controls for Hatch-Background
    1849         [ #  # ]:          0 :     aCbxHatchBckgrd.Hide();
    1850         [ #  # ]:          0 :     aLbHatchBckgrdColor.Hide();
    1851                 :            : 
    1852                 :            :     // set table text
    1853 [ #  # ][ #  # ]:          0 :     String          aString( CUI_RES( RID_SVXSTR_TABLE ) ); aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) );
                 [ #  # ]
    1854 [ #  # ][ #  # ]:          0 :     INetURLObject   aURL( pColorList->GetPath() );
    1855                 :            : 
    1856 [ #  # ][ #  # ]:          0 :     aURL.Append( pColorList->GetName() );
    1857                 :            :     DBG_ASSERT( aURL.GetProtocol() != INET_PROT_NOT_VALID, "invalid URL" );
    1858                 :            : 
    1859 [ #  # ][ #  # ]:          0 :     if( aURL.getBase().getLength() > 18 )
    1860                 :            :     {
    1861 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase()).Copy( 0, 15 );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    1862         [ #  # ]:          0 :         aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( "..." ) );
    1863                 :            :     }
    1864                 :            :     else
    1865 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase());
         [ #  # ][ #  # ]
    1866                 :            : 
    1867 [ #  # ][ #  # ]:          0 :     ModifyColorHdl_Impl( this );
                 [ #  # ]
    1868                 :          0 : }
    1869                 :            : 
    1870                 :            : //------------------------------------------------------------------------
    1871                 :            : 
    1872                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyColorHdl_Impl)
    1873                 :            : {
    1874                 :          0 :     const SfxPoolItem* pPoolItem = NULL;
    1875         [ #  # ]:          0 :     sal_uInt16 _nPos = aLbColor.GetSelectEntryPos();
    1876         [ #  # ]:          0 :     aLbHatchBckgrdColor.SelectEntryPos( _nPos );
    1877         [ #  # ]:          0 :     if( _nPos != LISTBOX_ENTRY_NOTFOUND )
    1878                 :            :     {
    1879 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_SOLID ) );
                 [ #  # ]
    1880                 :            :         rXFSet.Put( XFillColorItem( String(),
    1881 [ #  # ][ #  # ]:          0 :                                     aLbColor.GetSelectEntryColor() ) );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    1882                 :            :     }
    1883                 :            :     // NEW
    1884 [ #  # ][ #  # ]:          0 :     else if( SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLCOLOR ), sal_True, &pPoolItem ) )
                 [ #  # ]
    1885                 :            :     {
    1886 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_SOLID ) );
                 [ #  # ]
    1887         [ #  # ]:          0 :         Color aColor( ( ( const XFillColorItem* ) pPoolItem )->GetColorValue() );
    1888 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillColorItem( String(), aColor ) );
         [ #  # ][ #  # ]
                 [ #  # ]
    1889                 :            :     }
    1890                 :            :     else
    1891 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
                 [ #  # ]
    1892                 :            : 
    1893         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    1894         [ #  # ]:          0 :     aCtlXRectPreview.Invalidate();
    1895                 :            : 
    1896                 :          0 :     return( 0L );
    1897                 :            : }
    1898                 :            : //------------------------------------------------------------------------
    1899                 :            : 
    1900                 :          0 : void SvxAreaTabPage::ClickGradientHdl_Impl()
    1901                 :            : {
    1902         [ #  # ]:          0 :     aTsbTile.Hide();
    1903         [ #  # ]:          0 :     aTsbStretch.Hide();
    1904         [ #  # ]:          0 :     aTsbScale.Hide();
    1905         [ #  # ]:          0 :     aTsbOriginal.Hide();
    1906         [ #  # ]:          0 :     aFtXSize.Hide();
    1907         [ #  # ]:          0 :     aMtrFldXSize.Hide();
    1908         [ #  # ]:          0 :     aFtYSize.Hide();
    1909         [ #  # ]:          0 :     aMtrFldYSize.Hide();
    1910         [ #  # ]:          0 :     aFlSize.Hide();
    1911         [ #  # ]:          0 :     aRbtRow.Hide();
    1912         [ #  # ]:          0 :     aRbtColumn.Hide();
    1913         [ #  # ]:          0 :     aMtrFldOffset.Hide();
    1914         [ #  # ]:          0 :     aFlOffset.Hide();
    1915         [ #  # ]:          0 :     aCtlPosition.Hide();
    1916         [ #  # ]:          0 :     aFtXOffset.Hide();
    1917         [ #  # ]:          0 :     aMtrFldXOffset.Hide();
    1918         [ #  # ]:          0 :     aFtYOffset.Hide();
    1919         [ #  # ]:          0 :     aMtrFldYOffset.Hide();
    1920         [ #  # ]:          0 :     aFlPosition.Hide();
    1921                 :            : 
    1922         [ #  # ]:          0 :     aLbColor.Hide();
    1923         [ #  # ]:          0 :     aLbGradient.Enable();
    1924         [ #  # ]:          0 :     aLbGradient.Show();
    1925         [ #  # ]:          0 :     aLbHatching.Hide();
    1926         [ #  # ]:          0 :     aLbBitmap.Hide();
    1927         [ #  # ]:          0 :     aCtlXRectPreview.Enable();
    1928         [ #  # ]:          0 :     aCtlXRectPreview.Show();
    1929         [ #  # ]:          0 :     aCtlBitmapPreview.Hide();
    1930                 :            : 
    1931         [ #  # ]:          0 :     aFlStepCount.Enable();
    1932         [ #  # ]:          0 :     aFlStepCount.Show();
    1933         [ #  # ]:          0 :     aTsbStepCount.Enable();
    1934         [ #  # ]:          0 :     aTsbStepCount.Show();
    1935         [ #  # ]:          0 :     aNumFldStepCount.Show();
    1936                 :            : 
    1937                 :            :     // Controls for Hatch-Background
    1938         [ #  # ]:          0 :     aCbxHatchBckgrd.Hide();
    1939         [ #  # ]:          0 :     aLbHatchBckgrdColor.Hide();
    1940                 :            : 
    1941                 :            :     // set table text
    1942 [ #  # ][ #  # ]:          0 :     String          aString( CUI_RES( RID_SVXSTR_TABLE ) ); aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) );
                 [ #  # ]
    1943 [ #  # ][ #  # ]:          0 :     INetURLObject   aURL( pGradientList->GetPath() );
    1944                 :            : 
    1945 [ #  # ][ #  # ]:          0 :     aURL.Append( pGradientList->GetName() );
    1946                 :            :     DBG_ASSERT( aURL.GetProtocol() != INET_PROT_NOT_VALID, "invalid URL" );
    1947                 :            : 
    1948 [ #  # ][ #  # ]:          0 :     if( aURL.getBase().getLength() > 18 )
    1949                 :            :     {
    1950 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase()).Copy( 0, 15 );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    1951         [ #  # ]:          0 :         aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( "..." ) );
    1952                 :            :     }
    1953                 :            :     else
    1954 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase());
         [ #  # ][ #  # ]
    1955                 :            : 
    1956         [ #  # ]:          0 :     ModifyGradientHdl_Impl( this );
    1957 [ #  # ][ #  # ]:          0 :     ModifyStepCountHdl_Impl( &aTsbStepCount );
                 [ #  # ]
    1958                 :          0 : }
    1959                 :            : 
    1960                 :            : //------------------------------------------------------------------------
    1961                 :            : 
    1962                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyGradientHdl_Impl)
    1963                 :            : {
    1964                 :          0 :     const SfxPoolItem* pPoolItem = NULL;
    1965         [ #  # ]:          0 :     sal_uInt16 _nPos = aLbGradient.GetSelectEntryPos();
    1966         [ #  # ]:          0 :     if( _nPos != LISTBOX_ENTRY_NOTFOUND )
    1967                 :            :     {
    1968                 :            :         // fill ItemSet and pass it on to aCtlXRectPreview
    1969         [ #  # ]:          0 :         XGradientEntry* pEntry = pGradientList->GetGradient( _nPos );
    1970                 :            : 
    1971 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_GRADIENT ) );
                 [ #  # ]
    1972                 :            :         rXFSet.Put( XFillGradientItem( String(),
    1973 [ #  # ][ #  # ]:          0 :                                        pEntry->GetGradient() ) );
         [ #  # ][ #  # ]
                 [ #  # ]
    1974                 :            :     }
    1975 [ #  # ][ #  # ]:          0 :     else if( SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLGRADIENT ), sal_True, &pPoolItem ) )
                 [ #  # ]
    1976                 :            :     {
    1977 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_GRADIENT ) );
                 [ #  # ]
    1978 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillGradientItem( String(), ( ( const XFillGradientItem* ) pPoolItem )->GetGradientValue() ) );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    1979                 :            :     }
    1980                 :            :     else
    1981 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
                 [ #  # ]
    1982                 :            : 
    1983         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    1984         [ #  # ]:          0 :     aCtlXRectPreview.Invalidate();
    1985                 :            : 
    1986                 :          0 :     return( 0L );
    1987                 :            : }
    1988                 :            : 
    1989                 :            : //------------------------------------------------------------------------
    1990                 :            : 
    1991                 :          0 : void SvxAreaTabPage::ClickHatchingHdl_Impl()
    1992                 :            : {
    1993         [ #  # ]:          0 :     aLbColor.Hide();
    1994         [ #  # ]:          0 :     aLbGradient.Hide();
    1995         [ #  # ]:          0 :     aLbHatching.Enable();
    1996         [ #  # ]:          0 :     aLbHatching.Show();
    1997         [ #  # ]:          0 :     aLbBitmap.Hide();
    1998         [ #  # ]:          0 :     aCtlXRectPreview.Enable();
    1999         [ #  # ]:          0 :     aCtlXRectPreview.Show();
    2000         [ #  # ]:          0 :     aCtlBitmapPreview.Hide();
    2001                 :            : 
    2002         [ #  # ]:          0 :     aFlStepCount.Hide();
    2003         [ #  # ]:          0 :     aTsbStepCount.Hide();
    2004         [ #  # ]:          0 :     aNumFldStepCount.Hide();
    2005                 :            : 
    2006         [ #  # ]:          0 :     aTsbTile.Hide();
    2007         [ #  # ]:          0 :     aTsbStretch.Hide();
    2008         [ #  # ]:          0 :     aTsbScale.Hide();
    2009         [ #  # ]:          0 :     aTsbOriginal.Hide();
    2010         [ #  # ]:          0 :     aFtXSize.Hide();
    2011         [ #  # ]:          0 :     aMtrFldXSize.Hide();
    2012         [ #  # ]:          0 :     aFtYSize.Hide();
    2013         [ #  # ]:          0 :     aMtrFldYSize.Hide();
    2014         [ #  # ]:          0 :     aFlSize.Hide();
    2015         [ #  # ]:          0 :     aRbtRow.Hide();
    2016         [ #  # ]:          0 :     aRbtColumn.Hide();
    2017         [ #  # ]:          0 :     aMtrFldOffset.Hide();
    2018         [ #  # ]:          0 :     aFlOffset.Hide();
    2019         [ #  # ]:          0 :     aCtlPosition.Hide();
    2020         [ #  # ]:          0 :     aFtXOffset.Hide();
    2021         [ #  # ]:          0 :     aMtrFldXOffset.Hide();
    2022         [ #  # ]:          0 :     aFtYOffset.Hide();
    2023         [ #  # ]:          0 :     aMtrFldYOffset.Hide();
    2024         [ #  # ]:          0 :     aFlPosition.Hide();
    2025                 :            : 
    2026                 :            :     // Controls for Hatch-Background
    2027         [ #  # ]:          0 :     aCbxHatchBckgrd.Show();
    2028         [ #  # ]:          0 :     aLbHatchBckgrdColor.Show();
    2029         [ #  # ]:          0 :     aCbxHatchBckgrd.Enable();
    2030         [ #  # ]:          0 :     aLbHatchBckgrdColor.Enable();
    2031                 :            : 
    2032                 :            :     // set table text
    2033 [ #  # ][ #  # ]:          0 :     String          aString( CUI_RES( RID_SVXSTR_TABLE ) );     aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) );
                 [ #  # ]
    2034 [ #  # ][ #  # ]:          0 :     INetURLObject   aURL( pHatchingList->GetPath() );
    2035                 :            : 
    2036 [ #  # ][ #  # ]:          0 :     aURL.Append( pHatchingList->GetName() );
    2037                 :            :     DBG_ASSERT( aURL.GetProtocol() != INET_PROT_NOT_VALID, "invalid URL" );
    2038                 :            : 
    2039 [ #  # ][ #  # ]:          0 :     if( aURL.getBase().getLength() > 18 )
    2040                 :            :     {
    2041 [ #  # ][ #  # ]:          0 :         aString += String(String(aURL.getBase()).Copy( 0, 15 ));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    2042         [ #  # ]:          0 :         aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( "..." ) );
    2043                 :            :     }
    2044                 :            :     else
    2045 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase());
         [ #  # ][ #  # ]
    2046                 :            : 
    2047         [ #  # ]:          0 :     ModifyHatchingHdl_Impl( this );
    2048         [ #  # ]:          0 :     ModifyHatchBckgrdColorHdl_Impl( this );
    2049 [ #  # ][ #  # ]:          0 :     ToggleHatchBckgrdColorHdl_Impl( this );
                 [ #  # ]
    2050                 :          0 : }
    2051                 :            : 
    2052                 :            : //------------------------------------------------------------------------
    2053                 :            : 
    2054                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyHatchingHdl_Impl)
    2055                 :            : {
    2056                 :          0 :     const SfxPoolItem* pPoolItem = NULL;
    2057         [ #  # ]:          0 :     sal_uInt16 _nPos = aLbHatching.GetSelectEntryPos();
    2058         [ #  # ]:          0 :     if( _nPos != LISTBOX_ENTRY_NOTFOUND )
    2059                 :            :     {
    2060                 :            :         // fill ItemSet and pass it on to aCtlXRectPreview
    2061         [ #  # ]:          0 :         XHatchEntry* pEntry = pHatchingList->GetHatch( _nPos );
    2062                 :            : 
    2063 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_HATCH ) );
                 [ #  # ]
    2064 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillHatchItem( String(), pEntry->GetHatch() ) );
         [ #  # ][ #  # ]
                 [ #  # ]
    2065                 :            :     }
    2066 [ #  # ][ #  # ]:          0 :     else if( SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLHATCH ), sal_True, &pPoolItem ) )
                 [ #  # ]
    2067                 :            :     {
    2068 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_HATCH ) );
                 [ #  # ]
    2069 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillHatchItem( String(), ( ( const XFillHatchItem* ) pPoolItem )->GetHatchValue() ) );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    2070                 :            :     }
    2071                 :            :     else
    2072 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
                 [ #  # ]
    2073                 :            : 
    2074         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2075         [ #  # ]:          0 :     aCtlXRectPreview.Invalidate();
    2076                 :            : 
    2077                 :          0 :     return( 0L );
    2078                 :            : }
    2079                 :            : 
    2080                 :            : //------------------------------------------------------------------------
    2081                 :            : 
    2082                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyHatchBckgrdColorHdl_Impl)
    2083                 :            : {
    2084                 :          0 :     const SfxPoolItem* pPoolItem = NULL;
    2085         [ #  # ]:          0 :     sal_uInt16 _nPos = aLbHatchBckgrdColor.GetSelectEntryPos();
    2086         [ #  # ]:          0 :     aLbColor.SelectEntryPos( _nPos );
    2087         [ #  # ]:          0 :     if( _nPos != LISTBOX_ENTRY_NOTFOUND )
    2088                 :            :     {
    2089                 :            :         rXFSet.Put( XFillColorItem( String(),
    2090 [ #  # ][ #  # ]:          0 :                                     aLbHatchBckgrdColor.GetSelectEntryColor() ) );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    2091                 :            :     }
    2092 [ #  # ][ #  # ]:          0 :     else if( SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLCOLOR ), sal_True, &pPoolItem ) )
                 [ #  # ]
    2093                 :            :     {
    2094         [ #  # ]:          0 :         Color aColor( ( ( const XFillColorItem* ) pPoolItem )->GetColorValue() );
    2095 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillColorItem( String(), aColor ) );
         [ #  # ][ #  # ]
                 [ #  # ]
    2096                 :            :     }
    2097                 :            :     else
    2098 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
                 [ #  # ]
    2099                 :            : 
    2100         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2101         [ #  # ]:          0 :     aCtlXRectPreview.Invalidate();
    2102                 :            : 
    2103                 :          0 :     return( 0L );
    2104                 :            : }
    2105                 :            : 
    2106                 :            : //------------------------------------------------------------------------
    2107                 :            : 
    2108                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ToggleHatchBckgrdColorHdl_Impl)
    2109                 :            : {
    2110                 :            :     // switch on/off backgroundcolor for hatches
    2111 [ #  # ][ #  # ]:          0 :     aLbHatchBckgrdColor.Enable( aCbxHatchBckgrd.IsChecked() );
    2112                 :            : 
    2113 [ #  # ][ #  # ]:          0 :     XFillBackgroundItem aItem( aCbxHatchBckgrd.IsChecked() );
    2114         [ #  # ]:          0 :     rXFSet.Put ( aItem, XATTR_FILLBACKGROUND );
    2115                 :            : 
    2116         [ #  # ]:          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2117         [ #  # ]:          0 :     aCtlXRectPreview.Invalidate();
    2118                 :            : 
    2119 [ #  # ][ #  # ]:          0 :     if( aLbHatchBckgrdColor.GetSelectEntryPos() == LISTBOX_ENTRY_NOTFOUND )
    2120                 :            :     {
    2121 [ #  # ][ #  # ]:          0 :         if ( SFX_ITEM_SET == rOutAttrs.GetItemState( XATTR_FILLCOLOR ) )//>= SFX_ITEM_DEFAULT )
    2122                 :            :         {
    2123 [ #  # ][ #  # ]:          0 :             XFillColorItem aColorItem( (const XFillColorItem&)rOutAttrs.Get( XATTR_FILLCOLOR ) );
    2124 [ #  # ][ #  # ]:          0 :             aLbHatchBckgrdColor.SelectEntry( aColorItem.GetColorValue() );
                 [ #  # ]
    2125                 :            :         }
    2126                 :            :     }
    2127                 :            : 
    2128         [ #  # ]:          0 :     return( 0L );
    2129                 :            : }
    2130                 :            : 
    2131                 :            : //------------------------------------------------------------------------
    2132                 :            : 
    2133                 :          0 : void SvxAreaTabPage::ClickBitmapHdl_Impl()
    2134                 :            : {
    2135         [ #  # ]:          0 :     aLbColor.Hide();
    2136         [ #  # ]:          0 :     aLbGradient.Hide();
    2137         [ #  # ]:          0 :     aLbHatching.Hide();
    2138         [ #  # ]:          0 :     aLbBitmap.Enable();
    2139         [ #  # ]:          0 :     aLbBitmap.Show();
    2140         [ #  # ]:          0 :     aCtlBitmapPreview.Enable();
    2141         [ #  # ]:          0 :     aCtlBitmapPreview.Show();
    2142         [ #  # ]:          0 :     aCtlXRectPreview.Hide();
    2143         [ #  # ]:          0 :     aFlStepCount.Hide();
    2144         [ #  # ]:          0 :     aTsbStepCount.Hide();
    2145         [ #  # ]:          0 :     aNumFldStepCount.Hide();
    2146                 :            : 
    2147         [ #  # ]:          0 :     aTsbTile.Enable();
    2148         [ #  # ]:          0 :     aTsbStretch.Enable();
    2149         [ #  # ]:          0 :     aTsbScale.Enable();
    2150         [ #  # ]:          0 :     aTsbOriginal.Enable();
    2151         [ #  # ]:          0 :     aFtXSize.Enable();
    2152         [ #  # ]:          0 :     aMtrFldXSize.Enable();
    2153         [ #  # ]:          0 :     aFtYSize.Enable();
    2154         [ #  # ]:          0 :     aMtrFldYSize.Enable();
    2155         [ #  # ]:          0 :     aFlSize.Enable();
    2156         [ #  # ]:          0 :     aCtlPosition.Enable();
    2157         [ #  # ]:          0 :     aFtXOffset.Enable();
    2158         [ #  # ]:          0 :     aMtrFldXOffset.Enable();
    2159         [ #  # ]:          0 :     aFtYOffset.Enable();
    2160         [ #  # ]:          0 :     aMtrFldYOffset.Enable();
    2161         [ #  # ]:          0 :     aFlPosition.Enable();
    2162         [ #  # ]:          0 :     aRbtRow.Enable();
    2163         [ #  # ]:          0 :     aRbtColumn.Enable();
    2164         [ #  # ]:          0 :     aMtrFldOffset.Enable();
    2165         [ #  # ]:          0 :     aFlOffset.Enable();
    2166                 :            : 
    2167                 :            :     // Controls for Hatch-Background
    2168         [ #  # ]:          0 :     aCbxHatchBckgrd.Hide();
    2169         [ #  # ]:          0 :     aLbHatchBckgrdColor.Hide();
    2170                 :            : 
    2171         [ #  # ]:          0 :     aTsbTile.Show();
    2172         [ #  # ]:          0 :     aTsbStretch.Show();
    2173         [ #  # ]:          0 :     aTsbScale.Show();
    2174         [ #  # ]:          0 :     aTsbOriginal.Show();
    2175         [ #  # ]:          0 :     aFtXSize.Show();
    2176         [ #  # ]:          0 :     aMtrFldXSize.Show();
    2177         [ #  # ]:          0 :     aFtYSize.Show();
    2178         [ #  # ]:          0 :     aMtrFldYSize.Show();
    2179         [ #  # ]:          0 :     aFlSize.Show();
    2180         [ #  # ]:          0 :     aCtlPosition.Show();
    2181         [ #  # ]:          0 :     aFtXOffset.Show();
    2182         [ #  # ]:          0 :     aMtrFldXOffset.Show();
    2183         [ #  # ]:          0 :     aFtYOffset.Show();
    2184         [ #  # ]:          0 :     aMtrFldYOffset.Show();
    2185         [ #  # ]:          0 :     aFlPosition.Show();
    2186         [ #  # ]:          0 :     aRbtRow.Show();
    2187         [ #  # ]:          0 :     aRbtColumn.Show();
    2188         [ #  # ]:          0 :     aMtrFldOffset.Show();
    2189         [ #  # ]:          0 :     aFlOffset.Show();
    2190                 :            : 
    2191                 :            :     // set table text
    2192 [ #  # ][ #  # ]:          0 :     String          aString( CUI_RES( RID_SVXSTR_TABLE ) );     aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) );
                 [ #  # ]
    2193 [ #  # ][ #  # ]:          0 :     INetURLObject   aURL( pBitmapList->GetPath() );
    2194                 :            : 
    2195 [ #  # ][ #  # ]:          0 :     aURL.Append( pBitmapList->GetName() );
    2196                 :            :     DBG_ASSERT( aURL.GetProtocol() != INET_PROT_NOT_VALID, "invalid URL" );
    2197                 :            : 
    2198 [ #  # ][ #  # ]:          0 :     if( aURL.getBase().getLength() > 18 )
    2199                 :            :     {
    2200 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase()).Copy( 0, 15 );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    2201         [ #  # ]:          0 :         aString.AppendAscii( RTL_CONSTASCII_STRINGPARAM( "..." ) );
    2202                 :            :     }
    2203                 :            :     else
    2204 [ #  # ][ #  # ]:          0 :         aString += String(aURL.getBase());
         [ #  # ][ #  # ]
    2205                 :            : 
    2206         [ #  # ]:          0 :     ModifyBitmapHdl_Impl( this );
    2207 [ #  # ][ #  # ]:          0 :     ModifyTileHdl_Impl( &aTsbOriginal );
                 [ #  # ]
    2208                 :          0 : }
    2209                 :            : 
    2210                 :            : //------------------------------------------------------------------------
    2211                 :            : 
    2212                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyBitmapHdl_Impl)
    2213                 :            : {
    2214                 :          0 :     const SfxPoolItem* pPoolItem = NULL;
    2215         [ #  # ]:          0 :     sal_uInt16 _nPos = aLbBitmap.GetSelectEntryPos();
    2216         [ #  # ]:          0 :     if( _nPos != LISTBOX_ENTRY_NOTFOUND )
    2217                 :            :     {
    2218                 :            :         // fill ItemSet and pass it on to aCtlXRectPreview
    2219         [ #  # ]:          0 :         XBitmapEntry* pEntry = pBitmapList->GetBitmap( _nPos );
    2220                 :            : 
    2221 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_BITMAP ) );
                 [ #  # ]
    2222 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillBitmapItem( String(), pEntry->GetXBitmap() ) );
         [ #  # ][ #  # ]
                 [ #  # ]
    2223                 :            :     }
    2224 [ #  # ][ #  # ]:          0 :     else if( SFX_ITEM_SET == rOutAttrs.GetItemState( GetWhich( XATTR_FILLBITMAP ), sal_True, &pPoolItem ) )
                 [ #  # ]
    2225                 :            :     {
    2226 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_BITMAP ) );
                 [ #  # ]
    2227 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillBitmapItem( String(), ( ( const XFillBitmapItem* ) pPoolItem )->GetBitmapValue() ) );
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
    2228                 :            :     }
    2229                 :            :     else
    2230 [ #  # ][ #  # ]:          0 :         rXFSet.Put( XFillStyleItem( XFILL_NONE ) );
                 [ #  # ]
    2231                 :            : 
    2232         [ #  # ]:          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2233         [ #  # ]:          0 :     aCtlBitmapPreview.Invalidate();
    2234                 :            : 
    2235                 :          0 :     return( 0L );
    2236                 :            : }
    2237                 :            : 
    2238                 :            : //------------------------------------------------------------------------
    2239                 :            : 
    2240                 :          0 : IMPL_LINK( SvxAreaTabPage, ModifyStepCountHdl_Impl, void *, p )
    2241                 :            : {
    2242         [ #  # ]:          0 :     if( p == &aTsbStepCount )
    2243                 :            :     {
    2244         [ #  # ]:          0 :         if( aTsbStepCount.GetState() == STATE_NOCHECK )
    2245                 :            :         {
    2246         [ #  # ]:          0 :             if( aNumFldStepCount.GetText().Len() == 0 )
    2247 [ #  # ][ #  # ]:          0 :                 aNumFldStepCount.SetText(rtl::OUString("64"));
                 [ #  # ]
    2248                 :            : 
    2249                 :          0 :             aNumFldStepCount.Enable();
    2250                 :            :         }
    2251                 :            :         else
    2252                 :          0 :             aNumFldStepCount.Disable();
    2253                 :            :     }
    2254                 :            : 
    2255                 :          0 :     sal_uInt16 nValue = 0;
    2256         [ #  # ]:          0 :     if( aTsbStepCount.GetState() != STATE_CHECK )
    2257                 :            :     {
    2258                 :            :         // condition != Disabled ?
    2259         [ #  # ]:          0 :         if( aNumFldStepCount.GetText().Len() > 0 )
    2260                 :          0 :             nValue = (sal_uInt16) aNumFldStepCount.GetValue();
    2261                 :            :     }
    2262         [ #  # ]:          0 :     rXFSet.Put( XGradientStepCountItem( nValue ) );
    2263                 :          0 :     aCtlXRectPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2264                 :          0 :     aCtlXRectPreview.Invalidate();
    2265                 :            : 
    2266                 :          0 :     return( 0L );
    2267                 :            : }
    2268                 :            : 
    2269                 :            : //------------------------------------------------------------------------
    2270                 :            : 
    2271                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ModifyTileHdl_Impl)
    2272                 :            : {
    2273                 :          0 :     TriState eState = aTsbTile.GetState();
    2274         [ #  # ]:          0 :     if( eState == STATE_CHECK )
    2275                 :            :     {
    2276                 :          0 :         aTsbStretch.Disable();
    2277                 :          0 :         aRbtRow.Enable();
    2278                 :          0 :         aRbtColumn.Enable();
    2279                 :          0 :         aMtrFldOffset.Enable();
    2280                 :          0 :         aFlOffset.Enable();
    2281                 :            : 
    2282                 :          0 :         aCtlPosition.Enable();
    2283                 :          0 :         aCtlPosition.Invalidate();
    2284                 :          0 :         aFtXOffset.Enable();
    2285                 :          0 :         aMtrFldXOffset.Enable();
    2286                 :          0 :         aFtYOffset.Enable();
    2287                 :          0 :         aMtrFldYOffset.Enable();
    2288                 :          0 :         aFlPosition.Enable();
    2289                 :            : 
    2290                 :          0 :         aTsbScale.Enable();
    2291                 :          0 :         aTsbOriginal.Enable();
    2292                 :          0 :         aFtXSize.Enable();
    2293                 :          0 :         aMtrFldXSize.Enable();
    2294                 :          0 :         aFtYSize.Enable();
    2295                 :          0 :         aMtrFldYSize.Enable();
    2296                 :          0 :         aFlSize.Enable();
    2297                 :            :     }
    2298         [ #  # ]:          0 :     else if( eState == STATE_NOCHECK )
    2299                 :            :     {
    2300                 :          0 :         aTsbStretch.Enable();
    2301                 :          0 :         aRbtRow.Disable();
    2302                 :          0 :         aRbtColumn.Disable();
    2303                 :          0 :         aMtrFldOffset.Disable();
    2304                 :          0 :         aFlOffset.Disable();
    2305                 :            : 
    2306                 :          0 :         aCtlPosition.Disable();
    2307                 :          0 :         aCtlPosition.Invalidate();
    2308                 :          0 :         aFtXOffset.Disable();
    2309                 :          0 :         aMtrFldXOffset.Disable();
    2310                 :          0 :         aFtYOffset.Disable();
    2311                 :          0 :         aMtrFldYOffset.Disable();
    2312                 :          0 :         aFlPosition.Disable();
    2313                 :            : 
    2314         [ #  # ]:          0 :         if( aTsbStretch.GetState() != STATE_NOCHECK )
    2315                 :            :         {
    2316                 :          0 :             aTsbScale.Disable();
    2317                 :          0 :             aTsbOriginal.Disable();
    2318                 :          0 :             aFtXSize.Disable();
    2319                 :          0 :             aMtrFldXSize.Disable();
    2320                 :          0 :             aFtYSize.Disable();
    2321                 :          0 :             aMtrFldYSize.Disable();
    2322                 :          0 :             aFlSize.Disable();
    2323                 :            :         }
    2324                 :            :         else
    2325                 :            :         {
    2326                 :          0 :             aTsbScale.Enable();
    2327                 :          0 :             aTsbOriginal.Enable();
    2328                 :          0 :             aFtXSize.Enable();
    2329                 :          0 :             aMtrFldXSize.Enable();
    2330                 :          0 :             aFtYSize.Enable();
    2331                 :          0 :             aMtrFldYSize.Enable();
    2332                 :          0 :             aFlSize.Enable();
    2333                 :            :         }
    2334                 :            :     }
    2335                 :            :     else
    2336                 :            :     {
    2337                 :          0 :         aTsbStretch.Disable();
    2338                 :          0 :         aRbtRow.Disable();
    2339                 :          0 :         aRbtColumn.Disable();
    2340                 :          0 :         aMtrFldOffset.Disable();
    2341                 :          0 :         aFlOffset.Disable();
    2342                 :            : 
    2343                 :          0 :         aCtlPosition.Disable();
    2344                 :          0 :         aCtlPosition.Invalidate();
    2345                 :          0 :         aFtXOffset.Disable();
    2346                 :          0 :         aMtrFldXOffset.Disable();
    2347                 :          0 :         aFtYOffset.Disable();
    2348                 :          0 :         aMtrFldYOffset.Disable();
    2349                 :          0 :         aFlPosition.Disable();
    2350                 :            : 
    2351                 :          0 :         aTsbScale.Disable();
    2352                 :          0 :         aTsbOriginal.Disable();
    2353                 :          0 :         aFtXSize.Disable();
    2354                 :          0 :         aMtrFldXSize.Disable();
    2355                 :          0 :         aFtYSize.Disable();
    2356                 :          0 :         aMtrFldYSize.Disable();
    2357                 :          0 :         aFlSize.Disable();
    2358                 :            :     }
    2359                 :            : 
    2360         [ #  # ]:          0 :     if( aTsbOriginal.GetState() == STATE_CHECK )
    2361                 :            :     {
    2362         [ #  # ]:          0 :         aMtrFldXSize.SetText( String() );
    2363         [ #  # ]:          0 :         aMtrFldYSize.SetText( String() );
    2364                 :          0 :         aFtXSize.Disable();
    2365                 :          0 :         aFtYSize.Disable();
    2366                 :          0 :         aMtrFldXSize.Disable();
    2367                 :          0 :         aMtrFldYSize.Disable();
    2368                 :          0 :         aTsbScale.Disable();
    2369                 :            :     }
    2370                 :            :     else
    2371                 :            :     {
    2372                 :          0 :         aMtrFldXSize.SetValue( aMtrFldXSize.GetValue() );
    2373                 :          0 :         aMtrFldYSize.SetValue( aMtrFldYSize.GetValue() );
    2374                 :            :     }
    2375                 :            : 
    2376         [ #  # ]:          0 :     rXFSet.Put( XFillBmpTileItem( sal::static_int_cast< sal_Bool >( eState ) ) );
    2377                 :            : 
    2378         [ #  # ]:          0 :     if( aTsbStretch.IsEnabled() )
    2379                 :            :         rXFSet.Put(
    2380                 :            :             XFillBmpStretchItem(
    2381         [ #  # ]:          0 :                 sal::static_int_cast< sal_Bool >( aTsbStretch.GetState() ) ) );
    2382                 :            : 
    2383         [ #  # ]:          0 :     if( aTsbScale.IsEnabled() )
    2384         [ #  # ]:          0 :         rXFSet.Put( XFillBmpSizeLogItem( aTsbScale.GetState() == STATE_NOCHECK ) );
    2385                 :            : 
    2386         [ #  # ]:          0 :     if( aMtrFldXSize.IsEnabled() )
    2387                 :            :     {
    2388                 :          0 :         XFillBmpSizeXItem* pItem = NULL;
    2389                 :          0 :         TriState eScaleState = aTsbScale.GetState();
    2390                 :            : 
    2391         [ #  # ]:          0 :         if( eScaleState == STATE_NOCHECK )
    2392         [ #  # ]:          0 :             pItem = new XFillBmpSizeXItem( GetCoreValue( aMtrFldXSize, ePoolUnit ) );
    2393                 :            :         else
    2394         [ #  # ]:          0 :             pItem = new XFillBmpSizeXItem( -labs( static_cast<long>(aMtrFldXSize.GetValue()) ) );
    2395                 :            : 
    2396                 :          0 :         rXFSet.Put( *pItem );
    2397                 :            : 
    2398         [ #  # ]:          0 :         delete pItem;
    2399                 :            :     }
    2400 [ #  # ][ #  # ]:          0 :     else if( aTsbOriginal.IsEnabled() && aTsbOriginal.GetState() == STATE_CHECK )
                 [ #  # ]
    2401                 :            :     {
    2402                 :            :         // original size -> size == 0
    2403         [ #  # ]:          0 :         rXFSet.Put( XFillBmpSizeXItem( 0 ) );
    2404         [ #  # ]:          0 :         rXFSet.Put( XFillBmpSizeLogItem( sal_True ) );
    2405                 :            :     }
    2406                 :            : 
    2407         [ #  # ]:          0 :     if( aMtrFldYSize.IsEnabled() )
    2408                 :            :     {
    2409                 :          0 :         XFillBmpSizeYItem* pItem = NULL;
    2410                 :          0 :         TriState eScaleState = aTsbScale.GetState();
    2411                 :            : 
    2412         [ #  # ]:          0 :         if( eScaleState == STATE_NOCHECK )
    2413         [ #  # ]:          0 :             pItem = new XFillBmpSizeYItem( GetCoreValue( aMtrFldYSize, ePoolUnit ) );
    2414                 :            :         else
    2415         [ #  # ]:          0 :             pItem = new XFillBmpSizeYItem( -labs( static_cast<long>(aMtrFldYSize.GetValue()) ) );
    2416                 :            : 
    2417                 :          0 :         rXFSet.Put( *pItem );
    2418                 :            : 
    2419         [ #  # ]:          0 :         delete pItem;
    2420                 :            :     }
    2421 [ #  # ][ #  # ]:          0 :     else if( aTsbOriginal.IsEnabled() && aTsbOriginal.GetState() == STATE_CHECK )
                 [ #  # ]
    2422                 :            :     {
    2423                 :            :         // original size -> size == 0
    2424         [ #  # ]:          0 :         rXFSet.Put( XFillBmpSizeYItem( 0 ) );
    2425         [ #  # ]:          0 :         rXFSet.Put( XFillBmpSizeLogItem( sal_True ) );
    2426                 :            :     }
    2427                 :            : 
    2428         [ #  # ]:          0 :     if( aMtrFldOffset.IsEnabled() )
    2429                 :            :     {
    2430         [ #  # ]:          0 :         if( aRbtRow.IsChecked() )
    2431                 :            :         {
    2432         [ #  # ]:          0 :             rXFSet.Put( XFillBmpTileOffsetXItem( (sal_uInt16) aMtrFldOffset.GetValue() ) );
    2433         [ #  # ]:          0 :             rXFSet.Put( XFillBmpTileOffsetYItem( (sal_uInt16) 0 ) );
    2434                 :            :         }
    2435         [ #  # ]:          0 :         else if( aRbtColumn.IsChecked() )
    2436                 :            :         {
    2437         [ #  # ]:          0 :             rXFSet.Put( XFillBmpTileOffsetXItem( (sal_uInt16) 0 ) );
    2438         [ #  # ]:          0 :             rXFSet.Put( XFillBmpTileOffsetYItem( (sal_uInt16) aMtrFldOffset.GetValue() ) );
    2439                 :            :         }
    2440                 :            :     }
    2441                 :            : 
    2442         [ #  # ]:          0 :     if( aCtlPosition.IsEnabled() )
    2443         [ #  # ]:          0 :         rXFSet.Put( XFillBmpPosItem( aCtlPosition.GetActualRP() ) );
    2444                 :            : 
    2445         [ #  # ]:          0 :     if( aMtrFldXOffset.IsEnabled() )
    2446         [ #  # ]:          0 :         rXFSet.Put( XFillBmpPosOffsetXItem( (sal_uInt16) aMtrFldXOffset.GetValue() ) );
    2447                 :            : 
    2448         [ #  # ]:          0 :     if( aMtrFldYOffset.IsEnabled() )
    2449         [ #  # ]:          0 :         rXFSet.Put( XFillBmpPosOffsetYItem( (sal_uInt16) aMtrFldYOffset.GetValue() ) );
    2450                 :            : 
    2451                 :            : 
    2452                 :          0 :     aCtlBitmapPreview.SetAttributes( aXFillAttr.GetItemSet() );
    2453                 :          0 :     aCtlBitmapPreview.Invalidate();
    2454                 :            : 
    2455                 :          0 :     return( 0L );
    2456                 :            : }
    2457                 :            : 
    2458                 :            : //------------------------------------------------------------------------
    2459                 :            : 
    2460                 :          0 : IMPL_LINK_NOARG(SvxAreaTabPage, ClickScaleHdl_Impl)
    2461                 :            : {
    2462         [ #  # ]:          0 :     if( aTsbScale.GetState() == STATE_CHECK )
    2463                 :            :     {
    2464                 :          0 :         aMtrFldXSize.SetDecimalDigits( 0 );
    2465                 :          0 :         aMtrFldXSize.SetUnit( FUNIT_CUSTOM );
    2466                 :          0 :         aMtrFldXSize.SetValue( 100 );
    2467                 :          0 :         aMtrFldXSize.SetMax( 100 );
    2468                 :          0 :         aMtrFldXSize.SetLast( 100 );
    2469                 :            : 
    2470                 :          0 :         aMtrFldYSize.SetDecimalDigits( 0 );
    2471                 :          0 :         aMtrFldYSize.SetUnit( FUNIT_CUSTOM );
    2472                 :          0 :         aMtrFldYSize.SetValue( 100 );
    2473                 :          0 :         aMtrFldYSize.SetMax( 100 );
    2474                 :          0 :         aMtrFldYSize.SetLast( 100 );
    2475                 :            :     }
    2476                 :            :     else
    2477                 :            :     {
    2478                 :          0 :         aMtrFldXSize.SetDecimalDigits( 2 );
    2479                 :          0 :         aMtrFldXSize.SetUnit( eFUnit );
    2480                 :          0 :         aMtrFldXSize.SetValue( 100 );
    2481                 :          0 :         aMtrFldXSize.SetMax( 999900 );
    2482                 :          0 :         aMtrFldXSize.SetLast( 100000 );
    2483                 :            : 
    2484                 :          0 :         aMtrFldYSize.SetDecimalDigits( 2 );
    2485                 :          0 :         aMtrFldYSize.SetUnit( eFUnit );
    2486                 :          0 :         aMtrFldYSize.SetValue( 100 );
    2487                 :          0 :         aMtrFldYSize.SetMax( 999900 );
    2488                 :          0 :         aMtrFldYSize.SetLast( 100000 );
    2489                 :            :     }
    2490                 :            : 
    2491                 :          0 :     ModifyTileHdl_Impl( NULL );
    2492                 :            : 
    2493                 :          0 :     return( 0L );
    2494                 :            : }
    2495                 :            : 
    2496                 :            : //------------------------------------------------------------------------
    2497                 :            : 
    2498                 :          0 : void SvxAreaTabPage::PointChanged( Window* pWindow, RECT_POINT eRcPt )
    2499                 :            : {
    2500                 :          0 :     eRP = eRcPt;
    2501                 :            : 
    2502                 :            :     // alignment of the bitmap fill
    2503                 :          0 :     ModifyTileHdl_Impl( pWindow );
    2504                 :          0 : }
    2505                 :            : 
    2506                 :          0 : void SvxAreaTabPage::PageCreated (SfxAllItemSet aSet)
    2507                 :            : {
    2508                 :          0 :     SFX_ITEMSET_ARG (&aSet,pColorListItem,SvxColorListItem,SID_COLOR_TABLE,sal_False);
    2509                 :          0 :     SFX_ITEMSET_ARG (&aSet,pGradientListItem,SvxGradientListItem,SID_GRADIENT_LIST,sal_False);
    2510                 :          0 :     SFX_ITEMSET_ARG (&aSet,pHatchingListItem,SvxHatchListItem,SID_HATCH_LIST,sal_False);
    2511                 :          0 :     SFX_ITEMSET_ARG (&aSet,pBitmapListItem,SvxBitmapListItem,SID_BITMAP_LIST,sal_False);
    2512                 :          0 :     SFX_ITEMSET_ARG (&aSet,pPageTypeItem,SfxUInt16Item,SID_PAGE_TYPE,sal_False);
    2513                 :          0 :     SFX_ITEMSET_ARG (&aSet,pDlgTypeItem,SfxUInt16Item,SID_DLG_TYPE,sal_False);
    2514                 :          0 :     SFX_ITEMSET_ARG (&aSet,pPosItem,SfxUInt16Item,SID_TABPAGE_POS,sal_False);
    2515                 :            : 
    2516         [ #  # ]:          0 :     if (pColorListItem)
    2517         [ #  # ]:          0 :         SetColorList(pColorListItem->GetColorList());
    2518         [ #  # ]:          0 :     if (pGradientListItem)
    2519         [ #  # ]:          0 :         SetGradientList(pGradientListItem->GetGradientList());
    2520         [ #  # ]:          0 :     if (pHatchingListItem)
    2521         [ #  # ]:          0 :         SetHatchingList(pHatchingListItem->GetHatchList());
    2522         [ #  # ]:          0 :     if (pBitmapListItem)
    2523         [ #  # ]:          0 :         SetBitmapList(pBitmapListItem->GetBitmapList());
    2524         [ #  # ]:          0 :     if (pPageTypeItem)
    2525                 :          0 :         SetPageType(pPageTypeItem->GetValue());
    2526         [ #  # ]:          0 :     if (pDlgTypeItem)
    2527                 :          0 :         SetDlgType(pDlgTypeItem->GetValue());
    2528         [ #  # ]:          0 :     if (pPosItem)
    2529                 :          0 :         SetPos(pPosItem->GetValue());
    2530                 :          0 :     Construct();
    2531                 :          0 : }
    2532                 :            : 
    2533                 :            : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10