1*c45d927aSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*c45d927aSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*c45d927aSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*c45d927aSAndrew Rist * distributed with this work for additional information 6*c45d927aSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*c45d927aSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*c45d927aSAndrew Rist * "License"); you may not use this file except in compliance 9*c45d927aSAndrew Rist * with the License. You may obtain a copy of the License at 10*c45d927aSAndrew Rist * 11*c45d927aSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*c45d927aSAndrew Rist * 13*c45d927aSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*c45d927aSAndrew Rist * software distributed under the License is distributed on an 15*c45d927aSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*c45d927aSAndrew Rist * KIND, either express or implied. See the License for the 17*c45d927aSAndrew Rist * specific language governing permissions and limitations 18*c45d927aSAndrew Rist * under the License. 19*c45d927aSAndrew Rist * 20*c45d927aSAndrew Rist *************************************************************/ 21*c45d927aSAndrew Rist 22*c45d927aSAndrew Rist 23cdf0e10cSrcweir #ifndef _SD_ABSTDLG_HXX 24cdf0e10cSrcweir #define _SD_ABSTDLG_HXX 25cdf0e10cSrcweir 26cdf0e10cSrcweir // include --------------------------------------------------------------- 27cdf0e10cSrcweir 28cdf0e10cSrcweir #include <tools/solar.h> 29cdf0e10cSrcweir #include <tools/string.hxx> 30cdf0e10cSrcweir #include <sfx2/sfxdlg.hxx> 31cdf0e10cSrcweir #include <com/sun/star/uno/Sequence.h> 32cdf0e10cSrcweir #include <com/sun/star/beans/XPropertyAccess.hpp> 33cdf0e10cSrcweir #include "prlayout.hxx" 34cdf0e10cSrcweir #include "sdenumdef.hxx" 35cdf0e10cSrcweir #include "pres.hxx" 36cdf0e10cSrcweir 37cdf0e10cSrcweir namespace sd { 38cdf0e10cSrcweir class View; 39cdf0e10cSrcweir class DrawDocShell; 40cdf0e10cSrcweir class ViewShell; 41cdf0e10cSrcweir class DrawView; 42cdf0e10cSrcweir } 43cdf0e10cSrcweir 44cdf0e10cSrcweir class SfxTabPage; 45cdf0e10cSrcweir class SfxViewFrame; 46cdf0e10cSrcweir class SfxBindings; 47cdf0e10cSrcweir class ResId; 48cdf0e10cSrcweir class String; 49cdf0e10cSrcweir class SfxItemPool; 50cdf0e10cSrcweir class SfxObjectShell; 51cdf0e10cSrcweir class SfxObjectShellLock; 52cdf0e10cSrcweir class SvxFieldData; 53cdf0e10cSrcweir class GDIMetaFile; 54cdf0e10cSrcweir class XColorTable; 55cdf0e10cSrcweir class SdDrawDocument; 56cdf0e10cSrcweir class SfxMedium; 57cdf0e10cSrcweir class SdrObject; 58cdf0e10cSrcweir class SfxStyleSheetBasePool; 59cdf0e10cSrcweir class SfxStyleSheetBase; 60cdf0e10cSrcweir class SdrModel; 61cdf0e10cSrcweir class SdrView; 62cdf0e10cSrcweir class Bitmap; 63cdf0e10cSrcweir class List; 64cdf0e10cSrcweir class SdResId; 65cdf0e10cSrcweir class Window; 66cdf0e10cSrcweir class SdPage; 67cdf0e10cSrcweir class TabPage; 68cdf0e10cSrcweir class ViewShell; 69cdf0e10cSrcweir 70cdf0e10cSrcweir class AbstractCopyDlg : public VclAbstractDialog //add for CopyDlg 71cdf0e10cSrcweir { 72cdf0e10cSrcweir public: 73cdf0e10cSrcweir virtual void GetAttr( SfxItemSet& rOutAttrs ) = 0; 74cdf0e10cSrcweir }; 75cdf0e10cSrcweir 76cdf0e10cSrcweir class AbstractSdCustomShowDlg : public VclAbstractDialog //add for SdCustomShowDlg 77cdf0e10cSrcweir { 78cdf0e10cSrcweir public: 79cdf0e10cSrcweir virtual sal_Bool IsModified() const = 0; 80cdf0e10cSrcweir virtual sal_Bool IsCustomShow() const = 0; 81cdf0e10cSrcweir }; 82cdf0e10cSrcweir 83cdf0e10cSrcweir class AbstractAssistentDlg : public VclAbstractDialog //add for AssistentDlg 84cdf0e10cSrcweir { 85cdf0e10cSrcweir public: 86cdf0e10cSrcweir virtual SfxObjectShellLock GetDocument() = 0; 87cdf0e10cSrcweir virtual OutputType GetOutputMedium() const = 0; 88cdf0e10cSrcweir virtual sal_Bool IsSummary() const = 0; 89cdf0e10cSrcweir virtual StartType GetStartType() const = 0; 90cdf0e10cSrcweir virtual String GetDocPath() const = 0; 91cdf0e10cSrcweir virtual sal_Bool GetStartWithFlag() const = 0; 92cdf0e10cSrcweir virtual sal_Bool IsDocEmpty() const = 0; 93cdf0e10cSrcweir virtual String GetPassword() = 0; 94cdf0e10cSrcweir }; 95cdf0e10cSrcweir 96cdf0e10cSrcweir class AbstractSdModifyFieldDlg : public VclAbstractDialog //add for SdModifyFieldDlg 97cdf0e10cSrcweir { 98cdf0e10cSrcweir public: 99cdf0e10cSrcweir virtual SvxFieldData* GetField() = 0; 100cdf0e10cSrcweir virtual SfxItemSet GetItemSet() = 0; 101cdf0e10cSrcweir }; 102cdf0e10cSrcweir 103cdf0e10cSrcweir class AbstractSdSnapLineDlg : public VclAbstractDialog //add for SdSnapLineDlg 104cdf0e10cSrcweir { 105cdf0e10cSrcweir public: 106cdf0e10cSrcweir virtual void GetAttr(SfxItemSet& rOutAttrs) = 0; 107cdf0e10cSrcweir virtual void HideRadioGroup() = 0; 108cdf0e10cSrcweir virtual void HideDeleteBtn() = 0; 109cdf0e10cSrcweir virtual void SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY) = 0; 110cdf0e10cSrcweir //from class ::Window 111cdf0e10cSrcweir virtual void SetText( const XubString& rStr ) = 0; 112cdf0e10cSrcweir }; 113cdf0e10cSrcweir 114cdf0e10cSrcweir class AbstractSdInsertLayerDlg : public VclAbstractDialog //add for SdInsertLayerDlg 115cdf0e10cSrcweir { 116cdf0e10cSrcweir public: 117cdf0e10cSrcweir virtual void GetAttr( SfxItemSet& rOutAttrs ) = 0; 118cdf0e10cSrcweir //from class ::Window 119cdf0e10cSrcweir virtual void SetHelpId( const rtl::OString& rHelpId ) = 0; 120cdf0e10cSrcweir }; 121cdf0e10cSrcweir 122cdf0e10cSrcweir class AbstractSdInsertPasteDlg : public VclAbstractDialog //add for SdInsertPasteDlg 123cdf0e10cSrcweir { 124cdf0e10cSrcweir public: 125cdf0e10cSrcweir virtual sal_Bool IsInsertBefore() const = 0; 126cdf0e10cSrcweir }; 127cdf0e10cSrcweir 128cdf0e10cSrcweir class AbstractSdInsertPagesObjsDlg : public VclAbstractDialog //add for SdInsertPagesObjsDlg 129cdf0e10cSrcweir { 130cdf0e10cSrcweir public: 131cdf0e10cSrcweir virtual ::Window* GetWindow() = 0; //this method is added for return a ::Window type pointer 132cdf0e10cSrcweir virtual List* GetList( sal_uInt16 nType ) = 0; 133cdf0e10cSrcweir virtual sal_Bool IsLink() = 0; 134cdf0e10cSrcweir virtual sal_Bool IsRemoveUnnessesaryMasterPages() const = 0; 135cdf0e10cSrcweir }; 136cdf0e10cSrcweir 137cdf0e10cSrcweir class AbstractMorphDlg : public VclAbstractDialog //add for MorphDlg 138cdf0e10cSrcweir { 139cdf0e10cSrcweir public: 140cdf0e10cSrcweir virtual void SaveSettings() const = 0; 141cdf0e10cSrcweir virtual sal_uInt16 GetFadeSteps() const = 0; 142cdf0e10cSrcweir virtual sal_Bool IsAttributeFade() const = 0; 143cdf0e10cSrcweir virtual sal_Bool IsOrientationFade() const = 0; 144cdf0e10cSrcweir }; 145cdf0e10cSrcweir 146cdf0e10cSrcweir class AbstractSdStartPresDlg : public VclAbstractDialog //add for SdStartPresentationDlg 147cdf0e10cSrcweir { 148cdf0e10cSrcweir public: 149cdf0e10cSrcweir virtual void GetAttr( SfxItemSet& rOutAttrs ) = 0; 150cdf0e10cSrcweir }; 151cdf0e10cSrcweir 152cdf0e10cSrcweir class AbstractSdPresLayoutDlg : public VclAbstractDialog //add for SdPresLayoutDlg 153cdf0e10cSrcweir { 154cdf0e10cSrcweir public: 155cdf0e10cSrcweir virtual void GetAttr(SfxItemSet& rOutAttrs) = 0; 156cdf0e10cSrcweir }; 157cdf0e10cSrcweir 158cdf0e10cSrcweir class AbstractSdVectorizeDlg : public VclAbstractDialog //add for SdVectorizeDlg 159cdf0e10cSrcweir { 160cdf0e10cSrcweir public: 161cdf0e10cSrcweir virtual const GDIMetaFile& GetGDIMetaFile() const = 0; 162cdf0e10cSrcweir }; 163cdf0e10cSrcweir 164cdf0e10cSrcweir class AbstractSdPublishingDlg : public VclAbstractDialog //add for SdPublishingDlg 165cdf0e10cSrcweir { 166cdf0e10cSrcweir public: 167cdf0e10cSrcweir virtual void GetParameterSequence( ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rParams ) = 0; 168cdf0e10cSrcweir }; 169cdf0e10cSrcweir 170cdf0e10cSrcweir class AbstractHeaderFooterDialog : public VclAbstractDialog // add for HeaderFooterDialog 171cdf0e10cSrcweir { 172cdf0e10cSrcweir public: 173cdf0e10cSrcweir virtual void ApplyToAll( TabPage* pPage ) = 0; 174cdf0e10cSrcweir virtual void Apply( TabPage* pPage ) = 0; 175cdf0e10cSrcweir virtual void Cancel( TabPage* pPage ) = 0; 176cdf0e10cSrcweir }; 177cdf0e10cSrcweir 178cdf0e10cSrcweir //--------------------------------------------------------- 179cdf0e10cSrcweir class SdAbstractDialogFactory 180cdf0e10cSrcweir { 181cdf0e10cSrcweir public: 182cdf0e10cSrcweir static SdAbstractDialogFactory* Create(); 183cdf0e10cSrcweir 184cdf0e10cSrcweir virtual VclAbstractDialog* CreateBreakDlg(::Window* pWindow, ::sd::DrawView* pDrView, ::sd::DrawDocShell* pShell, sal_uLong nSumActionCount, sal_uLong nObjCount ) = 0; 185cdf0e10cSrcweir virtual AbstractCopyDlg* CreateCopyDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, XColorTable* pColTab, ::sd::View* pView ) = 0; 186cdf0e10cSrcweir virtual AbstractSdCustomShowDlg* CreateSdCustomShowDlg( ::Window* pWindow, SdDrawDocument& rDrawDoc ) = 0; 187cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdTabCharDialog( ::Window* pParent, const SfxItemSet* pAttr, SfxObjectShell* pDocShell ) = 0; 188cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdTabPageDialog( ::Window* pParent, const SfxItemSet* pAttr, SfxObjectShell* pDocShell, sal_Bool bAreaPage = sal_True ) = 0; 189cdf0e10cSrcweir virtual AbstractAssistentDlg* CreateAssistentDlg( ::Window* pParent, sal_Bool bAutoPilot) = 0; 190cdf0e10cSrcweir virtual AbstractSdModifyFieldDlg* CreateSdModifyFieldDlg( ::Window* pWindow, const SvxFieldData* pInField, const SfxItemSet& rSet ) = 0; 191cdf0e10cSrcweir virtual AbstractSdSnapLineDlg* CreateSdSnapLineDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, ::sd::View* pView) = 0; 192cdf0e10cSrcweir virtual AbstractSdInsertLayerDlg* CreateSdInsertLayerDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, bool bDeletable, String aStr ) = 0; 193cdf0e10cSrcweir virtual AbstractSdInsertPasteDlg* CreateSdInsertPasteDlg( ::Window* pWindow ) = 0; 194cdf0e10cSrcweir virtual AbstractSdInsertPagesObjsDlg* CreateSdInsertPagesObjsDlg( ::Window* pParent, const SdDrawDocument* pDoc, SfxMedium* pSfxMedium, const String& rFileName ) = 0; 195cdf0e10cSrcweir virtual AbstractMorphDlg* CreateMorphDlg( ::Window* pParent, const SdrObject* pObj1, const SdrObject* pObj2) = 0; 196cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdOutlineBulletTabDlg ( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView = NULL ) = 0; 197cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdParagraphTabDlg ( ::Window* pParent, const SfxItemSet* pAttr ) = 0; 198cdf0e10cSrcweir virtual AbstractSdStartPresDlg* CreateSdStartPresentationDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, List& rPageNames, List* pCSList ) = 0; 199cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdPresLayoutTemplateDlg( SfxObjectShell* pDocSh, ::Window* pParent, SdResId DlgId, SfxStyleSheetBase& rStyleBase, PresentationObjects ePO, SfxStyleSheetBasePool* pSSPool ) = 0; 200cdf0e10cSrcweir virtual AbstractSdPresLayoutDlg* CreateSdPresLayoutDlg( ::sd::DrawDocShell* pDocShell, ::sd::ViewShell* pViewShell, ::Window* pWindow, const SfxItemSet& rInAttrs) = 0; 201cdf0e10cSrcweir virtual SfxAbstractTabDialog* CreateSdTabTemplateDlg( ::Window* pParent, const SfxObjectShell* pDocShell, SfxStyleSheetBase& rStyleBase, SdrModel* pModel, SdrView* pView ) = 0; 202cdf0e10cSrcweir virtual SfxAbstractDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) = 0; 203cdf0e10cSrcweir virtual AbstractSdVectorizeDlg* CreateSdVectorizeDlg( ::Window* pParent, const Bitmap& rBmp, ::sd::DrawDocShell* pDocShell ) = 0; 204cdf0e10cSrcweir virtual AbstractSdPublishingDlg* CreateSdPublishingDlg( ::Window* pWindow, DocumentType eDocType) = 0; 205cdf0e10cSrcweir 206cdf0e10cSrcweir virtual VclAbstractDialog* CreateMasterLayoutDialog( ::Window* pParent, 207cdf0e10cSrcweir SdDrawDocument* pDoc, 208cdf0e10cSrcweir SdPage* ) = 0; // add for MasterLayoutDialog 209cdf0e10cSrcweir 210cdf0e10cSrcweir virtual AbstractHeaderFooterDialog* CreateHeaderFooterDialog( ViewShell* pViewShell, 211cdf0e10cSrcweir ::Window* pParent, 212cdf0e10cSrcweir SdDrawDocument* pDoc, 213cdf0e10cSrcweir SdPage* pCurrentPage ) = 0; // add for HeaderFooterDialog 214cdf0e10cSrcweir 215cdf0e10cSrcweir virtual CreateTabPage GetSdOptionsContentsTabPageCreatorFunc() = 0; 216cdf0e10cSrcweir virtual CreateTabPage GetSdPrintOptionsTabPageCreatorFunc() = 0; 217cdf0e10cSrcweir virtual CreateTabPage GetSdOptionsMiscTabPageCreatorFunc() = 0; 218cdf0e10cSrcweir virtual CreateTabPage GetSdOptionsSnapTabPageCreatorFunc() = 0; 219cdf0e10cSrcweir }; 220cdf0e10cSrcweir #endif 221cdf0e10cSrcweir 222