/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #ifndef INCLUDED_SD_SOURCE_UI_INC_PUBDLG_HXX #define INCLUDED_SD_SOURCE_UI_INC_PUBDLG_HXX #include #include #include #include #include #include #include #include #include #include "assclass.hxx" #include #include class FixedText; class RadioButton; class ListBox; class ComboBox; class Edit; class MultiLineEdit; class ValueSet; class SdHtmlAttrPreview; class SdPublishingDesign; class ButtonSet; // ********************************************************************* // Html-Export Autopilot // ********************************************************************* class SdPublishingDlg : public ModalDialog { private: // page 1 controls VclPtr pPage1; VclPtr pPage1_Titel; VclPtr pPage1_NewDesign; VclPtr pPage1_OldDesign; VclPtr pPage1_Designs; VclPtr pPage1_DelDesign; VclPtr pPage1_Desc; // page 2 controls VclPtr pPage2; VclPtr pPage2Frame2; VclPtr pPage2Frame3; VclPtr pPage2Frame4; VclPtr pPage2_Titel; VclPtr pPage2_Standard; VclPtr pPage2_Frames; VclPtr pPage2_SingleDocument; VclPtr pPage2_Kiosk; VclPtr pPage2_WebCast; VclPtr pPage2_Standard_FB; VclPtr pPage2_Frames_FB; VclPtr pPage2_Kiosk_FB; VclPtr pPage2_WebCast_FB; VclPtr pPage2_Titel_Html; VclPtr pPage2_Content; VclPtr pPage2_Notes; VclPtr pPage2_Titel_WebCast; VclPtr pPage2_ASP; VclPtr pPage2_PERL; VclPtr pPage2_URL_txt; VclPtr pPage2_URL; VclPtr pPage2_CGI_txt; VclPtr pPage2_CGI; VclPtr pPage2_Index_txt; VclPtr pPage2_Index; VclPtr pPage2_Titel_Kiosk; VclPtr pPage2_ChgDefault; VclPtr pPage2_ChgAuto; VclPtr pPage2_Duration_txt; VclPtr pPage2_Duration; VclPtr pPage2_Endless; // page 3 controls VclPtr pPage3; VclPtr pPage3_Titel1; VclPtr pPage3_Png; VclPtr pPage3_Gif; VclPtr pPage3_Jpg; VclPtr pPage3_Quality_txt; VclPtr pPage3_Quality; VclPtr pPage3_Titel2; VclPtr pPage3_Resolution_1; VclPtr pPage3_Resolution_2; VclPtr pPage3_Resolution_3; VclPtr pPage3_Titel3; VclPtr pPage3_SldSound; VclPtr pPage3_HiddenSlides; // page 4 controls VclPtr pPage4; VclPtr pPage4_Titel1; VclPtr pPage4_Author_txt; VclPtr pPage4_Author; VclPtr pPage4_Email_txt; VclPtr pPage4_Email; VclPtr pPage4_WWW_txt; VclPtr pPage4_WWW; VclPtr pPage4_Titel2; VclPtr pPage4_Misc; VclPtr pPage4_Download; // page 5 controls VclPtr pPage5; VclPtr pPage5_Titel; VclPtr pPage5_TextOnly; VclPtr pPage5_Buttons; // page 6 controls VclPtr pPage6; VclPtr pPage6_Titel; VclPtr pPage6_Default; VclPtr pPage6_User; VclPtr pPage6_Back; VclPtr pPage6_Text; VclPtr pPage6_Link; VclPtr pPage6_VLink; VclPtr pPage6_ALink; VclPtr pPage6_DocColors; VclPtr pPage6_Preview; std::unique_ptr< ButtonSet > mpButtonSet; // standard controls VclPtr pLastPageButton; VclPtr pNextPageButton; VclPtr pFinishButton; Assistent aAssistentFunc; bool m_bImpress; bool m_bButtonsDirty; void SetDefaults(); void CreatePages(); Color m_aBackColor, m_aTextColor, m_aLinkColor; Color m_aVLinkColor, m_aALinkColor; void ChangePage(); void UpdatePage(); std::vector m_aDesignList; bool m_bDesignListDirty; SdPublishingDesign* m_pDesign; void Load(); bool Save(); void GetDesign( SdPublishingDesign* pDesign ); void SetDesign( SdPublishingDesign const * pDesign ); void LoadPreviewButtons(); DECL_LINK( FinishHdl, Button*, void ); DECL_LINK( NextPageHdl, Button*, void ); DECL_LINK( LastPageHdl, Button*, void ); DECL_LINK( DesignHdl, Button*, void ); DECL_LINK( DesignSelectHdl, ListBox&, void ); DECL_LINK( DesignDeleteHdl, Button*, void ); DECL_LINK( BaseHdl, Button*, void ); DECL_LINK( ContentHdl, Button*, void ); DECL_LINK( GfxFormatHdl, Button *, void ); DECL_LINK( ResolutionHdl, Button*, void ); DECL_LINK( ButtonsHdl, ValueSet*, void ); DECL_LINK( ColorHdl, Button*, void ); DECL_LINK( WebServerHdl, Button *, void ); DECL_LINK( SlideChgHdl, Button*, void ); public: SdPublishingDlg(vcl::Window* pWindow, DocumentType eDocType); virtual ~SdPublishingDlg() override; virtual void dispose() override; void GetParameterSequence( css::uno::Sequence< css::beans::PropertyValue >& rParams ); // Screenshot interface virtual std::vector getAllPageUIXMLDescriptions() const override; virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription) override; }; #endif // INCLUDED_SD_SOURCE_UI_INC_PUBDLG_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */