1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef _SD_PUBDLG_HXX
21 #define _SD_PUBDLG_HXX
23 #include <com/sun/star/beans/PropertyValue.hpp>
24 #include <vcl/fixed.hxx>
25 #include <vcl/group.hxx>
26 #include <vcl/button.hxx>
27 #include <vcl/field.hxx>
28 #include <vcl/dialog.hxx>
29 #include "resltn.hxx" // enum PublishingResolution
31 #include "assclass.hxx"
33 #include <boost/scoped_ptr.hpp>
34 #include <boost/ptr_container/ptr_vector.hpp>
43 class SdHtmlAttrPreview
;
44 class SdPublishingDesign
;
47 // *********************************************************************
48 // Html-Export Autopilot
49 // *********************************************************************
51 class SdPublishingDlg
: public ModalDialog
55 FixedLine
* pPage1_Titel
;
56 RadioButton
* pPage1_NewDesign
;
57 RadioButton
* pPage1_OldDesign
;
58 ListBox
* pPage1_Designs
;
59 PushButton
* pPage1_DelDesign
;
60 FixedText
* pPage1_Desc
;
63 FixedLine
* pPage2_Titel
;
64 RadioButton
* pPage2_Standard
;
65 RadioButton
* pPage2_Frames
;
66 RadioButton
* pPage2_Kiosk
;
67 RadioButton
* pPage2_WebCast
;
68 FixedBitmap
* pPage2_Standard_FB
;
69 FixedBitmap
* pPage2_Frames_FB
;
70 FixedBitmap
* pPage2_Kiosk_FB
;
71 FixedBitmap
* pPage2_WebCast_FB
;
73 FixedLine
* pPage2_Titel_Html
;
74 CheckBox
* pPage2_Content
;
75 CheckBox
* pPage2_Notes
;
77 FixedLine
* pPage2_Titel_WebCast
;
78 RadioButton
* pPage2_ASP
;
79 RadioButton
* pPage2_PERL
;
80 FixedText
* pPage2_URL_txt
;
82 FixedText
* pPage2_CGI_txt
;
84 FixedText
* pPage2_Index_txt
;
86 FixedLine
* pPage2_Vert
;
87 FixedLine
* pPage2_Titel_Kiosk
;
88 RadioButton
* pPage2_ChgDefault
;
89 RadioButton
* pPage2_ChgAuto
;
90 FixedText
* pPage2_Duration_txt
;
91 TimeField
* pPage2_Duration
;
92 CheckBox
* pPage2_Endless
;
95 FixedLine
* pPage3_Titel1
;
96 RadioButton
* pPage3_Png
;
97 RadioButton
* pPage3_Gif
;
98 RadioButton
* pPage3_Jpg
;
99 FixedText
* pPage3_Quality_txt
;
100 ComboBox
* pPage3_Quality
;
101 FixedLine
* pPage3_Vert
;
102 FixedLine
* pPage3_Titel2
;
103 RadioButton
* pPage3_Resolution_1
;
104 RadioButton
* pPage3_Resolution_2
;
105 RadioButton
* pPage3_Resolution_3
;
106 FixedLine
* pPage3_Titel3
;
107 CheckBox
* pPage3_SldSound
;
108 CheckBox
* pPage3_HiddenSlides
;
111 FixedLine
* pPage4_Titel1
;
112 FixedText
* pPage4_Author_txt
;
114 FixedText
* pPage4_Email_txt
;
116 FixedText
* pPage4_WWW_txt
;
118 FixedText
* pPage4_Titel2
;
119 MultiLineEdit
* pPage4_Misc
;
120 CheckBox
* pPage4_Download
;
124 FixedLine
* pPage5_Titel
;
125 CheckBox
* pPage5_TextOnly
;
126 ValueSet
* pPage5_Buttons
;
130 FixedLine
* pPage6_Titel
;
131 RadioButton
* pPage6_Default
;
132 RadioButton
* pPage6_User
;
133 PushButton
* pPage6_Back
;
134 PushButton
* pPage6_Text
;
135 PushButton
* pPage6_Link
;
136 PushButton
* pPage6_VLink
;
137 PushButton
* pPage6_ALink
;
138 RadioButton
* pPage6_DocColors
;
139 SdHtmlAttrPreview
* pPage6_Preview
;
141 boost::scoped_ptr
< ButtonSet
> mpButtonSet
;
144 FixedLine aBottomLine
;
145 HelpButton aHelpButton
;
146 CancelButton aCancelButton
;
147 PushButton aLastPageButton
;
148 PushButton aNextPageButton
;
149 OKButton aFinishButton
;
151 Assistent aAssistentFunc
;
154 sal_Bool m_bButtonsDirty
;
160 Color m_aBackColor
, m_aTextColor
, m_aLinkColor
;
161 Color m_aVLinkColor
, m_aALinkColor
;
166 boost::ptr_vector
<SdPublishingDesign
> m_aDesignList
;
167 sal_Bool m_bDesignListDirty
;
168 SdPublishingDesign
* m_pDesign
;
172 void GetDesign( SdPublishingDesign
* pDesign
);
173 void SetDesign( SdPublishingDesign
* pDesign
);
175 void LoadPreviewButtons();
177 DECL_LINK( FinishHdl
, void * );
178 DECL_LINK( NextPageHdl
, void * );
179 DECL_LINK( LastPageHdl
, void * );
181 DECL_LINK( DesignHdl
, RadioButton
* );
182 DECL_LINK( DesignSelectHdl
, void * );
183 DECL_LINK( DesignDeleteHdl
, void * );
184 DECL_LINK( BaseHdl
, void * );
185 DECL_LINK( ContentHdl
, void * );
186 DECL_LINK( GfxFormatHdl
, RadioButton
* );
187 DECL_LINK( ResolutionHdl
, RadioButton
* );
188 DECL_LINK( ButtonsHdl
, void * );
189 DECL_LINK( ColorHdl
, PushButton
* );
190 DECL_LINK( WebServerHdl
, RadioButton
* );
191 DECL_LINK( SlideChgHdl
, void * );
195 SdPublishingDlg(Window
* pWindow
, DocumentType eDocType
);
198 void GetParameterSequence( ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& rParams
);
201 #endif // _SD_PUBDLG_HXX
203 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */