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_DLG_VIEW3D_DIAGRAM_HXX
28 #define _CHART2_DLG_VIEW3D_DIAGRAM_HXX
29 
30 #include <com/sun/star/drawing/ShadeMode.hpp>
31 #include <com/sun/star/frame/XModel.hpp>
32 
33 // header for class TabDialog
34 #include <vcl/tabdlg.hxx>
35 // header for class TabControl
36 #include <vcl/tabctrl.hxx>
37 // header for class OKButton
38 #ifndef _SV_BUTTON_HXX
39 #include <vcl/button.hxx>
40 #endif
41 // header for class XColorTable
42 #include <svx/xtable.hxx>
43 
44 #include "ControllerLockGuard.hxx"
45 
46 //.............................................................................
47 namespace chart
48 {
49 //.............................................................................
50 class ThreeD_SceneGeometry_TabPage;
51 class ThreeD_SceneAppearance_TabPage;
52 class ThreeD_SceneIllumination_TabPage;
53 
54 class View3DDialog : public TabDialog
55 {
56 public:
57     View3DDialog( Window* pWindow,
58                   const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > & xChartModel,
59                   XColorTable* pColorTable=0 );
60 	~View3DDialog();
61 
62     // from Dialog (base of TabDialog)
63     virtual short Execute();
64 
65 private:
66     TabControl      m_aTabControl;
67     OKButton		m_aBtnOK;
68 	CancelButton	m_aBtnCancel;
69 	HelpButton		m_aBtnHelp;
70 
71     ThreeD_SceneGeometry_TabPage*       m_pGeometry;
72     ThreeD_SceneAppearance_TabPage*     m_pAppearance;
73     ThreeD_SceneIllumination_TabPage*   m_pIllumination;
74 
75     ControllerLockHelper                m_aControllerLocker;
76 
77     static sal_uInt16 m_nLastPageId;
78 };
79 
80 //.............................................................................
81 } //namespace chart
82 //.............................................................................
83 
84 #endif
85