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 _CHART2_TP_AXISLABEL_HXX
24 #define _CHART2_TP_AXISLABEL_HXX
25 
26 #include <sfx2/tabdlg.hxx>
27 #include <vcl/button.hxx>
28 #include <vcl/fixed.hxx>
29 #include <svx/dialcontrol.hxx>
30 #include <svx/wrapfield.hxx>
31 #include <svx/orienthelper.hxx>
32 #include "TextDirectionListBox.hxx"
33 
34 //.............................................................................
35 namespace chart
36 {
37 //.............................................................................
38 
39 //-----------------------------------------------------------------------------
40 /**
41 */
42 
43 class SchAxisLabelTabPage : public SfxTabPage
44 {
45 private:
46 	CheckBox			aCbShowDescription;
47 
48 	FixedLine			aFlOrder;
49 	RadioButton			aRbSideBySide;
50 	RadioButton			aRbUpDown;
51 	RadioButton			aRbDownUp;
52 	RadioButton			aRbAuto;
53 
54     FixedLine           aFlSeparator;
55     FixedLine           aFlTextFlow;
56     CheckBox            aCbTextOverlap;
57     CheckBox            aCbTextBreak;
58 
59     FixedLine           aFlOrient;
60     svx::DialControl    aCtrlDial;
61     FixedText           aFtRotate;
62     svx::WrapField      aNfRotate;
63     TriStateBox         aCbStacked;
64     svx::OrientationHelper aOrientHlp;
65 
66     FixedText               m_aFtTextDirection;
67     TextDirectionListBox    m_aLbTextDirection;
68 
69     sal_Bool                m_bShowStaggeringControls;
70 
71     sal_Int32           m_nInitialDegrees;
72     bool                m_bHasInitialDegrees;       /// false = DialControl in tristate
73     bool                m_bInitialStacking;
74     bool                m_bHasInitialStacking;      /// false = checkbox in tristate
75     bool                m_bComplexCategories;
76 
77     DECL_LINK ( ToggleShowLabel, void* );
78 
79 public:
80 	SchAxisLabelTabPage( Window* pParent, const SfxItemSet& rInAttrs );
81 	virtual ~SchAxisLabelTabPage();
82 
83 	void	Construct();
84 
85 	static SfxTabPage* Create( Window* pParent, const SfxItemSet& rInAttrs );
86 	virtual sal_Bool FillItemSet( SfxItemSet& rOutAttrs );
87 	virtual void Reset( const SfxItemSet& rInAttrs );
88 
89     void ShowStaggeringControls( sal_Bool bShowStaggeringControls );
90     void SetComplexCategories( bool bComplexCategories );
91 };
92 //.............................................................................
93 } //namespace chart
94 //.............................................................................
95 
96 #endif
97 
98