xref: /aoo41x/main/sc/source/ui/inc/tptable.hxx (revision 38d50f7b)
1*38d50f7bSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*38d50f7bSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*38d50f7bSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*38d50f7bSAndrew Rist  * distributed with this work for additional information
6*38d50f7bSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*38d50f7bSAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*38d50f7bSAndrew Rist  * "License"); you may not use this file except in compliance
9*38d50f7bSAndrew Rist  * with the License.  You may obtain a copy of the License at
10*38d50f7bSAndrew Rist  *
11*38d50f7bSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*38d50f7bSAndrew Rist  *
13*38d50f7bSAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*38d50f7bSAndrew Rist  * software distributed under the License is distributed on an
15*38d50f7bSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*38d50f7bSAndrew Rist  * KIND, either express or implied.  See the License for the
17*38d50f7bSAndrew Rist  * specific language governing permissions and limitations
18*38d50f7bSAndrew Rist  * under the License.
19*38d50f7bSAndrew Rist  *
20*38d50f7bSAndrew Rist  *************************************************************/
21*38d50f7bSAndrew Rist 
22*38d50f7bSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef SC_TPTABLE_HXX
25cdf0e10cSrcweir #define SC_TPTABLE_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #include <sfx2/tabdlg.hxx>
28cdf0e10cSrcweir #include <vcl/fixed.hxx>
29cdf0e10cSrcweir #include <vcl/lstbox.hxx>
30cdf0e10cSrcweir #include <vcl/field.hxx>
31cdf0e10cSrcweir 
32cdf0e10cSrcweir //===================================================================
33cdf0e10cSrcweir 
34cdf0e10cSrcweir /** A vcl/NumericField that additionally supports empty text.
35cdf0e10cSrcweir     @descr  Value 0 is set as empty text, and empty text is returned as 0. */
36cdf0e10cSrcweir class EmptyNumericField : public NumericField
37cdf0e10cSrcweir {
38cdf0e10cSrcweir public:
EmptyNumericField(Window * pParent,WinBits nWinStyle)39cdf0e10cSrcweir     inline explicit     EmptyNumericField( Window* pParent, WinBits nWinStyle ) :
40cdf0e10cSrcweir                             NumericField( pParent, nWinStyle ) {}
EmptyNumericField(Window * pParent,const ResId & rResId)41cdf0e10cSrcweir     inline explicit     EmptyNumericField( Window* pParent, const ResId& rResId ) :
42cdf0e10cSrcweir                             NumericField( pParent, rResId ) {}
43cdf0e10cSrcweir 
44cdf0e10cSrcweir     virtual void        Modify();
45cdf0e10cSrcweir     virtual void        SetValue( sal_Int64 nValue );
46cdf0e10cSrcweir     virtual sal_Int64   GetValue() const;
47cdf0e10cSrcweir };
48cdf0e10cSrcweir 
49cdf0e10cSrcweir //===================================================================
50cdf0e10cSrcweir 
51cdf0e10cSrcweir class ScTablePage : public SfxTabPage
52cdf0e10cSrcweir {
53cdf0e10cSrcweir public:
54cdf0e10cSrcweir 	static	SfxTabPage*	Create			( Window*		 	pParent,
55cdf0e10cSrcweir 										  const SfxItemSet&	rCoreSet );
56cdf0e10cSrcweir 	static	sal_uInt16*		GetRanges		();
57cdf0e10cSrcweir 	virtual	sal_Bool		FillItemSet		( SfxItemSet& rCoreSet );
58cdf0e10cSrcweir 	virtual	void		Reset			( const SfxItemSet& rCoreSet );
59cdf0e10cSrcweir     using SfxTabPage::DeactivatePage;
60cdf0e10cSrcweir 	virtual int			DeactivatePage	( SfxItemSet* pSet = NULL );
61cdf0e10cSrcweir     virtual void        DataChanged     ( const DataChangedEvent& rDCEvt );
62cdf0e10cSrcweir 
63cdf0e10cSrcweir private:
64cdf0e10cSrcweir                     ScTablePage( Window* pParent, const SfxItemSet& rCoreSet );
65cdf0e10cSrcweir     virtual         ~ScTablePage();
66cdf0e10cSrcweir 
67cdf0e10cSrcweir     void            ShowImage();
68cdf0e10cSrcweir 
69cdf0e10cSrcweir private:
70cdf0e10cSrcweir     FixedLine       aFlPageDir;
71cdf0e10cSrcweir 	RadioButton		aBtnTopDown;
72cdf0e10cSrcweir 	RadioButton		aBtnLeftRight;
73cdf0e10cSrcweir     FixedImage      aBmpPageDir;
74cdf0e10cSrcweir     Image           aImgLeftRight;
75cdf0e10cSrcweir     Image           aImgTopDown;
76cdf0e10cSrcweir     Image           aImgLeftRightHC;
77cdf0e10cSrcweir     Image           aImgTopDownHC;
78cdf0e10cSrcweir 	CheckBox		aBtnPageNo;
79cdf0e10cSrcweir 	NumericField	aEdPageNo;
80cdf0e10cSrcweir 
81cdf0e10cSrcweir     FixedLine       aFlPrint;
82cdf0e10cSrcweir 	CheckBox		aBtnHeaders;
83cdf0e10cSrcweir 	CheckBox		aBtnGrid;
84cdf0e10cSrcweir 	CheckBox		aBtnNotes;
85cdf0e10cSrcweir 	CheckBox		aBtnObjects;
86cdf0e10cSrcweir 	CheckBox		aBtnCharts;
87cdf0e10cSrcweir 	CheckBox		aBtnDrawings;
88cdf0e10cSrcweir 	CheckBox		aBtnFormulas;
89cdf0e10cSrcweir 	CheckBox		aBtnNullVals;
90cdf0e10cSrcweir 
91cdf0e10cSrcweir     FixedLine           aFlScale;
92cdf0e10cSrcweir     FixedText           aFtScaleMode;
93cdf0e10cSrcweir     ListBox             aLbScaleMode;
94cdf0e10cSrcweir     FixedText           aFtScaleAll;
95cdf0e10cSrcweir     MetricField         aEdScaleAll;
96cdf0e10cSrcweir     FixedText           aFtScalePageWidth;
97cdf0e10cSrcweir     EmptyNumericField   aEdScalePageWidth;
98cdf0e10cSrcweir     FixedText           aFtScalePageHeight;
99cdf0e10cSrcweir     EmptyNumericField   aEdScalePageHeight;
100cdf0e10cSrcweir     FixedText           aFtScalePageNum;
101cdf0e10cSrcweir     NumericField        aEdScalePageNum;
102cdf0e10cSrcweir 
103cdf0e10cSrcweir private:
104cdf0e10cSrcweir 	//------------------------------------
105cdf0e10cSrcweir 	// Handler:
106cdf0e10cSrcweir     DECL_LINK( PageDirHdl,      RadioButton* );
107cdf0e10cSrcweir     DECL_LINK( PageNoHdl,       CheckBox* );
108cdf0e10cSrcweir     DECL_LINK( ScaleHdl,        ListBox* );
109cdf0e10cSrcweir };
110cdf0e10cSrcweir 
111cdf0e10cSrcweir #endif // SC_TPTABLE_HXX
112