1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 #ifndef _CUI_TAB_AREA_HXX 24 #define _CUI_TAB_AREA_HXX 25 26 // include --------------------------------------------------------------- 27 28 #include <svx/tabarea.hxx> 29 #include <svx/SvxColorValueSet.hxx> 30 31 /************************************************************************* 32 |* 33 |* Fl"achen-Tab-Dialog 34 |* 35 \************************************************************************/ 36 37 class SvxAreaTabDialog : public SfxTabDialog 38 { 39 private: 40 SdrModel* mpDrawModel; 41 // const SdrView* mpView; 42 43 XColorListSharedPtr maColorTab; 44 XColorListSharedPtr maNewColorTab; 45 XGradientListSharedPtr maGradientList; 46 XGradientListSharedPtr maNewGradientList; 47 XHatchListSharedPtr maHatchingList; 48 XHatchListSharedPtr maNewHatchingList; 49 XBitmapListSharedPtr maBitmapList; 50 XBitmapListSharedPtr maNewBitmapList; 51 52 const SfxItemSet& mrOutAttrs; 53 54 ChangeType mnColorTableState; 55 ChangeType mnBitmapListState; 56 ChangeType mnGradientListState; 57 ChangeType mnHatchingListState; 58 59 sal_uInt16 mnPageType; 60 sal_uInt16 mnDlgType; 61 sal_uInt16 mnPos; 62 sal_Bool mbAreaTP; 63 64 virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage ); 65 66 protected: 67 virtual short Ok(); 68 #ifdef _SVX_TABAREA_CXX 69 DECL_LINK( CancelHdlImpl, void * ); 70 void SavePalettes(); 71 #endif 72 73 public: 74 SvxAreaTabDialog( Window* pParent, 75 const SfxItemSet* pAttr, SdrModel* pModel, 76 const SdrView* pSdrView = NULL ); 77 ~SvxAreaTabDialog(); 78 SetNewColorTable(XColorListSharedPtr aColTab)79 void SetNewColorTable( XColorListSharedPtr aColTab ) { maNewColorTab = aColTab; } GetNewColorTable() const80 XColorListSharedPtr GetNewColorTable() const { return maNewColorTab; } GetColorTable() const81 const XColorListSharedPtr GetColorTable() const { return maColorTab; } 82 SetNewGradientList(XGradientListSharedPtr aGrdLst)83 void SetNewGradientList( XGradientListSharedPtr aGrdLst) { maNewGradientList = aGrdLst; } GetNewGradientList() const84 XGradientListSharedPtr GetNewGradientList() const { return maNewGradientList; } GetGradientList() const85 const XGradientListSharedPtr GetGradientList() const { return maGradientList; } 86 SetNewHatchingList(XHatchListSharedPtr aHtchLst)87 void SetNewHatchingList( XHatchListSharedPtr aHtchLst) { maNewHatchingList = aHtchLst; } GetNewHatchingList() const88 XHatchListSharedPtr GetNewHatchingList() const { return maNewHatchingList; } GetHatchingList() const89 const XHatchListSharedPtr GetHatchingList() const { return maHatchingList; } 90 SetNewBitmapList(XBitmapListSharedPtr aBmpLst)91 void SetNewBitmapList( XBitmapListSharedPtr aBmpLst) { maNewBitmapList = aBmpLst; } GetNewBitmapList() const92 XBitmapListSharedPtr GetNewBitmapList() const { return maNewBitmapList; } GetBitmapList() const93 const XBitmapListSharedPtr GetBitmapList() const { return maBitmapList; } 94 }; 95 96 /************************************************************************* 97 |* 98 |* Transparence-Tab-Page 99 |* 100 \************************************************************************/ 101 102 class SvxTransparenceTabPage : public SvxTabPage 103 { 104 using TabPage::ActivatePage; 105 using TabPage::DeactivatePage; 106 107 const SfxItemSet& rOutAttrs; 108 RECT_POINT eRP; 109 110 //CHINA001 sal_uInt16* pPageType; 111 //CHINA001 sal_uInt16* pDlgType; 112 sal_uInt16 nPageType; //add CHINA001 113 sal_uInt16 nDlgType; //add CHINA001 114 115 // main selection 116 FixedLine aFlProp; 117 RadioButton aRbtTransOff; 118 RadioButton aRbtTransLinear; 119 RadioButton aRbtTransGradient; 120 121 // linear transparency 122 MetricField aMtrTransparent; 123 124 // gradient transparency 125 FixedText aFtTrgrType; 126 ListBox aLbTrgrGradientType; 127 FixedText aFtTrgrCenterX; 128 MetricField aMtrTrgrCenterX; 129 FixedText aFtTrgrCenterY; 130 MetricField aMtrTrgrCenterY; 131 FixedText aFtTrgrAngle; 132 MetricField aMtrTrgrAngle; 133 FixedText aFtTrgrBorder; 134 MetricField aMtrTrgrBorder; 135 FixedText aFtTrgrStartValue; 136 MetricField aMtrTrgrStartValue; 137 FixedText aFtTrgrEndValue; 138 MetricField aMtrTrgrEndValue; 139 140 // preview 141 SvxXRectPreview aCtlBitmapPreview; 142 SvxXRectPreview aCtlXRectPreview; 143 sal_Bool bBitmap; 144 145 XOutdevItemPool* pXPool; 146 XFillAttrSetItem aXFillAttr; 147 SfxItemSet& rXFSet; 148 149 #ifdef _SVX_TPAREA_CXX 150 DECL_LINK(ClickTransOffHdl_Impl, void * ); 151 DECL_LINK(ClickTransLinearHdl_Impl, void * ); 152 DECL_LINK(ClickTransGradientHdl_Impl, void * ); 153 DECL_LINK(ModifyTransparentHdl_Impl, void*); 154 DECL_LINK(ChangeTrgrTypeHdl_Impl, void*); 155 DECL_LINK(ModifiedTrgrHdl_Impl, void*); 156 #endif 157 158 void ActivateLinear(sal_Bool bActivate); 159 void ActivateGradient(sal_Bool bActivate); 160 void SetControlState_Impl(XGradientStyle eXGS); 161 162 sal_Bool InitPreview ( const SfxItemSet& rSet ); 163 void InvalidatePreview (sal_Bool bEnable = sal_True ); 164 165 public: 166 SvxTransparenceTabPage(Window* pParent, const SfxItemSet& rInAttrs); 167 void Construct(); 168 169 static SfxTabPage* Create(Window*, const SfxItemSet&); 170 static sal_uInt16* GetRanges(); 171 172 virtual sal_Bool FillItemSet(SfxItemSet&); 173 virtual void Reset(const SfxItemSet&); 174 virtual void ActivatePage(const SfxItemSet& rSet); 175 virtual int DeactivatePage(SfxItemSet* pSet); 176 virtual void PointChanged(Window* pWindow, RECT_POINT eRP); 177 178 //CHINA001 void SetPageType(sal_uInt16 *pInType) { pPageType = pInType; } 179 //CHINA001 void SetDlgType(sal_uInt16* pInType) { pDlgType = pInType; } SetPageType(sal_uInt16 nInType)180 void SetPageType(sal_uInt16 nInType) { nPageType = nInType; } //add CHINA001 SetDlgType(sal_uInt16 nInType)181 void SetDlgType(sal_uInt16 nInType) { nDlgType = nInType; }//add CHINA001 182 virtual void PageCreated (SfxAllItemSet aSet); //add CHINA001 183 }; 184 185 /************************************************************************* 186 |* 187 |* Fl"achen-Tab-Page 188 |* 189 \************************************************************************/ 190 191 class SvxAreaTabPage : public SvxTabPage 192 { 193 using TabPage::ActivatePage; 194 using TabPage::DeactivatePage; 195 196 private: 197 FixedLine aFlProp; 198 ListBox aTypeLB; 199 200 ColorLB aLbColor; 201 GradientLB aLbGradient; 202 HatchingLB aLbHatching; 203 BitmapLB aLbBitmap; 204 SvxXRectPreview aCtlBitmapPreview; 205 206 TriStateBox aTsbStepCount; 207 FixedLine aFlStepCount; 208 NumericField aNumFldStepCount; 209 210 CheckBox aCbxHatchBckgrd; 211 ColorLB aLbHatchBckgrdColor; 212 213 FixedLine aFlSize; 214 TriStateBox aTsbOriginal; 215 TriStateBox aTsbScale; 216 FixedText aFtXSize; 217 MetricField aMtrFldXSize; 218 FixedText aFtYSize; 219 MetricField aMtrFldYSize; 220 FixedLine aFlPosition; 221 SvxRectCtl aCtlPosition; 222 FixedText aFtXOffset; 223 MetricField aMtrFldXOffset; 224 FixedText aFtYOffset; 225 MetricField aMtrFldYOffset; 226 TriStateBox aTsbTile; 227 TriStateBox aTsbStretch; 228 FixedLine aFlOffset; 229 RadioButton aRbtRow; 230 RadioButton aRbtColumn; 231 MetricField aMtrFldOffset; 232 233 SvxXRectPreview aCtlXRectPreview; 234 235 const SfxItemSet& rOutAttrs; 236 RECT_POINT eRP; 237 238 XColorListSharedPtr maColorTab; 239 XGradientListSharedPtr maGradientList; 240 XHatchListSharedPtr maHatchingList; 241 XBitmapListSharedPtr maBitmapList; 242 243 ChangeType* pnColorTableState; 244 ChangeType* pnBitmapListState; 245 ChangeType* pnGradientListState; 246 ChangeType* pnHatchingListState; 247 248 //CHINA001 sal_uInt16* pPageType; 249 //CHINA001 sal_uInt16* pDlgType; 250 //CHINA001 sal_uInt16* pPos; 251 sal_uInt16 nPageType; //add CHINA001 252 sal_uInt16 nDlgType;//add CHINA001 253 sal_uInt16 nPos; //add CHINA001 254 255 sal_Bool* pbAreaTP; 256 257 XOutdevItemPool* pXPool; 258 XFillAttrSetItem aXFillAttr; 259 SfxItemSet& rXFSet; 260 261 SfxMapUnit ePoolUnit; 262 FieldUnit eFUnit; 263 264 #ifdef _SVX_TPAREA_CXX 265 DECL_LINK( SelectDialogTypeHdl_Impl, ListBox * ); 266 DECL_LINK( ClickInvisibleHdl_Impl, void * ); 267 DECL_LINK( ClickColorHdl_Impl, void * ); 268 DECL_LINK( ModifyColorHdl_Impl, void * ); 269 DECL_LINK( ModifyHatchBckgrdColorHdl_Impl, void * ); 270 DECL_LINK( ClickGradientHdl_Impl, void * ); 271 DECL_LINK( ModifyGradientHdl_Impl, void * ); 272 DECL_LINK( ClickHatchingHdl_Impl, void * ); 273 DECL_LINK( ModifyHatchingHdl_Impl, void * ); 274 DECL_LINK( ToggleHatchBckgrdColorHdl_Impl, void * ); 275 DECL_LINK( ClickBitmapHdl_Impl, void * ); 276 DECL_LINK( ModifyBitmapHdl_Impl, void * ); 277 // DECL_LINK( ModifyTransparentHdl_Impl, void * ); 278 DECL_LINK( ModifyStepCountHdl_Impl, void * ); 279 DECL_LINK( ModifyTileHdl_Impl, void * ); 280 DECL_LINK( ClickScaleHdl_Impl, void * ); 281 #endif 282 283 public: 284 SvxAreaTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 285 286 void Construct(); 287 288 static SfxTabPage* Create( Window*, const SfxItemSet& ); 289 static sal_uInt16* GetRanges(); 290 291 virtual sal_Bool FillItemSet( SfxItemSet& ); 292 virtual void Reset( const SfxItemSet & ); 293 virtual void ActivatePage( const SfxItemSet& rSet ); 294 virtual int DeactivatePage( SfxItemSet* pSet ); 295 virtual void PointChanged( Window* pWindow, RECT_POINT eRP ); 296 SetColorTable(XColorListSharedPtr aColTab)297 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } SetGradientList(XGradientListSharedPtr aGrdLst)298 void SetGradientList( XGradientListSharedPtr aGrdLst) { maGradientList = aGrdLst; } SetHatchingList(XHatchListSharedPtr aHtchLst)299 void SetHatchingList( XHatchListSharedPtr aHtchLst) { maHatchingList = aHtchLst; } SetBitmapList(XBitmapListSharedPtr aBmpLst)300 void SetBitmapList( XBitmapListSharedPtr aBmpLst) { maBitmapList = aBmpLst; } 301 302 //CHINA001 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } SetPageType(sal_uInt16 nInType)303 void SetPageType( sal_uInt16 nInType ) { nPageType = nInType; } //add CHINA001 304 //CHINA001 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetDlgType(sal_uInt16 nInType)305 void SetDlgType( sal_uInt16 nInType ) { nDlgType = nInType; }//add CHINA001 306 //CHINA001 void SetPos( sal_uInt16* pInPos ) { pPos = pInPos; } SetPos(sal_uInt16 nInPos)307 void SetPos( sal_uInt16 nInPos ) { nPos = nInPos; }//add CHINA001 SetAreaTP(sal_Bool * pIn)308 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } 309 virtual void PageCreated (SfxAllItemSet aSet); //add CHINA001 SetColorChgd(ChangeType * pIn)310 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } SetGrdChgd(ChangeType * pIn)311 void SetGrdChgd( ChangeType* pIn ) { pnGradientListState = pIn; } SetHtchChgd(ChangeType * pIn)312 void SetHtchChgd( ChangeType* pIn ) { pnHatchingListState = pIn; } SetBmpChgd(ChangeType * pIn)313 void SetBmpChgd( ChangeType* pIn ) { pnBitmapListState = pIn; } 314 }; 315 316 /************************************************************************* 317 |* 318 |* Schatten-Tab-Page 319 |* 320 \************************************************************************/ 321 322 class SvxShadowTabPage : public SvxTabPage 323 { 324 using TabPage::ActivatePage; 325 using TabPage::DeactivatePage; 326 327 private: 328 FixedLine aFlProp; 329 TriStateBox aTsbShowShadow; 330 FixedText aFtPosition; 331 SvxRectCtl aCtlPosition; 332 FixedText aFtDistance; 333 MetricField aMtrDistance; 334 FixedText aFtShadowColor; 335 ColorLB aLbShadowColor; 336 FixedText aFtTransparent; 337 MetricField aMtrTransparent; 338 SvxXShadowPreview aCtlXRectPreview; 339 340 const SfxItemSet& rOutAttrs; 341 RECT_POINT eRP; 342 343 XColorListSharedPtr maColorTab; 344 ChangeType* pnColorTableState; 345 sal_uInt16 nPageType; //add CHINA001 346 sal_uInt16 nDlgType; //add CHINA001 347 sal_uInt16* pPos; 348 sal_Bool* pbAreaTP; 349 350 sal_Bool bDisable; 351 352 XOutdevItemPool* pXPool; 353 XFillAttrSetItem aXFillAttr; 354 SfxItemSet& rXFSet; 355 SfxMapUnit ePoolUnit; 356 357 #ifdef _SVX_TPSHADOW_CXX 358 DECL_LINK( ClickShadowHdl_Impl, void * ); 359 DECL_LINK( ModifyShadowHdl_Impl, void * ); 360 #endif 361 362 public: 363 SvxShadowTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 364 365 void Construct(); 366 static SfxTabPage* Create( Window*, const SfxItemSet& ); 367 static sal_uInt16* GetRanges(); 368 369 virtual sal_Bool FillItemSet( SfxItemSet& ); 370 virtual void Reset( const SfxItemSet & ); 371 virtual void ActivatePage( const SfxItemSet& rSet ); 372 virtual int DeactivatePage( SfxItemSet* pSet ); 373 virtual void PointChanged( Window* pWindow, RECT_POINT eRP ); 374 SetColorTable(XColorListSharedPtr aColTab)375 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } 376 //CHINA001 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } 377 //CHINA001 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetPageType(sal_uInt16 nInType)378 void SetPageType( sal_uInt16 nInType ) { nPageType = nInType; } //add CHINA001 SetDlgType(sal_uInt16 nInType)379 void SetDlgType( sal_uInt16 nInType ) { nDlgType = nInType; } //add CHINA001 SetAreaTP(sal_Bool * pIn)380 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } SetColorChgd(ChangeType * pIn)381 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } 382 virtual void PageCreated (SfxAllItemSet aSet); //add CHINA001 DisablePage(sal_Bool bIn)383 void DisablePage( sal_Bool bIn ) { bDisable = bIn; } 384 }; 385 386 /************************************************************************* 387 |* 388 |* Farbverlauf-Tab-Page 389 |* 390 \************************************************************************/ 391 392 class SvxGradientTabPage : public SfxTabPage 393 { 394 using TabPage::ActivatePage; 395 using TabPage::DeactivatePage; 396 397 private: 398 FixedLine aFlProp; 399 FixedText aFtType; 400 ListBox aLbGradientType; 401 FixedText aFtCenterX; 402 MetricField aMtrCenterX; 403 FixedText aFtCenterY; 404 MetricField aMtrCenterY; 405 FixedText aFtAngle; 406 MetricField aMtrAngle; 407 FixedText aFtBorder; 408 MetricField aMtrBorder; 409 FixedText aFtColorFrom; 410 ColorLB aLbColorFrom; 411 MetricField aMtrColorFrom; 412 FixedText aFtColorTo; 413 ColorLB aLbColorTo; 414 MetricField aMtrColorTo; 415 GradientLB aLbGradients; 416 SvxXRectPreview aCtlPreview; 417 PushButton aBtnAdd; 418 PushButton aBtnModify; 419 PushButton aBtnDelete; 420 ImageButton aBtnLoad; 421 ImageButton aBtnSave; 422 423 const SfxItemSet& rOutAttrs; 424 425 XColorListSharedPtr maColorTab; 426 XGradientListSharedPtr maGradientList; 427 428 ChangeType* pnGradientListState; 429 ChangeType* pnColorTableState; 430 sal_uInt16* pPageType; 431 sal_uInt16* pDlgType; 432 sal_uInt16* pPos; 433 sal_Bool* pbAreaTP; 434 435 XOutdevItemPool* pXPool; 436 XFillStyleItem aXFStyleItem; 437 XFillGradientItem aXGradientItem; 438 XFillAttrSetItem aXFillAttr; 439 SfxItemSet& rXFSet; 440 441 #ifdef _SVX_TPGRADNT_CXX 442 DECL_LINK( ClickAddHdl_Impl, void * ); 443 DECL_LINK( ClickModifyHdl_Impl, void * ); 444 DECL_LINK( ClickDeleteHdl_Impl, void * ); 445 DECL_LINK( ChangeGradientHdl_Impl, void * ); 446 DECL_LINK( ModifiedHdl_Impl, void * ); 447 DECL_LINK( ClickLoadHdl_Impl, void * ); 448 DECL_LINK( ClickSaveHdl_Impl, void * ); 449 450 long CheckChanges_Impl(); 451 void SetControlState_Impl( XGradientStyle eXGS ); 452 #endif 453 454 public: 455 SvxGradientTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 456 457 void Construct(); 458 459 static SfxTabPage* Create( Window*, const SfxItemSet& ); 460 virtual sal_Bool FillItemSet( SfxItemSet& ); 461 virtual void Reset( const SfxItemSet & ); 462 463 virtual void ActivatePage( const SfxItemSet& rSet ); 464 virtual int DeactivatePage( SfxItemSet* pSet ); 465 SetColorTable(XColorListSharedPtr aColTab)466 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } SetGradientList(XGradientListSharedPtr aGrdLst)467 void SetGradientList( XGradientListSharedPtr aGrdLst) { maGradientList = aGrdLst; } 468 SetPageType(sal_uInt16 * pInType)469 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } SetDlgType(sal_uInt16 * pInType)470 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetPos(sal_uInt16 * pInPos)471 void SetPos( sal_uInt16* pInPos ) { pPos = pInPos; } SetAreaTP(sal_Bool * pIn)472 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } 473 SetGrdChgd(ChangeType * pIn)474 void SetGrdChgd( ChangeType* pIn ) { pnGradientListState = pIn; } SetColorChgd(ChangeType * pIn)475 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } 476 }; 477 478 /************************************************************************* 479 |* 480 |* Schraffuren-Tab-Page 481 |* 482 \************************************************************************/ 483 484 class SvxHatchTabPage : public SvxTabPage 485 { 486 using TabPage::ActivatePage; 487 using TabPage::DeactivatePage; 488 489 private: 490 FixedText aFtDistance; 491 MetricField aMtrDistance; 492 FixedText aFtAngle; 493 MetricField aMtrAngle; 494 SvxRectCtl aCtlAngle; 495 FixedLine aFlProp; 496 FixedText aFtLineType; 497 ListBox aLbLineType; 498 FixedText aFtLineColor; 499 ColorLB aLbLineColor; 500 HatchingLB aLbHatchings; 501 SvxXRectPreview aCtlPreview; 502 PushButton aBtnAdd; 503 PushButton aBtnModify; 504 PushButton aBtnDelete; 505 ImageButton aBtnLoad; 506 ImageButton aBtnSave; 507 508 const SfxItemSet& rOutAttrs; 509 RECT_POINT eRP; 510 511 XColorListSharedPtr maColorTab; 512 XHatchListSharedPtr maHatchingList; 513 514 ChangeType* pnHatchingListState; 515 ChangeType* pnColorTableState; 516 sal_uInt16* pPageType; 517 sal_uInt16* pDlgType; 518 sal_uInt16* pPos; 519 sal_Bool* pbAreaTP; 520 521 XOutdevItemPool* pXPool; 522 XFillStyleItem aXFStyleItem; 523 XFillHatchItem aXHatchItem; 524 XFillAttrSetItem aXFillAttr; 525 SfxItemSet& rXFSet; 526 527 SfxMapUnit ePoolUnit; 528 529 #ifdef _SVX_TPHATCH_CXX 530 DECL_LINK( ChangeHatchHdl_Impl, void * ); 531 DECL_LINK( ModifiedHdl_Impl, void * ); 532 DECL_LINK( ClickAddHdl_Impl, void * ); 533 DECL_LINK( ClickModifyHdl_Impl, void * ); 534 DECL_LINK( ClickDeleteHdl_Impl, void * ); 535 DECL_LINK( ClickLoadHdl_Impl, void * ); 536 DECL_LINK( ClickSaveHdl_Impl, void * ); 537 538 long CheckChanges_Impl(); 539 #endif 540 541 public: 542 SvxHatchTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 543 544 void Construct(); 545 546 static SfxTabPage* Create( Window*, const SfxItemSet& ); 547 virtual sal_Bool FillItemSet( SfxItemSet& ); 548 virtual void Reset( const SfxItemSet & ); 549 550 virtual void ActivatePage( const SfxItemSet& rSet ); 551 virtual int DeactivatePage( SfxItemSet* pSet ); 552 553 virtual void PointChanged( Window* pWindow, RECT_POINT eRP ); 554 SetColorTable(XColorListSharedPtr aColTab)555 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } SetHatchingList(XHatchListSharedPtr aHtchLst)556 void SetHatchingList( XHatchListSharedPtr aHtchLst) { maHatchingList = aHtchLst; } 557 SetPageType(sal_uInt16 * pInType)558 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } SetDlgType(sal_uInt16 * pInType)559 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetPos(sal_uInt16 * pInPos)560 void SetPos( sal_uInt16* pInPos ) { pPos = pInPos; } SetAreaTP(sal_Bool * pIn)561 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } 562 SetHtchChgd(ChangeType * pIn)563 void SetHtchChgd( ChangeType* pIn ) { pnHatchingListState = pIn; } SetColorChgd(ChangeType * pIn)564 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } 565 566 virtual void DataChanged( const DataChangedEvent& rDCEvt ); 567 }; 568 569 /************************************************************************* 570 |* 571 |* Bitmap-Tab-Page 572 |* 573 \************************************************************************/ 574 575 class SvxBitmapTabPage : public SvxTabPage 576 { 577 using TabPage::ActivatePage; 578 using TabPage::DeactivatePage; 579 580 private: 581 SvxPixelCtl aCtlPixel; 582 FixedText aFtPixelEdit; 583 FixedText aFtColor; 584 ColorLB aLbColor; 585 FixedText aFtBackgroundColor; 586 ColorLB aLbBackgroundColor; 587 FixedText aLbBitmapsHidden; 588 BitmapLB aLbBitmaps; 589 FixedLine aFlProp; 590 SvxXRectPreview aCtlPreview; 591 PushButton aBtnAdd; 592 PushButton aBtnModify; 593 PushButton aBtnImport; 594 PushButton aBtnDelete; 595 ImageButton aBtnLoad; 596 ImageButton aBtnSave; 597 598 SvxBitmapCtl aBitmapCtl; 599 600 const SfxItemSet& rOutAttrs; 601 602 XColorListSharedPtr maColorTab; 603 XBitmapListSharedPtr maBitmapList; 604 605 ChangeType* pnBitmapListState; 606 ChangeType* pnColorTableState; 607 sal_uInt16* pPageType; 608 sal_uInt16* pDlgType; 609 sal_uInt16* pPos; 610 sal_Bool* pbAreaTP; 611 612 sal_Bool bBmpChanged; 613 614 XOutdevItemPool* pXPool; 615 XFillStyleItem aXFStyleItem; 616 XFillBitmapItem aXBitmapItem; 617 XFillAttrSetItem aXFillAttr; 618 SfxItemSet& rXFSet; 619 620 #ifdef _SVX_TPBITMAP_CXX 621 DECL_LINK( ClickAddHdl_Impl, void * ); 622 DECL_LINK( ClickImportHdl_Impl, void * ); 623 DECL_LINK( ClickModifyHdl_Impl, void * ); 624 DECL_LINK( ClickDeleteHdl_Impl, void * ); 625 DECL_LINK( ChangeBitmapHdl_Impl, void * ); 626 DECL_LINK( ChangePixelColorHdl_Impl, void * ); 627 DECL_LINK( ChangeBackgrndColorHdl_Impl, void * ); 628 DECL_LINK( ClickLoadHdl_Impl, void * ); 629 DECL_LINK( ClickSaveHdl_Impl, void * ); 630 631 long CheckChanges_Impl(); 632 #endif 633 634 public: 635 SvxBitmapTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 636 637 void Construct(); 638 639 static SfxTabPage* Create( Window*, const SfxItemSet& ); 640 virtual sal_Bool FillItemSet( SfxItemSet& ); 641 virtual void Reset( const SfxItemSet & ); 642 643 virtual void ActivatePage( const SfxItemSet& rSet ); 644 virtual int DeactivatePage( SfxItemSet* pSet ); 645 646 virtual void PointChanged( Window* pWindow, RECT_POINT eRP ); 647 SetColorTable(XColorListSharedPtr aColTab)648 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } SetBitmapList(XBitmapListSharedPtr aBmpLst)649 void SetBitmapList( XBitmapListSharedPtr aBmpLst) { maBitmapList = aBmpLst; } 650 SetPageType(sal_uInt16 * pInType)651 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } SetDlgType(sal_uInt16 * pInType)652 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetPos(sal_uInt16 * pInPos)653 void SetPos( sal_uInt16* pInPos ) { pPos = pInPos; } SetAreaTP(sal_Bool * pIn)654 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } 655 SetBmpChgd(ChangeType * pIn)656 void SetBmpChgd( ChangeType* pIn ) { pnBitmapListState = pIn; } SetColorChgd(ChangeType * pIn)657 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } 658 659 /** Return a label that is associated with the given control. This 660 label is used to the determine the name for the control. 661 @param pLabeled 662 The control for which to return a label. 663 @return 664 Return a label control that provides a name for the specified 665 control. 666 */ 667 virtual Window* GetParentLabeledBy( const Window* pLabeled ) const; 668 }; 669 670 /************************************************************************* 671 |* 672 |* Farben-Tab-Page 673 |* 674 \************************************************************************/ 675 676 class SvxColorTabPage : public SfxTabPage 677 { 678 using TabPage::ActivatePage; 679 using TabPage::DeactivatePage; 680 681 private: 682 FixedLine aFlProp; 683 FixedText aFtName; 684 Edit aEdtName; 685 FixedText aFtColor; 686 ColorLB aLbColor; 687 688 FixedText aTableNameFT; 689 SvxColorValueSet aValSetColorTable; 690 691 SvxXRectPreview aCtlPreviewOld; 692 SvxXRectPreview aCtlPreviewNew; 693 694 ListBox aLbColorModel; 695 FixedText aFtColorModel1; 696 MetricField aMtrFldColorModel1; 697 FixedText aFtColorModel2; 698 MetricField aMtrFldColorModel2; 699 FixedText aFtColorModel3; 700 MetricField aMtrFldColorModel3; 701 702 FixedText aFtColorModel4; 703 MetricField aMtrFldColorModel4; 704 705 PushButton aBtnAdd; 706 PushButton aBtnModify; 707 PushButton aBtnWorkOn; 708 PushButton aBtnDelete; 709 ImageButton aBtnLoad; 710 ImageButton aBtnSave; 711 712 const SfxItemSet& rOutAttrs; 713 714 XColorListSharedPtr maColorTab; 715 716 ChangeType* pnColorTableState; 717 sal_uInt16* pPageType; 718 sal_uInt16* pDlgType; 719 sal_uInt16* pPos; 720 sal_Bool* pbAreaTP; 721 722 XOutdevItemPool* pXPool; 723 XFillStyleItem aXFStyleItem; 724 XFillColorItem aXFillColorItem; 725 XFillAttrSetItem aXFillAttr; 726 SfxItemSet& rXFSet; 727 728 ColorModel eCM; 729 730 Color aAktuellColor; 731 732 #ifdef _SVX_TPCOLOR_CXX 733 void ConvertColorValues (Color& rColor, ColorModel eModell); 734 void RgbToCmyk_Impl( Color& rColor, sal_uInt16& rK ); 735 void CmykToRgb_Impl( Color& rColor, const sal_uInt16 nKey ); 736 sal_uInt16 ColorToPercent_Impl( sal_uInt16 nColor ); 737 sal_uInt16 PercentToColor_Impl( sal_uInt16 nPercent ); 738 739 void ImpColorCountChanged(); 740 741 //----------------------------------------------------------------------------------------------------- 742 DECL_LINK( ClickAddHdl_Impl, void * ); // Button 'Hinzufuegen' 743 DECL_LINK( ClickModifyHdl_Impl, void * ); // Button 'Aendern' 744 DECL_LINK( ClickDeleteHdl_Impl, void * ); // Button 'loeschen' 745 DECL_LINK( ClickWorkOnHdl_Impl, void * ); // Button 'Bearbeiten' 746 747 DECL_LINK( SelectColorLBHdl_Impl, void * ); // Farbe aus Listbox ausw�hlen 748 DECL_LINK( SelectValSetHdl_Impl, void * ); // Farbe aus Farbpalette (links) ausw�hlen 749 DECL_LINK( SelectColorModelHdl_Impl, void * ); // Auswahl Listbox 'Farbmodell' 750 long ChangeColorHdl_Impl( void* p ); 751 DECL_LINK( ModifiedHdl_Impl, void * ); // Inhalt der Farbwerte-Felder wurde ver�ndert 752 DECL_LINK( ClickLoadHdl_Impl, void * ); // Button 'Farbtabelle laden' 753 DECL_LINK( ClickSaveHdl_Impl, void * ); // Button 'Farbtabelle sichern' 754 755 long CheckChanges_Impl(); 756 #endif 757 758 public: 759 SvxColorTabPage( Window* pParent, const SfxItemSet& rInAttrs ); 760 761 void Construct(); 762 763 static SfxTabPage* Create( Window*, const SfxItemSet& ); 764 virtual sal_Bool FillItemSet( SfxItemSet& ); 765 virtual void Reset( const SfxItemSet & ); 766 767 virtual void ActivatePage( const SfxItemSet& rSet ); 768 virtual int DeactivatePage( SfxItemSet* pSet ); 769 SetColorTable(XColorListSharedPtr aColTab)770 void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } 771 SetPageType(sal_uInt16 * pInType)772 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } SetDlgType(sal_uInt16 * pInType)773 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } SetPos(sal_uInt16 * pInPos)774 void SetPos( sal_uInt16* pInPos ) { pPos = pInPos; } SetAreaTP(sal_Bool * pIn)775 void SetAreaTP( sal_Bool* pIn ) { pbAreaTP = pIn; } 776 SetColorChgd(ChangeType * pIn)777 void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } 778 779 virtual void FillUserData(); 780 }; 781 782 783 #endif // _CUI_TAB_AREA_HXX 784 785