1*cdf0e10cSrcweir /************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove 29*cdf0e10cSrcweir #include "precompiled_sc.hxx" 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir #undef SC_DLLIMPLEMENTATION 32*cdf0e10cSrcweir 33*cdf0e10cSrcweir 34*cdf0e10cSrcweir 35*cdf0e10cSrcweir //------------------------------------------------------------------ 36*cdf0e10cSrcweir 37*cdf0e10cSrcweir #include "scitems.hxx" 38*cdf0e10cSrcweir #include "tpview.hxx" 39*cdf0e10cSrcweir #include "global.hxx" 40*cdf0e10cSrcweir #include "viewopti.hxx" 41*cdf0e10cSrcweir #include "tabvwsh.hxx" 42*cdf0e10cSrcweir #include "uiitems.hxx" 43*cdf0e10cSrcweir #include "scresid.hxx" 44*cdf0e10cSrcweir #include "docsh.hxx" 45*cdf0e10cSrcweir #include "sc.hrc" // -> Slot-IDs 46*cdf0e10cSrcweir #include "optdlg.hrc" 47*cdf0e10cSrcweir #include "globstr.hrc" 48*cdf0e10cSrcweir #include <appoptio.hxx> 49*cdf0e10cSrcweir #include <scmod.hxx> 50*cdf0e10cSrcweir #include <svx/dlgutil.hxx> 51*cdf0e10cSrcweir #include <svx/drawitem.hxx> 52*cdf0e10cSrcweir #include <svx/xtable.hxx> 53*cdf0e10cSrcweir 54*cdf0e10cSrcweir 55*cdf0e10cSrcweir // STATIC DATA ----------------------------------------------------------- 56*cdf0e10cSrcweir 57*cdf0e10cSrcweir 58*cdf0e10cSrcweir 59*cdf0e10cSrcweir /*-----------------11.01.97 10.52------------------- 60*cdf0e10cSrcweir Optionen Inhalte 61*cdf0e10cSrcweir --------------------------------------------------*/ 62*cdf0e10cSrcweir 63*cdf0e10cSrcweir ScTpContentOptions::ScTpContentOptions( Window* pParent, 64*cdf0e10cSrcweir const SfxItemSet& rArgSet ) : 65*cdf0e10cSrcweir SfxTabPage(pParent, ScResId( RID_SCPAGE_CONTENT ), rArgSet), 66*cdf0e10cSrcweir 67*cdf0e10cSrcweir aLinesGB( this, ScResId(GB_LINES )), 68*cdf0e10cSrcweir aGridCB( this, ScResId(CB_GRID )), 69*cdf0e10cSrcweir aColorFT( this, ScResId(FT_COLOR )), 70*cdf0e10cSrcweir aColorLB( this, ScResId(LB_COLOR )), 71*cdf0e10cSrcweir aBreakCB( this, ScResId(CB_PAGEBREAKS )), 72*cdf0e10cSrcweir aGuideLineCB( this, ScResId(CB_GUIDELINE )), 73*cdf0e10cSrcweir aHandleCB( this, ScResId(CB_HANDLES )), 74*cdf0e10cSrcweir aBigHandleCB( this, ScResId(CB_BIGHANDLES )), 75*cdf0e10cSrcweir 76*cdf0e10cSrcweir aSeparator1FL (this, ScResId(FL_SEPARATOR1 )), 77*cdf0e10cSrcweir aDisplayGB( this, ScResId(GB_DISPLAY)), 78*cdf0e10cSrcweir aFormulaCB( this, ScResId(CB_FORMULA)), 79*cdf0e10cSrcweir aNilCB( this, ScResId(CB_NIL )), 80*cdf0e10cSrcweir aAnnotCB( this, ScResId(CB_ANNOT )), 81*cdf0e10cSrcweir aValueCB( this, ScResId(CB_VALUE )), 82*cdf0e10cSrcweir aAnchorCB( this, ScResId(CB_ANCHOR )), 83*cdf0e10cSrcweir aClipMarkCB( this, ScResId(CB_CLIP )), 84*cdf0e10cSrcweir aRangeFindCB( this, ScResId( CB_RFIND )), 85*cdf0e10cSrcweir 86*cdf0e10cSrcweir aObjectGB( this, ScResId(GB_OBJECT )), 87*cdf0e10cSrcweir aObjGrfFT( this, ScResId(FT_OBJGRF )), 88*cdf0e10cSrcweir aObjGrfLB( this, ScResId(LB_OBJGRF )), 89*cdf0e10cSrcweir aDiagramFT( this, ScResId(FT_DIAGRAM)), 90*cdf0e10cSrcweir aDiagramLB( this, ScResId(LB_DIAGRAM)), 91*cdf0e10cSrcweir aDrawFT( this, ScResId(FT_DRAW )), 92*cdf0e10cSrcweir aDrawLB( this, ScResId(LB_DRAW )), 93*cdf0e10cSrcweir 94*cdf0e10cSrcweir aZoomGB( this, ScResId(GB_ZOOM) ), 95*cdf0e10cSrcweir aSyncZoomCB( this, ScResId(CB_SYNCZOOM) ), 96*cdf0e10cSrcweir 97*cdf0e10cSrcweir aSeparator2FL (this, ScResId(FL_SEPARATOR2)), 98*cdf0e10cSrcweir aWindowGB( this, ScResId(GB_WINDOW )), 99*cdf0e10cSrcweir aRowColHeaderCB(this, ScResId(CB_ROWCOLHEADER )), 100*cdf0e10cSrcweir aHScrollCB( this, ScResId(CB_HSCROLL )), 101*cdf0e10cSrcweir aVScrollCB( this, ScResId(CB_VSCROLL )), 102*cdf0e10cSrcweir aTblRegCB( this, ScResId(CB_TBLREG )), 103*cdf0e10cSrcweir aOutlineCB( this, ScResId(CB_OUTLINE )), 104*cdf0e10cSrcweir pLocalOptions(0) 105*cdf0e10cSrcweir { 106*cdf0e10cSrcweir FreeResource(); 107*cdf0e10cSrcweir aSeparator1FL.SetStyle( aSeparator1FL.GetStyle() | WB_VERT ); 108*cdf0e10cSrcweir aSeparator2FL.SetStyle( aSeparator2FL.GetStyle() | WB_VERT ); 109*cdf0e10cSrcweir SetExchangeSupport(); 110*cdf0e10cSrcweir Link aSelObjHdl(LINK( this, ScTpContentOptions, SelLbObjHdl ) ); 111*cdf0e10cSrcweir aObjGrfLB. SetSelectHdl(aSelObjHdl); 112*cdf0e10cSrcweir aDiagramLB. SetSelectHdl(aSelObjHdl); 113*cdf0e10cSrcweir aDrawLB. SetSelectHdl(aSelObjHdl); 114*cdf0e10cSrcweir 115*cdf0e10cSrcweir Link aCBHdl(LINK( this, ScTpContentOptions, CBHdl ) ); 116*cdf0e10cSrcweir aFormulaCB .SetClickHdl(aCBHdl); 117*cdf0e10cSrcweir aNilCB .SetClickHdl(aCBHdl); 118*cdf0e10cSrcweir aAnnotCB .SetClickHdl(aCBHdl); 119*cdf0e10cSrcweir aValueCB .SetClickHdl(aCBHdl); 120*cdf0e10cSrcweir aAnchorCB .SetClickHdl(aCBHdl); 121*cdf0e10cSrcweir aClipMarkCB .SetClickHdl(aCBHdl); 122*cdf0e10cSrcweir 123*cdf0e10cSrcweir aVScrollCB .SetClickHdl(aCBHdl); 124*cdf0e10cSrcweir aHScrollCB .SetClickHdl(aCBHdl); 125*cdf0e10cSrcweir aTblRegCB .SetClickHdl(aCBHdl); 126*cdf0e10cSrcweir aOutlineCB .SetClickHdl(aCBHdl); 127*cdf0e10cSrcweir aBreakCB .SetClickHdl(aCBHdl); 128*cdf0e10cSrcweir aGuideLineCB.SetClickHdl(aCBHdl); 129*cdf0e10cSrcweir aHandleCB .SetClickHdl(aCBHdl); 130*cdf0e10cSrcweir aBigHandleCB.SetClickHdl(aCBHdl); 131*cdf0e10cSrcweir aRowColHeaderCB.SetClickHdl(aCBHdl); 132*cdf0e10cSrcweir 133*cdf0e10cSrcweir aGridCB .SetClickHdl( LINK( this, ScTpContentOptions, GridHdl ) ); 134*cdf0e10cSrcweir } 135*cdf0e10cSrcweir /*-----------------11.01.97 10.52------------------- 136*cdf0e10cSrcweir 137*cdf0e10cSrcweir --------------------------------------------------*/ 138*cdf0e10cSrcweir 139*cdf0e10cSrcweir ScTpContentOptions::~ScTpContentOptions() 140*cdf0e10cSrcweir { 141*cdf0e10cSrcweir delete pLocalOptions; 142*cdf0e10cSrcweir } 143*cdf0e10cSrcweir /*-----------------11.01.97 10.52------------------- 144*cdf0e10cSrcweir 145*cdf0e10cSrcweir --------------------------------------------------*/ 146*cdf0e10cSrcweir 147*cdf0e10cSrcweir SfxTabPage* ScTpContentOptions::Create( Window* pParent, 148*cdf0e10cSrcweir const SfxItemSet& rCoreSet ) 149*cdf0e10cSrcweir { 150*cdf0e10cSrcweir return new ScTpContentOptions(pParent, rCoreSet); 151*cdf0e10cSrcweir } 152*cdf0e10cSrcweir /*-----------------11.01.97 10.52------------------- 153*cdf0e10cSrcweir 154*cdf0e10cSrcweir --------------------------------------------------*/ 155*cdf0e10cSrcweir sal_Bool ScTpContentOptions::FillItemSet( SfxItemSet& rCoreSet ) 156*cdf0e10cSrcweir { 157*cdf0e10cSrcweir sal_Bool bRet = sal_False; 158*cdf0e10cSrcweir if( aFormulaCB .GetSavedValue() != aFormulaCB .IsChecked() || 159*cdf0e10cSrcweir aNilCB .GetSavedValue() != aNilCB .IsChecked() || 160*cdf0e10cSrcweir aAnnotCB .GetSavedValue() != aAnnotCB .IsChecked() || 161*cdf0e10cSrcweir aValueCB .GetSavedValue() != aValueCB .IsChecked() || 162*cdf0e10cSrcweir aAnchorCB .GetSavedValue() != aAnchorCB .IsChecked() || 163*cdf0e10cSrcweir aClipMarkCB .GetSavedValue() != aClipMarkCB .IsChecked() || 164*cdf0e10cSrcweir aObjGrfLB .GetSavedValue() != aObjGrfLB .GetSelectEntryPos() || 165*cdf0e10cSrcweir aDiagramLB .GetSavedValue() != aDiagramLB .GetSelectEntryPos() || 166*cdf0e10cSrcweir aDrawLB .GetSavedValue() != aDrawLB .GetSelectEntryPos() || 167*cdf0e10cSrcweir aGridCB .GetSavedValue() != aGridCB.IsChecked() || 168*cdf0e10cSrcweir aRowColHeaderCB .GetSavedValue() != aRowColHeaderCB.IsChecked() || 169*cdf0e10cSrcweir aHScrollCB .GetSavedValue() != aHScrollCB .IsChecked() || 170*cdf0e10cSrcweir aVScrollCB .GetSavedValue() != aVScrollCB .IsChecked() || 171*cdf0e10cSrcweir aTblRegCB .GetSavedValue() != aTblRegCB .IsChecked() || 172*cdf0e10cSrcweir aOutlineCB .GetSavedValue() != aOutlineCB .IsChecked() || 173*cdf0e10cSrcweir aColorLB .GetSavedValue() != aColorLB .GetSelectEntryPos() || 174*cdf0e10cSrcweir aBreakCB .GetSavedValue() != aBreakCB .IsChecked() || 175*cdf0e10cSrcweir aGuideLineCB .GetSavedValue() != aGuideLineCB .IsChecked() || 176*cdf0e10cSrcweir aHandleCB .GetSavedValue() != aHandleCB .IsChecked() || 177*cdf0e10cSrcweir aBigHandleCB .GetSavedValue() != aBigHandleCB .IsChecked()) 178*cdf0e10cSrcweir { 179*cdf0e10cSrcweir pLocalOptions->SetGridColor( aColorLB.GetSelectEntryColor(), 180*cdf0e10cSrcweir aColorLB.GetSelectEntry() ); 181*cdf0e10cSrcweir rCoreSet.Put(ScTpViewItem(SID_SCVIEWOPTIONS, *pLocalOptions)); 182*cdf0e10cSrcweir bRet = sal_True; 183*cdf0e10cSrcweir } 184*cdf0e10cSrcweir if(aRangeFindCB.GetSavedValue() != aRangeFindCB.IsChecked()) 185*cdf0e10cSrcweir { 186*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_RANGEFINDER, aRangeFindCB.IsChecked())); 187*cdf0e10cSrcweir bRet = sal_True; 188*cdf0e10cSrcweir } 189*cdf0e10cSrcweir if(aSyncZoomCB.GetSavedValue() != aSyncZoomCB.IsChecked()) 190*cdf0e10cSrcweir { 191*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_OPT_SYNCZOOM, aSyncZoomCB.IsChecked())); 192*cdf0e10cSrcweir bRet = sal_True; 193*cdf0e10cSrcweir } 194*cdf0e10cSrcweir 195*cdf0e10cSrcweir 196*cdf0e10cSrcweir return bRet; 197*cdf0e10cSrcweir } 198*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 199*cdf0e10cSrcweir 200*cdf0e10cSrcweir --------------------------------------------------*/ 201*cdf0e10cSrcweir 202*cdf0e10cSrcweir void ScTpContentOptions::Reset( const SfxItemSet& rCoreSet ) 203*cdf0e10cSrcweir { 204*cdf0e10cSrcweir const SfxPoolItem* pItem; 205*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SCVIEWOPTIONS, sal_False , &pItem)) 206*cdf0e10cSrcweir pLocalOptions = new ScViewOptions( 207*cdf0e10cSrcweir ((const ScTpViewItem*)pItem)->GetViewOptions() ); 208*cdf0e10cSrcweir else 209*cdf0e10cSrcweir pLocalOptions = new ScViewOptions; 210*cdf0e10cSrcweir aFormulaCB .Check(pLocalOptions->GetOption(VOPT_FORMULAS)); 211*cdf0e10cSrcweir aNilCB .Check(pLocalOptions->GetOption(VOPT_NULLVALS)); 212*cdf0e10cSrcweir aAnnotCB .Check(pLocalOptions->GetOption(VOPT_NOTES)); 213*cdf0e10cSrcweir aValueCB .Check(pLocalOptions->GetOption(VOPT_SYNTAX)); 214*cdf0e10cSrcweir aAnchorCB .Check(pLocalOptions->GetOption(VOPT_ANCHOR)); 215*cdf0e10cSrcweir aClipMarkCB .Check(pLocalOptions->GetOption(VOPT_CLIPMARKS)); 216*cdf0e10cSrcweir 217*cdf0e10cSrcweir aObjGrfLB .SelectEntryPos( (sal_uInt16)pLocalOptions->GetObjMode(VOBJ_TYPE_OLE) ); 218*cdf0e10cSrcweir aDiagramLB .SelectEntryPos( (sal_uInt16)pLocalOptions->GetObjMode(VOBJ_TYPE_CHART) ); 219*cdf0e10cSrcweir aDrawLB .SelectEntryPos( (sal_uInt16)pLocalOptions->GetObjMode(VOBJ_TYPE_DRAW) ); 220*cdf0e10cSrcweir 221*cdf0e10cSrcweir aRowColHeaderCB.Check( pLocalOptions->GetOption(VOPT_HEADER) ); 222*cdf0e10cSrcweir aHScrollCB .Check( pLocalOptions->GetOption(VOPT_HSCROLL) ); 223*cdf0e10cSrcweir aVScrollCB .Check( pLocalOptions->GetOption(VOPT_VSCROLL) ); 224*cdf0e10cSrcweir aTblRegCB .Check( pLocalOptions->GetOption(VOPT_TABCONTROLS) ); 225*cdf0e10cSrcweir aOutlineCB .Check( pLocalOptions->GetOption(VOPT_OUTLINER) ); 226*cdf0e10cSrcweir 227*cdf0e10cSrcweir InitGridOpt(); 228*cdf0e10cSrcweir 229*cdf0e10cSrcweir aBreakCB.Check( pLocalOptions->GetOption(VOPT_PAGEBREAKS) ); 230*cdf0e10cSrcweir aGuideLineCB.Check( pLocalOptions->GetOption(VOPT_HELPLINES) ); 231*cdf0e10cSrcweir aHandleCB.Check( !pLocalOptions->GetOption(VOPT_SOLIDHANDLES) ); // inverted 232*cdf0e10cSrcweir aBigHandleCB.Check( pLocalOptions->GetOption(VOPT_BIGHANDLES) ); 233*cdf0e10cSrcweir 234*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_RANGEFINDER, sal_False, &pItem)) 235*cdf0e10cSrcweir aRangeFindCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 236*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_OPT_SYNCZOOM, sal_False, &pItem)) 237*cdf0e10cSrcweir aSyncZoomCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 238*cdf0e10cSrcweir 239*cdf0e10cSrcweir aRangeFindCB.SaveValue(); 240*cdf0e10cSrcweir aSyncZoomCB.SaveValue(); 241*cdf0e10cSrcweir 242*cdf0e10cSrcweir aFormulaCB .SaveValue(); 243*cdf0e10cSrcweir aNilCB .SaveValue(); 244*cdf0e10cSrcweir aAnnotCB .SaveValue(); 245*cdf0e10cSrcweir aValueCB .SaveValue(); 246*cdf0e10cSrcweir aAnchorCB .SaveValue(); 247*cdf0e10cSrcweir aClipMarkCB .SaveValue(); 248*cdf0e10cSrcweir aObjGrfLB .SaveValue(); 249*cdf0e10cSrcweir aDiagramLB .SaveValue(); 250*cdf0e10cSrcweir aDrawLB .SaveValue(); 251*cdf0e10cSrcweir aRowColHeaderCB .SaveValue(); 252*cdf0e10cSrcweir aHScrollCB .SaveValue(); 253*cdf0e10cSrcweir aVScrollCB .SaveValue(); 254*cdf0e10cSrcweir aTblRegCB .SaveValue(); 255*cdf0e10cSrcweir aOutlineCB .SaveValue(); 256*cdf0e10cSrcweir aGridCB .SaveValue(); 257*cdf0e10cSrcweir aColorLB .SaveValue(); 258*cdf0e10cSrcweir aBreakCB .SaveValue(); 259*cdf0e10cSrcweir aGuideLineCB .SaveValue(); 260*cdf0e10cSrcweir aHandleCB .SaveValue(); 261*cdf0e10cSrcweir aBigHandleCB .SaveValue(); 262*cdf0e10cSrcweir } 263*cdf0e10cSrcweir /*-----------------11.01.97 12.45------------------- 264*cdf0e10cSrcweir 265*cdf0e10cSrcweir --------------------------------------------------*/ 266*cdf0e10cSrcweir 267*cdf0e10cSrcweir void ScTpContentOptions::ActivatePage( const SfxItemSet& rSet) 268*cdf0e10cSrcweir { 269*cdf0e10cSrcweir const SfxPoolItem* pItem; 270*cdf0e10cSrcweir if(SFX_ITEM_SET == rSet.GetItemState(SID_SCVIEWOPTIONS, sal_False , &pItem)) 271*cdf0e10cSrcweir *pLocalOptions = ((const ScTpViewItem*)pItem)->GetViewOptions(); 272*cdf0e10cSrcweir } 273*cdf0e10cSrcweir /*-----------------11.01.97 12.45------------------- 274*cdf0e10cSrcweir 275*cdf0e10cSrcweir --------------------------------------------------*/ 276*cdf0e10cSrcweir 277*cdf0e10cSrcweir int ScTpContentOptions::DeactivatePage( SfxItemSet* pSetP ) 278*cdf0e10cSrcweir { 279*cdf0e10cSrcweir if(pSetP) 280*cdf0e10cSrcweir FillItemSet(*pSetP); 281*cdf0e10cSrcweir return SfxTabPage::LEAVE_PAGE; 282*cdf0e10cSrcweir } 283*cdf0e10cSrcweir /*-----------------11.01.97 13.43------------------- 284*cdf0e10cSrcweir 285*cdf0e10cSrcweir --------------------------------------------------*/ 286*cdf0e10cSrcweir 287*cdf0e10cSrcweir IMPL_LINK( ScTpContentOptions, SelLbObjHdl, ListBox*, pLb ) 288*cdf0e10cSrcweir { 289*cdf0e10cSrcweir sal_uInt16 nSelPos = pLb->GetSelectEntryPos(); 290*cdf0e10cSrcweir ScVObjMode eMode = ScVObjMode(nSelPos); 291*cdf0e10cSrcweir ScVObjType eType = VOBJ_TYPE_OLE; 292*cdf0e10cSrcweir 293*cdf0e10cSrcweir if ( pLb == &aDiagramLB ) 294*cdf0e10cSrcweir eType = VOBJ_TYPE_CHART; 295*cdf0e10cSrcweir else if ( pLb == &aDrawLB ) 296*cdf0e10cSrcweir eType = VOBJ_TYPE_DRAW; 297*cdf0e10cSrcweir 298*cdf0e10cSrcweir pLocalOptions->SetObjMode( eType, eMode ); 299*cdf0e10cSrcweir 300*cdf0e10cSrcweir return 0; 301*cdf0e10cSrcweir } 302*cdf0e10cSrcweir 303*cdf0e10cSrcweir /*-----------------11.01.97 14.25------------------- 304*cdf0e10cSrcweir 305*cdf0e10cSrcweir --------------------------------------------------*/ 306*cdf0e10cSrcweir 307*cdf0e10cSrcweir IMPL_LINK( ScTpContentOptions, CBHdl, CheckBox*, pBtn ) 308*cdf0e10cSrcweir { 309*cdf0e10cSrcweir ScViewOption eOption = VOPT_FORMULAS; 310*cdf0e10cSrcweir sal_Bool bChecked = pBtn->IsChecked(); 311*cdf0e10cSrcweir 312*cdf0e10cSrcweir if ( &aFormulaCB == pBtn ) eOption = VOPT_FORMULAS; 313*cdf0e10cSrcweir else if ( &aNilCB == pBtn ) eOption = VOPT_NULLVALS; 314*cdf0e10cSrcweir else if ( &aAnnotCB == pBtn ) eOption = VOPT_NOTES; 315*cdf0e10cSrcweir else if ( &aValueCB == pBtn ) eOption = VOPT_SYNTAX; 316*cdf0e10cSrcweir else if ( &aAnchorCB == pBtn ) eOption = VOPT_ANCHOR; 317*cdf0e10cSrcweir else if ( &aClipMarkCB == pBtn ) eOption = VOPT_CLIPMARKS; 318*cdf0e10cSrcweir else if ( &aVScrollCB == pBtn ) eOption = VOPT_VSCROLL; 319*cdf0e10cSrcweir else if ( &aHScrollCB == pBtn ) eOption = VOPT_HSCROLL; 320*cdf0e10cSrcweir else if ( &aTblRegCB == pBtn ) eOption = VOPT_TABCONTROLS; 321*cdf0e10cSrcweir else if ( &aOutlineCB == pBtn ) eOption = VOPT_OUTLINER; 322*cdf0e10cSrcweir else if ( &aBreakCB == pBtn ) eOption = VOPT_PAGEBREAKS; 323*cdf0e10cSrcweir else if ( &aGuideLineCB == pBtn ) eOption = VOPT_HELPLINES; 324*cdf0e10cSrcweir else if ( &aHandleCB == pBtn ) eOption = VOPT_SOLIDHANDLES; 325*cdf0e10cSrcweir else if ( &aBigHandleCB == pBtn ) eOption = VOPT_BIGHANDLES; 326*cdf0e10cSrcweir else if ( &aRowColHeaderCB == pBtn ) eOption = VOPT_HEADER; 327*cdf0e10cSrcweir 328*cdf0e10cSrcweir // VOPT_SOLIDHANDLES is inverted (CheckBox is "simple handles") 329*cdf0e10cSrcweir if ( eOption == VOPT_SOLIDHANDLES ) 330*cdf0e10cSrcweir pLocalOptions->SetOption( eOption, !bChecked ); 331*cdf0e10cSrcweir else 332*cdf0e10cSrcweir pLocalOptions->SetOption( eOption, bChecked ); 333*cdf0e10cSrcweir 334*cdf0e10cSrcweir 335*cdf0e10cSrcweir return 0; 336*cdf0e10cSrcweir } 337*cdf0e10cSrcweir /*-----------------11.01.97 13.13------------------- 338*cdf0e10cSrcweir 339*cdf0e10cSrcweir --------------------------------------------------*/ 340*cdf0e10cSrcweir 341*cdf0e10cSrcweir void ScTpContentOptions::InitGridOpt() 342*cdf0e10cSrcweir { 343*cdf0e10cSrcweir sal_Bool bGrid = pLocalOptions->GetOption( VOPT_GRID ); 344*cdf0e10cSrcweir 345*cdf0e10cSrcweir aGridCB.Check( bGrid ); 346*cdf0e10cSrcweir 347*cdf0e10cSrcweir if ( bGrid ) 348*cdf0e10cSrcweir aColorFT.Enable(), aColorLB.Enable(); 349*cdf0e10cSrcweir else 350*cdf0e10cSrcweir aColorFT.Disable(), aColorLB.Disable(); 351*cdf0e10cSrcweir 352*cdf0e10cSrcweir if ( aColorLB.GetEntryCount() == 0 ) 353*cdf0e10cSrcweir { 354*cdf0e10cSrcweir SfxObjectShell* pDocSh = SfxObjectShell::Current(); 355*cdf0e10cSrcweir // hier koennte auch eine andere DocShell kommen! 356*cdf0e10cSrcweir pDocSh = PTR_CAST(ScDocShell, pDocSh); 357*cdf0e10cSrcweir 358*cdf0e10cSrcweir XColorTable* pColorTable = NULL; 359*cdf0e10cSrcweir 360*cdf0e10cSrcweir if ( pDocSh ) 361*cdf0e10cSrcweir { 362*cdf0e10cSrcweir const SfxPoolItem* pItem = pDocSh->GetItem( SID_COLOR_TABLE ); 363*cdf0e10cSrcweir 364*cdf0e10cSrcweir if ( pItem ) 365*cdf0e10cSrcweir pColorTable = ((SvxColorTableItem*)pItem)->GetColorTable(); 366*cdf0e10cSrcweir } 367*cdf0e10cSrcweir else 368*cdf0e10cSrcweir pColorTable = XColorTable::GetStdColorTable(); 369*cdf0e10cSrcweir 370*cdf0e10cSrcweir if ( !pColorTable ) 371*cdf0e10cSrcweir return; 372*cdf0e10cSrcweir 373*cdf0e10cSrcweir //------------------------------------------------------ 374*cdf0e10cSrcweir 375*cdf0e10cSrcweir aColorLB.SetUpdateMode( sal_False ); 376*cdf0e10cSrcweir 377*cdf0e10cSrcweir // Eintraege aus der Colortable 378*cdf0e10cSrcweir 379*cdf0e10cSrcweir long nCount = pColorTable->Count(); 380*cdf0e10cSrcweir for ( long n=0; n<nCount; n++ ) 381*cdf0e10cSrcweir { 382*cdf0e10cSrcweir XColorEntry* pEntry = pColorTable->GetColor(n); 383*cdf0e10cSrcweir aColorLB.InsertEntry( pEntry->GetColor(), pEntry->GetName() ); 384*cdf0e10cSrcweir } 385*cdf0e10cSrcweir 386*cdf0e10cSrcweir // Standard-Gitterfarbe 387*cdf0e10cSrcweir 388*cdf0e10cSrcweir Color aStdCol( SC_STD_GRIDCOLOR ); // wie Default in ScViewOptions 389*cdf0e10cSrcweir if ( LISTBOX_ENTRY_NOTFOUND == 390*cdf0e10cSrcweir aColorLB.GetEntryPos( aStdCol ) ) 391*cdf0e10cSrcweir aColorLB.InsertEntry( aStdCol, ScGlobal::GetRscString( STR_GRIDCOLOR ) ); 392*cdf0e10cSrcweir 393*cdf0e10cSrcweir aColorLB.SetUpdateMode( sal_True ); 394*cdf0e10cSrcweir 395*cdf0e10cSrcweir Invalidate(); 396*cdf0e10cSrcweir } 397*cdf0e10cSrcweir 398*cdf0e10cSrcweir // #79720# also select grid color entry on subsequent calls 399*cdf0e10cSrcweir 400*cdf0e10cSrcweir String aName; 401*cdf0e10cSrcweir Color aCol = pLocalOptions->GetGridColor( &aName ); 402*cdf0e10cSrcweir sal_uInt16 nSelPos = aColorLB.GetEntryPos( aCol ); 403*cdf0e10cSrcweir 404*cdf0e10cSrcweir if ( LISTBOX_ENTRY_NOTFOUND != nSelPos ) 405*cdf0e10cSrcweir aColorLB.SelectEntryPos( nSelPos ); 406*cdf0e10cSrcweir else 407*cdf0e10cSrcweir aColorLB.SelectEntryPos( aColorLB.InsertEntry( aCol, aName ) ); 408*cdf0e10cSrcweir } 409*cdf0e10cSrcweir /*-----------------11.01.97 13.40------------------- 410*cdf0e10cSrcweir 411*cdf0e10cSrcweir --------------------------------------------------*/ 412*cdf0e10cSrcweir 413*cdf0e10cSrcweir IMPL_LINK( ScTpContentOptions, GridHdl, CheckBox*, pBox ) 414*cdf0e10cSrcweir { 415*cdf0e10cSrcweir sal_Bool bChecked = pBox->IsChecked(); 416*cdf0e10cSrcweir aColorFT.Enable(bChecked); 417*cdf0e10cSrcweir aColorLB.Enable(bChecked); 418*cdf0e10cSrcweir pLocalOptions->SetOption( VOPT_GRID, bChecked ); 419*cdf0e10cSrcweir return 0; 420*cdf0e10cSrcweir } 421*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 422*cdf0e10cSrcweir 423*cdf0e10cSrcweir --------------------------------------------------*/ 424*cdf0e10cSrcweir 425*cdf0e10cSrcweir ScTpLayoutOptions::ScTpLayoutOptions( Window* pParent, 426*cdf0e10cSrcweir const SfxItemSet& rArgSet ) : 427*cdf0e10cSrcweir SfxTabPage(pParent, ScResId( RID_SCPAGE_LAYOUT ), rArgSet), 428*cdf0e10cSrcweir aUnitGB( this, ScResId(GB_UNIT )), 429*cdf0e10cSrcweir aUnitFT( this, ScResId(FT_UNIT )), 430*cdf0e10cSrcweir aUnitLB( this, ScResId(LB_UNIT )), 431*cdf0e10cSrcweir aTabFT( this, ScResId( FT_TAB )), 432*cdf0e10cSrcweir aTabMF( this, ScResId( MF_TAB )), 433*cdf0e10cSrcweir aSeparatorFL( this, ScResId( FL_SEPARATOR )), 434*cdf0e10cSrcweir aLinkGB (this, ScResId(GB_LINK )), 435*cdf0e10cSrcweir aLinkFT(this, ScResId(FT_UPDATE_LINKS )), 436*cdf0e10cSrcweir aAlwaysRB (this, ScResId(RB_ALWAYS )), 437*cdf0e10cSrcweir aRequestRB (this, ScResId(RB_REQUEST )), 438*cdf0e10cSrcweir aNeverRB (this, ScResId(RB_NEVER )), 439*cdf0e10cSrcweir 440*cdf0e10cSrcweir aOptionsGB( this, ScResId( GB_OPTIONS )), 441*cdf0e10cSrcweir aAlignCB ( this, ScResId( CB_ALIGN )), 442*cdf0e10cSrcweir aAlignLB ( this, ScResId( LB_ALIGN )), 443*cdf0e10cSrcweir aEditModeCB( this, ScResId( CB_EDITMODE )), 444*cdf0e10cSrcweir aFormatCB( this, ScResId( CB_FORMAT )), 445*cdf0e10cSrcweir aExpRefCB( this, ScResId( CB_EXPREF )), 446*cdf0e10cSrcweir aMarkHdrCB( this, ScResId( CB_MARKHDR )), 447*cdf0e10cSrcweir aTextFmtCB( this, ScResId( CB_TEXTFMT )), 448*cdf0e10cSrcweir aReplWarnCB( this, ScResId( CB_REPLWARN )), 449*cdf0e10cSrcweir aUnitArr( ScResId(ST_UNIT )), 450*cdf0e10cSrcweir pDoc(NULL) 451*cdf0e10cSrcweir { 452*cdf0e10cSrcweir FreeResource(); 453*cdf0e10cSrcweir aSeparatorFL.SetStyle( aSeparatorFL.GetStyle() | WB_VERT ); 454*cdf0e10cSrcweir SetExchangeSupport(); 455*cdf0e10cSrcweir 456*cdf0e10cSrcweir aUnitLB. SetSelectHdl( LINK( this, ScTpLayoutOptions, MetricHdl ) ); 457*cdf0e10cSrcweir 458*cdf0e10cSrcweir aAlignCB.SetClickHdl(LINK(this, ScTpLayoutOptions, AlignHdl)); 459*cdf0e10cSrcweir 460*cdf0e10cSrcweir 461*cdf0e10cSrcweir for ( sal_uInt16 i = 0; i < aUnitArr.Count(); ++i ) 462*cdf0e10cSrcweir { 463*cdf0e10cSrcweir String sMetric = aUnitArr.GetStringByPos( i ); 464*cdf0e10cSrcweir FieldUnit eFUnit = (FieldUnit)aUnitArr.GetValue( i ); 465*cdf0e10cSrcweir 466*cdf0e10cSrcweir switch ( eFUnit ) 467*cdf0e10cSrcweir { 468*cdf0e10cSrcweir case FUNIT_MM: 469*cdf0e10cSrcweir case FUNIT_CM: 470*cdf0e10cSrcweir case FUNIT_POINT: 471*cdf0e10cSrcweir case FUNIT_PICA: 472*cdf0e10cSrcweir case FUNIT_INCH: 473*cdf0e10cSrcweir { 474*cdf0e10cSrcweir // nur diese Metriken benutzen 475*cdf0e10cSrcweir sal_uInt16 nPos = aUnitLB.InsertEntry( sMetric ); 476*cdf0e10cSrcweir aUnitLB.SetEntryData( nPos, (void*)(long)eFUnit ); 477*cdf0e10cSrcweir } 478*cdf0e10cSrcweir break; 479*cdf0e10cSrcweir default: 480*cdf0e10cSrcweir { 481*cdf0e10cSrcweir // added to avoid warnings 482*cdf0e10cSrcweir } 483*cdf0e10cSrcweir } 484*cdf0e10cSrcweir } 485*cdf0e10cSrcweir 486*cdf0e10cSrcweir } 487*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 488*cdf0e10cSrcweir 489*cdf0e10cSrcweir --------------------------------------------------*/ 490*cdf0e10cSrcweir 491*cdf0e10cSrcweir ScTpLayoutOptions::~ScTpLayoutOptions() 492*cdf0e10cSrcweir { 493*cdf0e10cSrcweir } 494*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 495*cdf0e10cSrcweir 496*cdf0e10cSrcweir --------------------------------------------------*/ 497*cdf0e10cSrcweir 498*cdf0e10cSrcweir SfxTabPage* ScTpLayoutOptions::Create( Window* pParent, 499*cdf0e10cSrcweir const SfxItemSet& rCoreSet ) 500*cdf0e10cSrcweir { 501*cdf0e10cSrcweir ScTpLayoutOptions* pNew = new ScTpLayoutOptions(pParent, rCoreSet); 502*cdf0e10cSrcweir ScDocShell* pDocSh = PTR_CAST(ScDocShell,SfxObjectShell::Current()); 503*cdf0e10cSrcweir 504*cdf0e10cSrcweir if(pDocSh!=NULL) 505*cdf0e10cSrcweir pNew->SetDocument(pDocSh->GetDocument()); 506*cdf0e10cSrcweir return pNew; 507*cdf0e10cSrcweir } 508*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 509*cdf0e10cSrcweir 510*cdf0e10cSrcweir --------------------------------------------------*/ 511*cdf0e10cSrcweir 512*cdf0e10cSrcweir sal_Bool ScTpLayoutOptions::FillItemSet( SfxItemSet& rCoreSet ) 513*cdf0e10cSrcweir { 514*cdf0e10cSrcweir sal_Bool bRet = sal_True; 515*cdf0e10cSrcweir const sal_uInt16 nMPos = aUnitLB.GetSelectEntryPos(); 516*cdf0e10cSrcweir if ( nMPos != aUnitLB.GetSavedValue() ) 517*cdf0e10cSrcweir { 518*cdf0e10cSrcweir sal_uInt16 nFieldUnit = (sal_uInt16)(long)aUnitLB.GetEntryData( nMPos ); 519*cdf0e10cSrcweir rCoreSet.Put( SfxUInt16Item( SID_ATTR_METRIC, 520*cdf0e10cSrcweir (sal_uInt16)nFieldUnit ) ); 521*cdf0e10cSrcweir bRet = sal_True; 522*cdf0e10cSrcweir } 523*cdf0e10cSrcweir 524*cdf0e10cSrcweir if(aTabMF.GetText() != aTabMF.GetSavedValue()) 525*cdf0e10cSrcweir { 526*cdf0e10cSrcweir rCoreSet.Put(SfxUInt16Item(SID_ATTR_DEFTABSTOP, 527*cdf0e10cSrcweir sal::static_int_cast<sal_uInt16>( aTabMF.Denormalize(aTabMF.GetValue(FUNIT_TWIP)) ))); 528*cdf0e10cSrcweir bRet = sal_True; 529*cdf0e10cSrcweir } 530*cdf0e10cSrcweir 531*cdf0e10cSrcweir ScLkUpdMode nSet=LM_ALWAYS; 532*cdf0e10cSrcweir 533*cdf0e10cSrcweir if(aRequestRB.IsChecked()) 534*cdf0e10cSrcweir { 535*cdf0e10cSrcweir nSet=LM_ON_DEMAND; 536*cdf0e10cSrcweir } 537*cdf0e10cSrcweir else if(aNeverRB.IsChecked()) 538*cdf0e10cSrcweir { 539*cdf0e10cSrcweir nSet=LM_NEVER; 540*cdf0e10cSrcweir } 541*cdf0e10cSrcweir 542*cdf0e10cSrcweir if(aRequestRB.IsChecked() != aRequestRB.GetSavedValue() || 543*cdf0e10cSrcweir aNeverRB.IsChecked() != aNeverRB.GetSavedValue() ) 544*cdf0e10cSrcweir { 545*cdf0e10cSrcweir if(pDoc) 546*cdf0e10cSrcweir pDoc->SetLinkMode(nSet); 547*cdf0e10cSrcweir ScAppOptions aAppOptions=SC_MOD()->GetAppOptions(); 548*cdf0e10cSrcweir aAppOptions.SetLinkMode(nSet ); 549*cdf0e10cSrcweir SC_MOD()->SetAppOptions(aAppOptions); 550*cdf0e10cSrcweir bRet = sal_True; 551*cdf0e10cSrcweir } 552*cdf0e10cSrcweir if(aAlignCB.GetSavedValue() != aAlignCB.IsChecked()) 553*cdf0e10cSrcweir { 554*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_SELECTION, aAlignCB.IsChecked())); 555*cdf0e10cSrcweir bRet = sal_True; 556*cdf0e10cSrcweir } 557*cdf0e10cSrcweir 558*cdf0e10cSrcweir if(aAlignLB.GetSavedValue() != aAlignLB.GetSelectEntryPos()) 559*cdf0e10cSrcweir { 560*cdf0e10cSrcweir rCoreSet.Put(SfxUInt16Item(SID_SC_INPUT_SELECTIONPOS, aAlignLB.GetSelectEntryPos())); 561*cdf0e10cSrcweir bRet = sal_True; 562*cdf0e10cSrcweir } 563*cdf0e10cSrcweir 564*cdf0e10cSrcweir if(aEditModeCB.GetSavedValue() != aEditModeCB.IsChecked()) 565*cdf0e10cSrcweir { 566*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_EDITMODE, aEditModeCB.IsChecked())); 567*cdf0e10cSrcweir bRet = sal_True; 568*cdf0e10cSrcweir } 569*cdf0e10cSrcweir 570*cdf0e10cSrcweir if(aFormatCB.GetSavedValue() != aFormatCB.IsChecked()) 571*cdf0e10cSrcweir { 572*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_FMT_EXPAND, aFormatCB.IsChecked())); 573*cdf0e10cSrcweir bRet = sal_True; 574*cdf0e10cSrcweir } 575*cdf0e10cSrcweir 576*cdf0e10cSrcweir 577*cdf0e10cSrcweir if(aExpRefCB.GetSavedValue() != aExpRefCB.IsChecked()) 578*cdf0e10cSrcweir { 579*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_REF_EXPAND, aExpRefCB.IsChecked())); 580*cdf0e10cSrcweir bRet = sal_True; 581*cdf0e10cSrcweir } 582*cdf0e10cSrcweir 583*cdf0e10cSrcweir if(aMarkHdrCB.GetSavedValue() != aMarkHdrCB.IsChecked()) 584*cdf0e10cSrcweir { 585*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_MARK_HEADER, aMarkHdrCB.IsChecked())); 586*cdf0e10cSrcweir bRet = sal_True; 587*cdf0e10cSrcweir } 588*cdf0e10cSrcweir 589*cdf0e10cSrcweir if(aTextFmtCB.GetSavedValue() != aTextFmtCB.IsChecked()) 590*cdf0e10cSrcweir { 591*cdf0e10cSrcweir rCoreSet.Put(SfxBoolItem(SID_SC_INPUT_TEXTWYSIWYG, aTextFmtCB.IsChecked())); 592*cdf0e10cSrcweir bRet = sal_True; 593*cdf0e10cSrcweir } 594*cdf0e10cSrcweir 595*cdf0e10cSrcweir if( aReplWarnCB.GetSavedValue() != aReplWarnCB.IsChecked() ) 596*cdf0e10cSrcweir { 597*cdf0e10cSrcweir rCoreSet.Put( SfxBoolItem( SID_SC_INPUT_REPLCELLSWARN, aReplWarnCB.IsChecked() ) ); 598*cdf0e10cSrcweir bRet = sal_True; 599*cdf0e10cSrcweir } 600*cdf0e10cSrcweir 601*cdf0e10cSrcweir return bRet; 602*cdf0e10cSrcweir } 603*cdf0e10cSrcweir /*-----------------11.01.97 10.53------------------- 604*cdf0e10cSrcweir 605*cdf0e10cSrcweir --------------------------------------------------*/ 606*cdf0e10cSrcweir 607*cdf0e10cSrcweir void ScTpLayoutOptions::Reset( const SfxItemSet& rCoreSet ) 608*cdf0e10cSrcweir { 609*cdf0e10cSrcweir aUnitLB.SetNoSelection(); 610*cdf0e10cSrcweir if ( rCoreSet.GetItemState( SID_ATTR_METRIC ) >= SFX_ITEM_AVAILABLE ) 611*cdf0e10cSrcweir { 612*cdf0e10cSrcweir const SfxUInt16Item& rItem = (SfxUInt16Item&)rCoreSet.Get( SID_ATTR_METRIC ); 613*cdf0e10cSrcweir FieldUnit eFieldUnit = (FieldUnit)rItem.GetValue(); 614*cdf0e10cSrcweir 615*cdf0e10cSrcweir for ( sal_uInt16 i = 0; i < aUnitLB.GetEntryCount(); ++i ) 616*cdf0e10cSrcweir { 617*cdf0e10cSrcweir if ( (FieldUnit)(long)aUnitLB.GetEntryData( i ) == eFieldUnit ) 618*cdf0e10cSrcweir { 619*cdf0e10cSrcweir aUnitLB.SelectEntryPos( i ); 620*cdf0e10cSrcweir break; 621*cdf0e10cSrcweir } 622*cdf0e10cSrcweir } 623*cdf0e10cSrcweir ::SetFieldUnit(aTabMF, eFieldUnit); 624*cdf0e10cSrcweir } 625*cdf0e10cSrcweir aUnitLB.SaveValue(); 626*cdf0e10cSrcweir 627*cdf0e10cSrcweir const SfxPoolItem* pItem; 628*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_ATTR_DEFTABSTOP, sal_False, &pItem)) 629*cdf0e10cSrcweir aTabMF.SetValue(aTabMF.Normalize(((SfxUInt16Item*)pItem)->GetValue()), FUNIT_TWIP); 630*cdf0e10cSrcweir aTabMF.SaveValue(); 631*cdf0e10cSrcweir 632*cdf0e10cSrcweir aUnitLB .SaveValue(); 633*cdf0e10cSrcweir aTabMF .SaveValue(); 634*cdf0e10cSrcweir 635*cdf0e10cSrcweir ScLkUpdMode nSet=LM_UNKNOWN; 636*cdf0e10cSrcweir 637*cdf0e10cSrcweir if(pDoc!=NULL) 638*cdf0e10cSrcweir { 639*cdf0e10cSrcweir nSet=pDoc->GetLinkMode(); 640*cdf0e10cSrcweir } 641*cdf0e10cSrcweir 642*cdf0e10cSrcweir if(nSet==LM_UNKNOWN) 643*cdf0e10cSrcweir { 644*cdf0e10cSrcweir ScAppOptions aAppOptions=SC_MOD()->GetAppOptions(); 645*cdf0e10cSrcweir nSet=aAppOptions.GetLinkMode(); 646*cdf0e10cSrcweir } 647*cdf0e10cSrcweir 648*cdf0e10cSrcweir switch(nSet) 649*cdf0e10cSrcweir { 650*cdf0e10cSrcweir case LM_ALWAYS: aAlwaysRB. Check(); break; 651*cdf0e10cSrcweir case LM_NEVER: aNeverRB. Check(); break; 652*cdf0e10cSrcweir case LM_ON_DEMAND: aRequestRB. Check(); break; 653*cdf0e10cSrcweir default: 654*cdf0e10cSrcweir { 655*cdf0e10cSrcweir // added to avoid warnings 656*cdf0e10cSrcweir } 657*cdf0e10cSrcweir } 658*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_SELECTION, sal_False, &pItem)) 659*cdf0e10cSrcweir aAlignCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 660*cdf0e10cSrcweir 661*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_SELECTIONPOS, sal_False, &pItem)) 662*cdf0e10cSrcweir aAlignLB.SelectEntryPos(((const SfxUInt16Item*)pItem)->GetValue()); 663*cdf0e10cSrcweir 664*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_EDITMODE, sal_False, &pItem)) 665*cdf0e10cSrcweir aEditModeCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 666*cdf0e10cSrcweir 667*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_FMT_EXPAND, sal_False, &pItem)) 668*cdf0e10cSrcweir aFormatCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 669*cdf0e10cSrcweir 670*cdf0e10cSrcweir 671*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_REF_EXPAND, sal_False, &pItem)) 672*cdf0e10cSrcweir aExpRefCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 673*cdf0e10cSrcweir 674*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_MARK_HEADER, sal_False, &pItem)) 675*cdf0e10cSrcweir aMarkHdrCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 676*cdf0e10cSrcweir 677*cdf0e10cSrcweir if(SFX_ITEM_SET == rCoreSet.GetItemState(SID_SC_INPUT_TEXTWYSIWYG, sal_False, &pItem)) 678*cdf0e10cSrcweir aTextFmtCB.Check(((const SfxBoolItem*)pItem)->GetValue()); 679*cdf0e10cSrcweir 680*cdf0e10cSrcweir if( SFX_ITEM_SET == rCoreSet.GetItemState( SID_SC_INPUT_REPLCELLSWARN, sal_False, &pItem ) ) 681*cdf0e10cSrcweir aReplWarnCB.Check( ( (const SfxBoolItem*)pItem)->GetValue() ); 682*cdf0e10cSrcweir 683*cdf0e10cSrcweir aAlignCB .SaveValue(); 684*cdf0e10cSrcweir aAlignLB .SaveValue(); 685*cdf0e10cSrcweir aEditModeCB .SaveValue(); 686*cdf0e10cSrcweir aFormatCB .SaveValue(); 687*cdf0e10cSrcweir 688*cdf0e10cSrcweir aExpRefCB .SaveValue(); 689*cdf0e10cSrcweir aMarkHdrCB .SaveValue(); 690*cdf0e10cSrcweir aTextFmtCB .SaveValue(); 691*cdf0e10cSrcweir aReplWarnCB .SaveValue(); 692*cdf0e10cSrcweir AlignHdl(&aAlignCB); 693*cdf0e10cSrcweir 694*cdf0e10cSrcweir aAlwaysRB.SaveValue(); 695*cdf0e10cSrcweir aNeverRB.SaveValue(); 696*cdf0e10cSrcweir aRequestRB.SaveValue(); 697*cdf0e10cSrcweir } 698*cdf0e10cSrcweir 699*cdf0e10cSrcweir /*-----------------11.01.97 12.46------------------- 700*cdf0e10cSrcweir 701*cdf0e10cSrcweir --------------------------------------------------*/ 702*cdf0e10cSrcweir 703*cdf0e10cSrcweir void ScTpLayoutOptions::ActivatePage( const SfxItemSet& /* rCoreSet */ ) 704*cdf0e10cSrcweir { 705*cdf0e10cSrcweir } 706*cdf0e10cSrcweir /*-----------------11.01.97 12.46------------------- 707*cdf0e10cSrcweir 708*cdf0e10cSrcweir --------------------------------------------------*/ 709*cdf0e10cSrcweir 710*cdf0e10cSrcweir int ScTpLayoutOptions::DeactivatePage( SfxItemSet* pSetP ) 711*cdf0e10cSrcweir { 712*cdf0e10cSrcweir if(pSetP) 713*cdf0e10cSrcweir FillItemSet(*pSetP); 714*cdf0e10cSrcweir return SfxTabPage::LEAVE_PAGE; 715*cdf0e10cSrcweir } 716*cdf0e10cSrcweir 717*cdf0e10cSrcweir 718*cdf0e10cSrcweir /*-----------------13.01.97 14.44------------------- 719*cdf0e10cSrcweir Metric des Deftabstops umschalten 720*cdf0e10cSrcweir --------------------------------------------------*/ 721*cdf0e10cSrcweir 722*cdf0e10cSrcweir IMPL_LINK(ScTpLayoutOptions, MetricHdl, ListBox*, EMPTYARG) 723*cdf0e10cSrcweir { 724*cdf0e10cSrcweir const sal_uInt16 nMPos = aUnitLB.GetSelectEntryPos(); 725*cdf0e10cSrcweir if(nMPos != USHRT_MAX) 726*cdf0e10cSrcweir { 727*cdf0e10cSrcweir FieldUnit eFieldUnit = (FieldUnit)(long)aUnitLB.GetEntryData( nMPos ); 728*cdf0e10cSrcweir sal_Int64 nVal = 729*cdf0e10cSrcweir aTabMF.Denormalize( aTabMF.GetValue( FUNIT_TWIP ) ); 730*cdf0e10cSrcweir ::SetFieldUnit( aTabMF, eFieldUnit ); 731*cdf0e10cSrcweir aTabMF.SetValue( aTabMF.Normalize( nVal ), FUNIT_TWIP ); 732*cdf0e10cSrcweir } 733*cdf0e10cSrcweir 734*cdf0e10cSrcweir return 0; 735*cdf0e10cSrcweir } 736*cdf0e10cSrcweir /*-----------------11.01.97 15.30------------------- 737*cdf0e10cSrcweir 738*cdf0e10cSrcweir --------------------------------------------------*/ 739*cdf0e10cSrcweir IMPL_LINK( ScTpLayoutOptions, AlignHdl, CheckBox*, pBox ) 740*cdf0e10cSrcweir { 741*cdf0e10cSrcweir aAlignLB.Enable(pBox->IsChecked()); 742*cdf0e10cSrcweir return 0; 743*cdf0e10cSrcweir } 744*cdf0e10cSrcweir 745*cdf0e10cSrcweir 746