CWS-TOOLING: integrate CWS os150
[LibreOffice.git] / sd / source / ui / inc / pubdlg.hxx
blob2f14066021ed2ff02d1241aef36e192341b99bf0
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
28 #ifndef _SD_PUBDLG_HXX
29 #define _SD_PUBDLG_HXX
31 #include <com/sun/star/beans/PropertyValue.hpp>
32 #include <vcl/fixed.hxx>
33 #ifndef _GROUP_HXX //autogen
34 #include <vcl/group.hxx>
35 #endif
36 #ifndef _BUTTON_HXX //autogen
37 #include <vcl/button.hxx>
38 #endif
39 #ifndef _BUTTON_HXX //autogen
40 #include <vcl/button.hxx>
41 #endif
42 #ifndef _FIELD_HXX //autogen
43 #include <vcl/field.hxx>
44 #endif
45 #ifndef _DIALOG_HXX //autogen
46 #include <vcl/dialog.hxx>
47 #endif
48 #include "resltn.hxx" // enum PublishingResolution
49 #include "pres.hxx"
50 #include "assclass.hxx"
52 #include <boost/scoped_ptr.hpp>
54 #define NOOFPAGES 6
56 enum HtmlPublishMode { PUBLISH_HTML, PUBLISH_FRAMES, PUBLISH_WEBCAST, PUBLISH_KIOSK };
58 class SfxItemSet;
60 class FixedText;
61 class RadioButton;
62 class ListBox;
63 class ComboBox;
64 class Edit;
65 class MultiLineEdit;
66 class ValueSet;
67 class SdHtmlAttrPreview;
68 class List;
69 class SdPublishingDesign;
70 class ButtonSet;
72 // *********************************************************************
73 // Html-Export Autopilot
74 // *********************************************************************
76 class SdPublishingDlg : public ModalDialog
78 private:
79 // page 1 controls
80 FixedBitmap* pPage1_Bmp;
81 FixedLine* pPage1_Titel;
82 RadioButton* pPage1_NewDesign;
83 RadioButton* pPage1_OldDesign;
84 ListBox* pPage1_Designs;
85 PushButton* pPage1_DelDesign;
86 FixedText* pPage1_Desc;
88 // page 2 controls
89 FixedBitmap* pPage2_Bmp;
90 FixedLine* pPage2_Titel;
91 RadioButton* pPage2_Standard;
92 RadioButton* pPage2_Frames;
93 RadioButton* pPage2_Kiosk;
94 RadioButton* pPage2_WebCast;
95 FixedBitmap* pPage2_Standard_FB;
96 FixedBitmap* pPage2_Frames_FB;
97 FixedBitmap* pPage2_Kiosk_FB;
98 FixedBitmap* pPage2_WebCast_FB;
100 FixedLine* pPage2_Titel_Html;
101 CheckBox* pPage2_Content;
102 CheckBox* pPage2_Notes;
104 FixedLine* pPage2_Titel_WebCast;
105 RadioButton* pPage2_ASP;
106 RadioButton* pPage2_PERL;
107 FixedText* pPage2_URL_txt;
108 Edit* pPage2_URL;
109 FixedText* pPage2_CGI_txt;
110 Edit* pPage2_CGI;
111 FixedText* pPage2_Index_txt;
112 Edit* pPage2_Index;
113 FixedLine* pPage2_Vert;
114 FixedLine* pPage2_Titel_Kiosk;
115 RadioButton* pPage2_ChgDefault;
116 RadioButton* pPage2_ChgAuto;
117 FixedText* pPage2_Duration_txt;
118 TimeField* pPage2_Duration;
119 CheckBox* pPage2_Endless;
121 // page 3 controls
122 FixedBitmap* pPage3_Bmp;
123 FixedLine* pPage3_Titel1;
124 RadioButton* pPage3_Png;
125 RadioButton* pPage3_Gif;
126 RadioButton* pPage3_Jpg;
127 FixedText* pPage3_Quality_txt;
128 ComboBox* pPage3_Quality;
129 FixedLine* pPage3_Vert;
130 FixedLine* pPage3_Titel2;
131 RadioButton* pPage3_Resolution_1;
132 RadioButton* pPage3_Resolution_2;
133 RadioButton* pPage3_Resolution_3;
134 FixedLine* pPage3_Titel3;
135 CheckBox* pPage3_SldSound;
136 CheckBox* pPage3_HiddenSlides;
137 // page 4 controls
139 FixedBitmap* pPage4_Bmp;
140 FixedLine* pPage4_Titel1;
141 FixedText* pPage4_Author_txt;
142 Edit* pPage4_Author;
143 FixedText* pPage4_Email_txt;
144 Edit* pPage4_Email;
145 FixedText* pPage4_WWW_txt;
146 Edit* pPage4_WWW;
147 FixedText* pPage4_Titel2;
148 MultiLineEdit* pPage4_Misc;
149 CheckBox* pPage4_Download;
150 //-/ CheckBox* pPage4_Created;
152 // page 5 controls
154 FixedBitmap* pPage5_Bmp;
155 FixedLine* pPage5_Titel;
156 CheckBox* pPage5_TextOnly;
157 ValueSet* pPage5_Buttons;
159 // page 6 controls
161 FixedBitmap* pPage6_Bmp;
162 FixedLine* pPage6_Titel;
163 RadioButton* pPage6_Default;
164 RadioButton* pPage6_User;
165 PushButton* pPage6_Back;
166 PushButton* pPage6_Text;
167 PushButton* pPage6_Link;
168 PushButton* pPage6_VLink;
169 PushButton* pPage6_ALink;
170 RadioButton* pPage6_DocColors;
171 SdHtmlAttrPreview* pPage6_Preview;
173 boost::scoped_ptr< ButtonSet > mpButtonSet;
175 // CheckBox* pPage6_Sound;
177 // standard controls
178 FixedLine aBottomLine;
179 HelpButton aHelpButton;
180 CancelButton aCancelButton;
181 PushButton aLastPageButton;
182 PushButton aNextPageButton;
183 OKButton aFinishButton;
185 Assistent aAssistentFunc;
187 sal_Bool m_bImpress;
188 sal_Bool m_bButtonsDirty;
190 void SetDefaults();
191 void CreatePages();
192 void RemovePages();
194 Color m_aBackColor, m_aTextColor, m_aLinkColor;
195 Color m_aVLinkColor, m_aALinkColor;
197 void ChangePage();
198 void UpdatePage();
200 List* m_pDesignList;
201 sal_Bool m_bDesignListDirty;
202 SdPublishingDesign* m_pDesign;
203 sal_Bool Load();
204 sal_Bool Save();
206 void GetDesign( SdPublishingDesign* pDesign );
207 void SetDesign( SdPublishingDesign* pDesign );
209 void LoadPreviewButtons();
211 DECL_LINK( FinishHdl, OKButton * );
212 DECL_LINK( NextPageHdl, PushButton * );
213 DECL_LINK( LastPageHdl, PushButton * );
215 DECL_LINK( DesignHdl, RadioButton * );
216 DECL_LINK( DesignSelectHdl, ListBox * );
217 DECL_LINK( DesignDeleteHdl, PushButton * );
218 DECL_LINK( BaseHdl, RadioButton * );
219 DECL_LINK( ContentHdl, RadioButton * );
220 DECL_LINK( GfxFormatHdl, RadioButton * );
221 DECL_LINK( ResolutionHdl, RadioButton * );
222 DECL_LINK( ButtonsHdl, ValueSet* );
223 DECL_LINK( ColorHdl, PushButton * );
224 DECL_LINK( WebServerHdl, RadioButton * );
225 DECL_LINK( SlideChgHdl, RadioButton* );
227 public:
229 SdPublishingDlg(Window* pWindow, DocumentType eDocType);
230 ~SdPublishingDlg();
232 void GetParameterSequence( ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rParams );
235 #endif // _SD_PUBDLG_HXX