1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 #ifndef _CHART2_TP_AXISPOSITIONS_HXX
28 #define _CHART2_TP_AXISPOSITIONS_HXX
29 
30 // header for SfxTabPage
31 #include <sfx2/tabdlg.hxx>
32 #include <svtools/fmtfield.hxx>
33 #include <vcl/fixed.hxx>
34 #include <vcl/button.hxx>
35 #include <vcl/field.hxx>
36 #include <vcl/lstbox.hxx>
37 //class SvNumberFormatter;
38 
39 //.............................................................................
40 namespace chart
41 {
42 //.............................................................................
43 
44 class AxisPositionsTabPage : public SfxTabPage
45 {
46 public:
47 	AxisPositionsTabPage( Window* pParent, const SfxItemSet& rInAttrs );
48 
49 	static SfxTabPage* Create( Window* pParent, const SfxItemSet& rInAttrs );
50 	virtual sal_Bool FillItemSet( SfxItemSet& rOutAttrs );
51 	virtual void Reset( const SfxItemSet& rInAttrs );
52     using TabPage::DeactivatePage;
53 	virtual int DeactivatePage( SfxItemSet* pItemSet = NULL );
54 
55 	void SetNumFormatter( SvNumberFormatter* pFormatter );
56 
57     void SetCrossingAxisIsCategoryAxis( bool bCrossingAxisIsCategoryAxis );
58     void SetCategories( const ::com::sun::star::uno::Sequence< rtl::OUString >& rCategories );
59 
60     void SupportAxisPositioning( bool bSupportAxisPositioning );
61 
62 private: //methods:
63     DECL_LINK( CrossesAtSelectHdl, void* );
64     DECL_LINK( PlaceLabelsSelectHdl, void* );
65 
66 private: //member:
67     FixedLine           m_aFL_AxisLine;
68     FixedText           m_aFT_CrossesAt;
69     ListBox             m_aLB_CrossesAt;
70     FormattedField      m_aED_CrossesAt;
71     ComboBox            m_aED_CrossesAtCategory;
72     CheckBox			m_aCB_AxisBetweenCategories;
73 
74     FixedLine       m_aFL_Labels;
75     FixedText       m_aFT_PlaceLabels;
76     ListBox         m_aLB_PlaceLabels;
77     FixedText       m_aFT_LabelDistance;
78     FormattedField  m_aED_LabelDistance;
79 
80     FixedLine   m_aFL_Ticks;
81 
82     FixedText   m_aFT_Major;
83     CheckBox    m_aCB_TicksInner;
84 	CheckBox    m_aCB_TicksOuter;
85 
86     FixedText   m_aFT_Minor;
87 	CheckBox    m_aCB_MinorInner;
88 	CheckBox    m_aCB_MinorOuter;
89 
90     FixedLine   m_aFL_Vertical;
91     FixedText   m_aFT_PlaceTicks;
92     ListBox     m_aLB_PlaceTicks;
93 
94     FixedLine   m_aFL_Grids;
95     CheckBox    m_aCB_MajorGrid;
96     PushButton  m_aPB_MajorGrid;
97     CheckBox    m_aCB_MinorGrid;
98     PushButton  m_aPB_MinorGrid;
99 
100 	SvNumberFormatter*	m_pNumFormatter;
101 
102     bool    m_bCrossingAxisIsCategoryAxis;
103     ::com::sun::star::uno::Sequence< rtl::OUString > m_aCategories;
104 
105     bool    m_bSupportAxisPositioning;
106 };
107 
108 //.............................................................................
109 } //namespace chart
110 //.............................................................................
111 
112 #endif
113