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