| /************************************************************** |
| * |
| * 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 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef _SD_DLGFACT_HXX |
| #define _SD_DLGFACT_HXX |
| |
| // include --------------------------------------------------------------- |
| #include "sdabstdlg.hxx" |
| #include <sfx2/basedlgs.hxx> |
| |
| #define DECL_ABSTDLG_BASE(Class,DialogClass) \ |
| DialogClass* pDlg; \ |
| public: \ |
| Class( DialogClass* p) \ |
| : pDlg(p) \ |
| {} \ |
| virtual ~Class(); \ |
| virtual short Execute() ; |
| |
| #define IMPL_ABSTDLG_BASE(Class) \ |
| Class::~Class() \ |
| { \ |
| delete pDlg; \ |
| } \ |
| short Class::Execute() \ |
| { \ |
| return pDlg->Execute(); \ |
| } |
| |
| namespace sd { |
| class MorphDlg; |
| class CopyDlg; |
| class BreakDlg; |
| class OutlineBulletDlg; |
| class HeaderFooterDialog; |
| } |
| // add for BreakDlg |
| class Dialog; |
| class VclAbstractDialog_Impl : public VclAbstractDialog |
| { |
| DECL_ABSTDLG_BASE(VclAbstractDialog_Impl,Dialog) |
| }; |
| |
| // add for CopyDlg |
| |
| class AbstractCopyDlg_Impl : public AbstractCopyDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractCopyDlg_Impl,::sd::CopyDlg) |
| virtual void GetAttr( SfxItemSet& rOutAttrs ); |
| }; |
| |
| // add for SdCustomShowDlg |
| class SdCustomShowDlg; |
| class AbstractSdCustomShowDlg_Impl : public AbstractSdCustomShowDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdCustomShowDlg_Impl,SdCustomShowDlg) |
| virtual sal_Bool IsModified() const ; |
| virtual sal_Bool IsCustomShow() const ; |
| }; |
| |
| //add for SdCharDlg begin |
| class SfxTabDialog; |
| class AbstractTabDialog_Impl : public SfxAbstractTabDialog |
| { |
| DECL_ABSTDLG_BASE( AbstractTabDialog_Impl,SfxTabDialog ) |
| virtual void SetCurPageId( sal_uInt16 nId ); |
| virtual const SfxItemSet* GetOutputItemSet() const; |
| virtual const sal_uInt16* GetInputRanges( const SfxItemPool& pItem ); |
| virtual void SetInputSet( const SfxItemSet* pInSet ); |
| //From class Window. |
| virtual void SetText( const XubString& rStr ); |
| virtual String GetText() const; |
| }; |
| //add for SdCharDlg end |
| |
| |
| //add for OutlineBulletDlg begin |
| class SfxTabDialog; |
| class AbstractBulletDialog_Impl : public SfxAbstractTabDialog |
| { |
| DECL_ABSTDLG_BASE( AbstractBulletDialog_Impl,SfxTabDialog ) |
| virtual void SetCurPageId( sal_uInt16 nId ); |
| virtual const SfxItemSet* GetOutputItemSet() const; |
| virtual const sal_uInt16* GetInputRanges( const SfxItemPool& pItem ); |
| virtual void SetInputSet( const SfxItemSet* pInSet ); |
| //From class Window. |
| virtual void SetText( const XubString& rStr ); |
| virtual String GetText() const; |
| }; |
| //add for OutlineBulletDlg end |
| |
| class SdPresLayoutTemplateDlg; |
| class SdPresLayoutTemplateDlg_Impl : public SfxAbstractTabDialog |
| { |
| DECL_ABSTDLG_BASE( SdPresLayoutTemplateDlg_Impl,SdPresLayoutTemplateDlg ) |
| virtual void SetCurPageId( sal_uInt16 nId ); |
| virtual const SfxItemSet* GetOutputItemSet() const; |
| virtual const sal_uInt16* GetInputRanges( const SfxItemPool& pItem ); |
| virtual void SetInputSet( const SfxItemSet* pInSet ); |
| //From class Window. |
| virtual void SetText( const XubString& rStr ); |
| virtual String GetText() const; |
| }; |
| |
| // add for AssistentDlg |
| class AssistentDlg; |
| class AbstractAssistentDlg_Impl : public AbstractAssistentDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractAssistentDlg_Impl,AssistentDlg) |
| virtual SfxObjectShellLock GetDocument(); |
| virtual OutputType GetOutputMedium() const; |
| virtual sal_Bool IsSummary() const; |
| virtual StartType GetStartType() const; |
| virtual String GetDocPath() const; |
| virtual sal_Bool GetStartWithFlag() const; |
| virtual sal_Bool IsDocEmpty() const; |
| virtual String GetPassword(); |
| }; |
| |
| // add for SdModifyFieldDlg |
| class SdModifyFieldDlg; |
| class AbstractSdModifyFieldDlg_Impl : public AbstractSdModifyFieldDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdModifyFieldDlg_Impl,SdModifyFieldDlg) |
| virtual SvxFieldData* GetField(); |
| virtual SfxItemSet GetItemSet(); |
| }; |
| |
| // add for SdSnapLineDlg |
| class SdSnapLineDlg; |
| class AbstractSdSnapLineDlg_Impl : public AbstractSdSnapLineDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdSnapLineDlg_Impl,SdSnapLineDlg) |
| virtual void GetAttr(SfxItemSet& rOutAttrs); |
| virtual void HideRadioGroup(); |
| virtual void HideDeleteBtn(); |
| virtual void SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY); |
| //from class Window |
| virtual void SetText( const XubString& rStr ); |
| }; |
| |
| // add for SdInsertLayerDlg |
| class SdInsertLayerDlg; |
| class AbstractSdInsertLayerDlg_Impl : public AbstractSdInsertLayerDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdInsertLayerDlg_Impl,SdInsertLayerDlg) |
| virtual void GetAttr( SfxItemSet& rOutAttrs ) ; |
| //from class Window |
| virtual void SetHelpId( const rtl::OString& rHelpId ) ; |
| }; |
| |
| // add for SdInsertPasteDlg |
| class SdInsertPasteDlg; |
| class AbstractSdInsertPasteDlg_Impl : public AbstractSdInsertPasteDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdInsertPasteDlg_Impl,SdInsertPasteDlg) |
| virtual sal_Bool IsInsertBefore() const; |
| }; |
| |
| // add for SdInsertPagesObjsDlg |
| class SdInsertPagesObjsDlg; |
| class AbstractSdInsertPagesObjsDlg_Impl : public AbstractSdInsertPagesObjsDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdInsertPagesObjsDlg_Impl,SdInsertPagesObjsDlg) |
| virtual ::Window * GetWindow(); //this method is added for return a Window type pointer |
| virtual List* GetList( sal_uInt16 nType ); |
| virtual sal_Bool IsLink(); |
| virtual sal_Bool IsRemoveUnnessesaryMasterPages() const; |
| }; |
| |
| // add for MorphDlg |
| class AbstractMorphDlg_Impl : public AbstractMorphDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractMorphDlg_Impl,::sd::MorphDlg) |
| virtual void SaveSettings() const; |
| virtual sal_uInt16 GetFadeSteps() const; |
| virtual sal_Bool IsAttributeFade() const ; |
| virtual sal_Bool IsOrientationFade() const ; |
| }; |
| |
| // add for SdStartPresentationDlg |
| class SdStartPresentationDlg; |
| class AbstractSdStartPresDlg_Impl : public AbstractSdStartPresDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdStartPresDlg_Impl,SdStartPresentationDlg) |
| virtual void GetAttr( SfxItemSet& rOutAttrs ); |
| }; |
| |
| // add for SdPresLayoutDlg |
| class SdPresLayoutDlg; |
| class AbstractSdPresLayoutDlg_Impl : public AbstractSdPresLayoutDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdPresLayoutDlg_Impl,SdPresLayoutDlg) |
| virtual void GetAttr(SfxItemSet& rOutAttrs); |
| }; |
| |
| // add for SdActionDlg |
| class SfxSingleTabDialog; |
| class AbstractSfxDialog_Impl : public SfxAbstractDialog |
| { |
| DECL_ABSTDLG_BASE(AbstractSfxDialog_Impl,SfxModalDialog) |
| virtual const SfxItemSet* GetOutputItemSet() const; |
| virtual void SetText( const XubString& rStr ); |
| virtual String GetText() const; |
| }; |
| |
| // add for SdVectorizeDlg |
| class SdVectorizeDlg; |
| class AbstractSdVectorizeDlg_Impl :public AbstractSdVectorizeDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdVectorizeDlg_Impl,SdVectorizeDlg) |
| virtual const GDIMetaFile& GetGDIMetaFile() const ; |
| }; |
| |
| // add for SdPublishingDlg |
| class SdPublishingDlg; |
| class AbstractSdPublishingDlg_Impl :public AbstractSdPublishingDlg |
| { |
| DECL_ABSTDLG_BASE(AbstractSdPublishingDlg_Impl,SdPublishingDlg) |
| virtual void GetParameterSequence( ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rParams ); |
| }; |
| |
| // add for HeaderFooterDialog |
| class AbstractHeaderFooterDialog_Impl :public AbstractHeaderFooterDialog |
| { |
| DECL_ABSTDLG_BASE(AbstractHeaderFooterDialog_Impl,::sd::HeaderFooterDialog) |
| virtual void ApplyToAll( TabPage* pPage ); |
| virtual void Apply( TabPage* pPage ); |
| virtual void Cancel( TabPage* pPage ); |
| }; |
| |
| //------------------------------------------------------------------------ |
| //AbstractDialogFactory_Impl implementations |
| class SdAbstractDialogFactory_Impl : public SdAbstractDialogFactory |
| { |
| |
| public: |
| virtual VclAbstractDialog* CreateBreakDlg(::Window* pWindow, ::sd::DrawView* pDrView, ::sd::DrawDocShell* pShell, sal_uLong nSumActionCount, sal_uLong nObjCount ); |
| virtual AbstractCopyDlg* CreateCopyDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, XColorListSharedPtr aColTab, ::sd::View* pView ); |
| virtual AbstractSdCustomShowDlg* CreateSdCustomShowDlg( ::Window* pWindow, SdDrawDocument& rDrawDoc ); |
| virtual SfxAbstractTabDialog* CreateSdTabCharDialog( ::Window* pParent, const SfxItemSet* pAttr, SfxObjectShell* pDocShell ); |
| virtual SfxAbstractTabDialog* CreateSdTabPageDialog( ::Window* pParent, const SfxItemSet* pAttr, SfxObjectShell* pDocShell, sal_Bool bAreaPage = sal_True ); |
| virtual AbstractAssistentDlg* CreateAssistentDlg( ::Window* pParent, sal_Bool bAutoPilot); |
| virtual AbstractSdModifyFieldDlg* CreateSdModifyFieldDlg( ::Window* pWindow, const SvxFieldData* pInField, const SfxItemSet& rSet ); |
| virtual AbstractSdSnapLineDlg* CreateSdSnapLineDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, ::sd::View* pView); |
| virtual AbstractSdInsertLayerDlg* CreateSdInsertLayerDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, bool bDeletable, String aStr ); |
| virtual AbstractSdInsertPasteDlg* CreateSdInsertPasteDlg( ::Window* pWindow ); |
| virtual AbstractSdInsertPagesObjsDlg* CreateSdInsertPagesObjsDlg( ::Window* pParent, const SdDrawDocument* pDoc, SfxMedium* pSfxMedium, const String& rFileName ); |
| virtual AbstractMorphDlg* CreateMorphDlg( ::Window* pParent, const SdrObject* pObj1, const SdrObject* pObj2); |
| virtual SfxAbstractTabDialog* CreateSdOutlineBulletTabDlg ( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView = NULL ); |
| virtual SfxAbstractTabDialog* CreateSdParagraphTabDlg ( ::Window* pParent, const SfxItemSet* pAttr ); |
| virtual AbstractSdStartPresDlg* CreateSdStartPresentationDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, List& rPageNames, List* pCSList ); |
| virtual SfxAbstractTabDialog* CreateSdPresLayoutTemplateDlg( SfxObjectShell* pDocSh, ::Window* pParent, SdResId DlgId, SfxStyleSheetBase& rStyleBase, PresentationObjects ePO, SfxStyleSheetBasePool* pSSPool ); |
| virtual AbstractSdPresLayoutDlg* CreateSdPresLayoutDlg( ::sd::DrawDocShell* pDocShell, ::sd::ViewShell* pViewShell, ::Window* pWindow, const SfxItemSet& rInAttrs); |
| virtual SfxAbstractTabDialog* CreateSdTabTemplateDlg( ::Window* pParent, const SfxObjectShell* pDocShell, SfxStyleSheetBase& rStyleBase, SdrModel* pModel, SdrView* pView ); |
| virtual SfxAbstractDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ); |
| virtual AbstractSdVectorizeDlg* CreateSdVectorizeDlg( ::Window* pParent, const Bitmap& rBmp, ::sd::DrawDocShell* pDocShell ); |
| virtual AbstractSdPublishingDlg* CreateSdPublishingDlg( ::Window* pWindow, DocumentType eDocType); |
| |
| virtual VclAbstractDialog* CreateMasterLayoutDialog( ::Window* pParent, |
| SdDrawDocument* pDoc, |
| SdPage* ); // add for MasterLayoutDialog |
| |
| virtual AbstractHeaderFooterDialog* CreateHeaderFooterDialog( ViewShell* pViewShell, |
| ::Window* pParent, |
| SdDrawDocument* pDoc, |
| SdPage* pCurrentPage ); // add for HeaderFooterDialog |
| |
| // For TabPage |
| virtual CreateTabPage GetSdOptionsContentsTabPageCreatorFunc(); |
| virtual CreateTabPage GetSdPrintOptionsTabPageCreatorFunc(); |
| virtual CreateTabPage GetSdOptionsMiscTabPageCreatorFunc(); |
| virtual CreateTabPage GetSdOptionsSnapTabPageCreatorFunc(); |
| }; |
| |
| #endif |
| |