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 28 #ifndef _SD_PUBDLG_HXX 29 #define _SD_PUBDLG_HXX 30 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" 51 52 #include <boost/scoped_ptr.hpp> 53 54 #define NOOFPAGES 6 55 56 enum HtmlPublishMode { PUBLISH_HTML, PUBLISH_FRAMES, PUBLISH_WEBCAST, PUBLISH_KIOSK }; 57 58 class SfxItemSet; 59 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; 71 72 // ********************************************************************* 73 // Html-Export Autopilot 74 // ********************************************************************* 75 76 class SdPublishingDlg : public ModalDialog 77 { 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; 87 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; 99 100 FixedLine* pPage2_Titel_Html; 101 CheckBox* pPage2_Content; 102 CheckBox* pPage2_Notes; 103 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; 120 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 138 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; 151 152 // page 5 controls 153 154 FixedBitmap* pPage5_Bmp; 155 FixedLine* pPage5_Titel; 156 CheckBox* pPage5_TextOnly; 157 ValueSet* pPage5_Buttons; 158 159 // page 6 controls 160 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; 172 173 boost::scoped_ptr< ButtonSet > mpButtonSet; 174 175 // CheckBox* pPage6_Sound; 176 177 // standard controls 178 FixedLine aBottomLine; 179 HelpButton aHelpButton; 180 CancelButton aCancelButton; 181 PushButton aLastPageButton; 182 PushButton aNextPageButton; 183 OKButton aFinishButton; 184 185 Assistent aAssistentFunc; 186 187 sal_Bool m_bImpress; 188 sal_Bool m_bButtonsDirty; 189 190 void SetDefaults(); 191 void CreatePages(); 192 void RemovePages(); 193 194 Color m_aBackColor, m_aTextColor, m_aLinkColor; 195 Color m_aVLinkColor, m_aALinkColor; 196 197 void ChangePage(); 198 void UpdatePage(); 199 200 List* m_pDesignList; 201 sal_Bool m_bDesignListDirty; 202 SdPublishingDesign* m_pDesign; 203 sal_Bool Load(); 204 sal_Bool Save(); 205 206 void GetDesign( SdPublishingDesign* pDesign ); 207 void SetDesign( SdPublishingDesign* pDesign ); 208 209 void LoadPreviewButtons(); 210 211 DECL_LINK( FinishHdl, OKButton * ); 212 DECL_LINK( NextPageHdl, PushButton * ); 213 DECL_LINK( LastPageHdl, PushButton * ); 214 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* ); 226 227 public: 228 229 SdPublishingDlg(Window* pWindow, DocumentType eDocType); 230 ~SdPublishingDlg(); 231 232 void GetParameterSequence( ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rParams ); 233 }; 234 235 #endif // _SD_PUBDLG_HXX 236