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