xref: /aoo42x/main/sw/inc/swabstdlg.hxx (revision cdf0e10c)
1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 #ifndef _SW_ABSTDLG_HXX
28 #define _SW_ABSTDLG_HXX
29 
30 // include ---------------------------------------------------------------
31 
32 #include <tools/solar.h>
33 #include <tools/string.hxx>
34 #include <sfx2/sfxdlg.hxx>
35 #include <svx/svxdlg.hxx>
36 #include <vcl/syswin.hxx>
37 #ifndef _GLOBALS_HRC
38 #include <globals.hrc>
39 #endif
40 #include <com/sun/star/uno/Reference.h>
41 #include <com/sun/star/uno/Sequence.h>
42 #include <com/sun/star/frame/XModel.hpp>
43 #include <com/sun/star/frame/XController.hpp>
44 #include <com/sun/star/text/XTextCursor.hpp>
45 #include <com/sun/star/container/XNameAccess.hpp>
46 #include <com/sun/star/awt/XControl.hpp>
47 #include <com/sun/star/container/XNamed.hpp>
48 #include "swunodef.hxx"
49 #include "itabenum.hxx"
50 
51 class SfxViewFrame;
52 class SfxBindings;
53 class SfxItemSet;
54 class ResId;
55 class Window;
56 class String;
57 class SfxItemPool;
58 class SfxStyleSheetBase;
59 class SwGlossaryHdl;
60 class SwField;
61 
62 class SwLabFmtPage;
63 class SwLabRec;
64 class SwAsciiOptions;
65 class SwDocShell;
66 class SvStream;
67 class SwWrtShell;
68 class SfxRequest;
69 class SwView;
70 class SwTableAutoFmt;
71 class SwTOXMgr;
72 class SwForm;
73 struct CurTOXType;
74 class SwTOXDescription;
75 class SwTOXBase;
76 class SwSectionData;
77 struct SwDBData;
78 class SwField;
79 class Printer;
80 class SwLabItem;
81 class SwNewDBMgr;
82 class SwTableFUNC;
83 class SwChildWinWrapper;
84 struct SfxChildWinInfo;
85 class SwTOXMark;
86 struct SwDocStat;
87 #include <cnttab.hxx> //add for struct CurTOXType
88 
89 namespace com{namespace sun{namespace star{
90     namespace frame{
91         class XFrame;
92     }
93 	namespace sdbcx{
94 	class XColumnsSupplier;
95 	}
96 	namespace sdbc{
97 	class XDataSource;
98 	class XConnection;
99 	class XResultSet;
100 	}
101 }}}
102 
103 typedef   void (*SwLabDlgMethod) (::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel>& xModel,	const SwLabItem& rItem);
104 
105 typedef String		(*GlossaryGetCurrGroup)();
106 typedef void   		(*GlossarySetActGroup)(const String& rNewGroup);
107 
108 class AbstractGlossaryDlg : public VclAbstractDialog  //add for SwGlossaryDlg
109 {
110 public:
111 	virtual	String			GetCurrGrpName() const = 0;
112 	virtual String			GetCurrShortName() const = 0;
113 };
114 
115 class AbstractFldInputDlg : public VclAbstractDialog  //add for SwFldInputDlg
116 {
117 public:
118 	//from class SalFrame
119 	virtual void            SetWindowState( const ByteString& rStr ) = 0;
120 	virtual ByteString      GetWindowState( sal_uLong nMask = WINDOWSTATE_MASK_ALL ) const = 0;
121 };
122 
123 class AbstractInsFootNoteDlg : public VclAbstractDialog  //add for SwInsFootNoteDlg
124 {
125 public:
126     virtual String          GetFontName() = 0;
127     virtual sal_Bool            IsEndNote() = 0;
128     virtual String          GetStr() = 0;
129 	//from class Window
130 	virtual void    SetHelpId( const rtl::OString& sHelpId ) = 0;
131 	virtual void    SetText( const XubString& rStr ) = 0;
132 };
133 
134 class AbstractInsertGrfRulerDlg : public VclAbstractDialog  //add for SwInsertGrfRulerDlg
135 {
136 public:
137 	virtual String 			GetGraphicName() = 0;
138 	virtual sal_Bool			IsSimpleLine() = 0;
139 	virtual sal_Bool 			HasImages() const  = 0;
140 };
141 
142 class AbstractInsTableDlg : public VclAbstractDialog  //add for SwInsTableDlg
143 {
144 public:
145 	virtual void			GetValues( String& rName, sal_uInt16& rRow, sal_uInt16& rCol,
146 								SwInsertTableOptions& rInsTblFlags, String& rTableAutoFmtName,
147 								SwTableAutoFmt *& prTAFmt ) = 0;
148 };
149 
150 class AbstractJavaEditDialog : public VclAbstractDialog  //add for SwJavaEditDialog
151 {
152 public:
153     virtual String              GetText() = 0;
154     virtual String              GetType() = 0;
155     virtual sal_Bool                IsUrl() = 0;
156     virtual sal_Bool                IsNew() = 0;
157     virtual sal_Bool                IsUpdate() = 0;
158 };
159 
160 class AbstractMailMergeDlg : public VclAbstractDialog  //add for SwMailMergeDlg
161 {
162 public:
163 	virtual sal_uInt16	GetMergeType() = 0;
164     virtual const ::rtl::OUString& GetSaveFilter() const = 0;
165 	virtual const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > GetSelection() const = 0;
166     virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet> GetResultSet() const = 0;
167     virtual bool IsSaveIndividualDocs() const = 0;
168     virtual bool IsGenerateFromDataBase() const = 0;
169     virtual String GetColumnName() const = 0;
170     virtual String GetPath() const = 0;
171 
172 };
173 class AbstractMailMergeCreateFromDlg : public VclAbstractDialog  //add for SwMailMergeCreateFromDlg
174 {
175 public:
176     virtual sal_Bool    IsThisDocument() const = 0;
177 };
178 class AbstractMailMergeFieldConnectionsDlg : public VclAbstractDialog  //add for SwMailMergeFieldConnectionsDlg
179 {
180 public:
181     virtual sal_Bool    IsUseExistingConnections() const = 0;
182 };
183 
184 class AbstractMultiTOXTabDialog : public VclAbstractDialog  //add for SwMultiTOXTabDialog
185 {
186 public:
187 	virtual SwForm*				GetForm(CurTOXType eType) = 0;
188 	virtual CurTOXType			GetCurrentTOXType() const = 0;
189 	virtual SwTOXDescription&	GetTOXDescription(CurTOXType eTOXTypes) = 0;
190 	//from SfxTabDialog
191 	virtual const SfxItemSet* 	GetOutputItemSet() const = 0;
192 };
193 
194 class AbstractEditRegionDlg : public VclAbstractDialog  //add for SwEditRegionDlg
195 {
196 public:
197     virtual void    SelectSection(const String& rSectionName) = 0;
198 };
199 class AbstractInsertSectionTabDialog : public VclAbstractDialog  //add for SwInsertSectionTabDialog
200 {
201 public:
202     virtual void     SetSectionData(SwSectionData const& rSect) = 0;
203 };
204 
205 class AbstractSwWordCountDialog : public VclAbstractDialog
206 {
207 public:
208     virtual void    SetValues(const SwDocStat& rCurrent, const SwDocStat& rDoc) = 0;
209 };
210 
211 class AbstractSwInsertAbstractDlg : public VclAbstractDialog    // add for SwInsertAbstractDlg
212 {
213 public:
214 	virtual sal_uInt8	GetLevel() const = 0;
215 	virtual sal_uInt8	GetPara() const = 0;
216 };
217 
218 class AbstractSwAsciiFilterDlg : public VclAbstractDialog // add for SwAsciiFilterDlg
219 {
220 public:
221 	virtual void FillOptions( SwAsciiOptions& rOptions ) = 0;
222 
223 };
224 
225 class AbstractSwBreakDlg : public VclAbstractDialog // add for SwBreakDlg
226 {
227 public:
228 	virtual String  GetTemplateName() = 0;
229     virtual sal_uInt16  GetKind() = 0;
230     virtual sal_uInt16  GetPageNumber() = 0;
231 
232 };
233 
234 class AbstractSplitTableDialog : public VclAbstractDialog // add for
235 {
236 public:
237     virtual sal_uInt16 GetSplitMode() = 0;
238 };
239 
240 class AbstractSwConvertTableDlg :  public VclAbstractDialog // add for SwConvertTableDlg
241 {
242 public:
243 	virtual void GetValues( sal_Unicode& rDelim,
244 					SwInsertTableOptions& rInsTblFlags,
245 					SwTableAutoFmt *& prTAFmt ) = 0;
246 };
247 
248 class AbstractSwInsertDBColAutoPilot :  public VclAbstractDialog // add for SwInsertDBColAutoPilot
249 {
250 public:
251 
252 	virtual void DataToDoc( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& rSelection,
253 		::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource> rxSource,
254 		::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> xConnection,
255 		::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet > xResultSet) = 0;
256 };
257 
258 class AbstractDropDownFieldDialog : public VclAbstractDialog //add for DropDownFieldDialog
259 {
260 public:
261 	 virtual ByteString      GetWindowState( sal_uLong nMask = WINDOWSTATE_MASK_ALL ) const = 0; //this method inherit from SystemWindow
262 	 virtual void            SetWindowState( const ByteString& rStr ) =0;//this method inherit from SystemWindow
263 };
264 
265 class AbstarctSwLabDlg  : public SfxAbstractTabDialog //add for SwLabDlg
266 {
267 public:
268 	 virtual const String& GetBusinessCardStr() const = 0;
269 	 virtual Printer *GetPrt() =0;
270 };
271 
272 class AbstarctSwSelGlossaryDlg : public VclAbstractDialog //add for SwSelGlossaryDlg
273 {
274 public:
275 	virtual void InsertGlos(const String &rRegion, const String &rGlosName) = 0;	// inline
276 	virtual sal_uInt16 GetSelectedIdx() const = 0;	// inline
277 	virtual void SelectEntryPos(sal_uInt16 nIdx) = 0; 	// inline
278 };
279 
280 class AbstractSwSplitTableDlg :public VclAbstractDialog //add for SwSplitTableDlg
281 {
282 public:
283 	virtual sal_Bool                IsHorizontal() const = 0;
284     virtual sal_Bool                IsProportional() const = 0;
285     virtual long                GetCount() const = 0;
286 };
287 
288 class AbstractSwAutoFormatDlg : public VclAbstractDialog //add for SwAutoFormatDlg
289 {
290 public:
291 	virtual void FillAutoFmtOfIndex( SwTableAutoFmt*& rToFill ) const = 0;
292 };
293 
294 class AbstractSwFldDlg : public SfxAbstractTabDialog //add for SwFldDlg
295 {
296 public:
297 	virtual void				Start( sal_Bool bShow = sal_True ) = 0;  //this method from sfxtabdialog
298 	virtual void				Initialize(SfxChildWinInfo *pInfo) = 0;
299 	virtual void				ReInitDlg() = 0;
300 	virtual void                ActivateDatabasePage() = 0;
301 	virtual void				ShowPage( sal_uInt16 nId ) = 0;// this method from SfxTabDialog
302 	virtual Window *			GetWindow() = 0; //this method is added for return a Window type pointer
303 };
304 
305 class AbstractSwRenameXNamedDlg : public VclAbstractDialog //add for SwRenameXNamedDlg
306 {
307 public:
308 	virtual void	SetForbiddenChars( const String& rSet ) = 0;
309 	virtual void SetAlternativeAccess(
310 			 STAR_REFERENCE( container::XNameAccess ) & xSecond,
311 			 STAR_REFERENCE( container::XNameAccess ) & xThird ) = 0;
312 };
313 
314 class AbstractSwModalRedlineAcceptDlg : public VclAbstractDialog //add for SwModalRedlineAcceptDlg
315 {
316 public:
317 	virtual void			AcceptAll( sal_Bool bAccept ) = 0;
318 };
319 
320 class AbstractMarkFloatDlg : public VclAbstractDialog     //add for SwIndexMarkFloatDlg & SwAuthMarkFloatDlg
321 {
322 public:
323     virtual void    ReInitDlg(SwWrtShell& rWrtShell) = 0;
324 	virtual Window *	GetWindow() = 0; //this method is added for return a Window type pointer
325 };
326 
327 #define RET_LOAD_DOC            100
328 #define RET_EDIT_DOC            101
329 #define RET_EDIT_RESULT_DOC     102
330 #define RET_TARGET_CREATED      103
331 #define RET_REMOVE_TARGET       104
332 
333 class SwView;
334 class SwMailMergeConfigItem;
335 
336 class AbstractMailMergeWizard : public VclAbstractDialog2
337 {
338 public:
339     virtual void                SetReloadDocument(const String& rURL) = 0;
340     virtual const String&       GetReloadDocument() const = 0;
341     virtual sal_Bool                ShowPage( sal_uInt16 nLevel ) = 0;
342     virtual sal_uInt16          GetRestartPage() const = 0;
343 };
344 
345 
346 //-------Swabstract fractory
347 class SwAbstractDialogFactory
348 {
349 public:
350 	static SwAbstractDialogFactory* 	Create();
351 
352 	virtual SfxAbstractDialog*				CreateSfxDialog( Window* pParent, //add for SvxMeasureDialog & SvxConnectionDialog
353 																		const SfxItemSet& rAttr,
354 									const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& _rxFrame,
355 																		sal_uInt32 nResId
356 																		) = 0;
357     virtual AbstractSwWordCountDialog* CreateSwWordCountDialog( Window* pWindow ) = 0;
358     virtual AbstractSwInsertAbstractDlg * CreateSwInsertAbstractDlg ( Window* pParent, int nResId) = 0; // add for SwInsertAbstractDlg
359 	virtual AbstractSwAsciiFilterDlg*  CreateSwAsciiFilterDlg ( Window* pParent, SwDocShell& rDocSh,
360                                                                 SvStream* pStream, int nResId ) = 0;// add for SwAsciiFilterDlg
361     virtual VclAbstractDialog * CreateSwInsertBookmarkDlg( Window *pParent, SwWrtShell &rSh, SfxRequest& rReq, int nResId ) = 0;// add for SwInsertBookmarkDlg
362 
363 	virtual	AbstractSwBreakDlg * CreateSwBreakDlg( Window *pParent, SwWrtShell &rSh,int nResId ) = 0; // add for SwBreakDlg
364 	virtual VclAbstractDialog	* CreateSwChangeDBDlg( SwView& rVw, int nResId ) = 0; //add for SwChangeDBDlg
365 	virtual SfxAbstractTabDialog *  CreateSwCharDlg( Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet, int nResId, // add for SwCharDlg
366 												const String* pFmtStr = 0, sal_Bool bIsDrwTxtDlg = sal_False) = 0;
367 	virtual AbstractSwConvertTableDlg* CreateSwConvertTableDlg ( SwView& rView , int nResId, bool bToTable) = 0; //add for SwConvertTableDlg
368 	virtual VclAbstractDialog * CreateSwCaptionDialog ( Window *pParent, SwView &rV,int nResId) = 0; //add for SwCaptionDialog
369 
370 	virtual AbstractSwInsertDBColAutoPilot* CreateSwInsertDBColAutoPilot( SwView& rView, // add for SwInsertDBColAutoPilot
371 		::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource> rxSource,
372 		com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> xColSupp,
373 		const SwDBData& rData,  int nResId) = 0;
374 	virtual SfxAbstractTabDialog * CreateSwFootNoteOptionDlg( Window *pParent, SwWrtShell &rSh,int nResId) = 0;//add for  SwFootNoteOptionDlg
375 
376 	virtual AbstractDropDownFieldDialog * CreateDropDownFieldDialog ( Window *pParent, SwWrtShell &rSh, //add for DropDownFieldDialog
377                                 SwField* pField,int nResId, sal_Bool bNextButton = sal_False ) = 0;
378 	virtual SfxAbstractTabDialog* CreateSwEnvDlg ( Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, sal_Bool bInsert,int nResId ) = 0; //add for SwEnvDlg
379 
380 
381 	virtual AbstarctSwLabDlg* CreateSwLabDlg ( Window* pParent, const SfxItemSet& rSet, //add for SwLabDlg
382 	 												SwNewDBMgr* pNewDBMgr, sal_Bool bLabel,int nResId  ) = 0;
383 
384 	virtual SwLabDlgMethod GetSwLabDlgStaticMethod () =0;//add for SwLabDlg
385 
386 	virtual SfxAbstractTabDialog* CreateSwParaDlg ( Window *pParent, //add for SwParaDlg
387 													SwView& rVw,
388 													const SfxItemSet& rCoreSet,
389 													sal_uInt8 nDialogMode,
390 													int nResId,
391 													const String *pCollName = 0,
392 													sal_Bool bDraw = sal_False,
393 													sal_uInt16 nDefPage = 0) = 0;
394 
395 	virtual AbstarctSwSelGlossaryDlg * CreateSwSelGlossaryDlg ( Window * pParent, const String &rShortName, int nResId ) = 0; //add for SwSelGlossaryDlg
396 
397     virtual VclAbstractDialog * CreateVclAbstractDialog ( Window * pParent, SwWrtShell &rSh, int nResId ) = 0; //add for  SwTableHeightDlg SwSortDlg
398     virtual AbstractSplitTableDialog * CreateSplitTblDialog ( Window * pParent, SwWrtShell &rSh ) = 0; //add for  SwSplitTblDlg
399 
400 	virtual AbstractSwAutoFormatDlg * CreateSwAutoFormatDlg( Window* pParent, SwWrtShell* pShell, //add for SwAutoFormatDlg
401 															int nResId,
402 															sal_Bool bSetAutoFmt = sal_True,
403 															const SwTableAutoFmt* pSelFmt = 0 ) = 0;
404 	virtual SfxAbstractDialog * CreateSwBorderDlg ( Window* pParent, SfxItemSet& rSet, sal_uInt16 nType, int nResId ) = 0;//add for SwBorderDlg
405 	virtual SfxAbstractDialog * CreateSwWrapDlg ( Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh, sal_Bool bDrawMode, int nResId ) = 0; //add for SwWrapDlg
406 
407 	virtual VclAbstractDialog * CreateSwTableWidthDlg ( Window *pParent, SwTableFUNC &rFnc , int nResId ) = 0; //add for SwTableWidthDlg
408 	virtual SfxAbstractTabDialog* CreateSwTableTabDlg( Window* pParent, SfxItemPool& Pool,
409 														const SfxItemSet* pItemSet, SwWrtShell* pSh,int nResId ) = 0; //add for SwTableTabDlg
410 
411 	virtual AbstractSwFldDlg * CreateSwFldDlg ( SfxBindings* pB, SwChildWinWrapper* pCW, Window *pParent, int nResId ) = 0; //add for SwFldDlg
412 	virtual SfxAbstractDialog*	 CreateSwFldEditDlg ( SwView& rVw, int nResId ) = 0; //add for SwFldEditDlg
413 	virtual AbstractSwRenameXNamedDlg * CreateSwRenameXNamedDlg( Window* pParent, //add for SwRenameXNamedDlg
414 																STAR_REFERENCE( container::XNamed ) & xNamed,
415 																STAR_REFERENCE( container::XNameAccess ) & xNameAccess, int nResId ) = 0;
416 	virtual AbstractSwModalRedlineAcceptDlg * CreateSwModalRedlineAcceptDlg ( Window *pParent, int nResId ) = 0; //add for SwModalRedlineAcceptDlg
417 
418     virtual VclAbstractDialog*          CreateSwVclDialog( int nResId, Window* pParent, sal_Bool& rWithPrev ) = 0; //add for SwMergeTblDlg
419     virtual SfxAbstractTabDialog*       CreateFrmTabDialog( int nResId,
420 												SfxViewFrame *pFrame, Window *pParent,
421 												const SfxItemSet& rCoreSet,
422 												sal_Bool			bNewFrm  = sal_True,
423 												sal_uInt16			nResType = DLG_FRM_STD,
424 												sal_Bool			bFmt 	 = sal_False,
425 												sal_uInt16			nDefPage = 0,
426 												const String* 	pFmtStr  = 0) = 0;  //add for SwFrmDlg
427 	virtual SfxAbstractTabDialog*		CreateTemplateDialog( int nResId,
428 												Window*             pParent,
429 												SfxStyleSheetBase&  rBase,
430 												sal_uInt16              nRegion,
431 												sal_Bool 				bColumn = sal_False,
432 												SwWrtShell* 		pActShell = 0,
433 												sal_Bool 				bNew = sal_False ) = 0; //add for SwTemplateDlg
434 	virtual AbstractGlossaryDlg*		CreateGlossaryDlg( int nResId,
435 												SfxViewFrame* pViewFrame,
436 												SwGlossaryHdl* pGlosHdl,
437 												SwWrtShell *pWrtShell) = 0; //add for SwGlossaryDlg
438 	virtual AbstractFldInputDlg*		CreateFldInputDlg( int nResId,
439 												Window *pParent, SwWrtShell &rSh,
440 												SwField* pField, sal_Bool bNextButton = sal_False ) = 0; //add for SwFldInputDlg
441 	virtual AbstractInsFootNoteDlg*		CreateInsFootNoteDlg( int nResId,
442 												Window * pParent, SwWrtShell &rSh, sal_Bool bEd = sal_False) = 0; //add for SwInsFootNoteDlg
443 	virtual VclAbstractDialog *			CreateVclSwViewDialog( int nResId,
444 												SwView& rView, sal_Bool bCol = sal_False ) = 0; //add for SwInsRowColDlg, SwLineNumberingDlg
445 	virtual AbstractInsertGrfRulerDlg*		CreateInsertGrfRulerDlg( int nResId,
446 												Window * pParent ) = 0; //add for SwInsertGrfRulerDlg
447 	virtual AbstractInsTableDlg*		CreateInsTableDlg( int nResId,
448 												SwView& rView ) = 0; //add for SwInsTableDlg
449 	virtual AbstractJavaEditDialog*		CreateJavaEditDialog( int nResId,
450 												Window* pParent, SwWrtShell* pWrtSh ) = 0; //add for SwJavaEditDialog
451 	virtual AbstractMailMergeDlg*		CreateMailMergeDlg( int nResId,
452 												Window* pParent, SwWrtShell& rSh,
453 	 											const String& rSourceName,
454 												const String& rTblName,
455 												sal_Int32 nCommandType,
456 												const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& xConnection,
457 												::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >* pSelection = 0 ) = 0; //add for SwMailMergeDlg
458 	virtual AbstractMailMergeCreateFromDlg*		CreateMailMergeCreateFromDlg( int nResId,
459 													Window* pParent ) = 0; //add for SwMailMergeCreateFromDlg
460 	virtual AbstractMailMergeFieldConnectionsDlg*		CreateMailMergeFieldConnectionsDlg( int nResId,
461 															Window* pParent ) = 0; //add for SwMailMergeFieldConnectionsDlg
462 	virtual VclAbstractDialog* 			CreateMultiTOXMarkDlg( int nResId,
463 												Window* pParent, SwTOXMgr &rTOXMgr ) = 0; //add for SwMultiTOXMarkDlg
464 	virtual SfxAbstractTabDialog*		CreateSwTabDialog( int nResId,
465 												Window* pParent,
466 												const SfxItemSet* pSwItemSet,
467 												SwWrtShell &) = 0; //add for SwSvxNumBulletTabDialog, SwOutlineTabDialog
468 	virtual AbstractMultiTOXTabDialog*		CreateMultiTOXTabDialog( int nResId,
469 												Window* pParent, const SfxItemSet& rSet,
470 												SwWrtShell &rShell,
471 												SwTOXBase* pCurTOX, sal_uInt16 nToxType = USHRT_MAX,
472 												sal_Bool bGlobal = sal_False) = 0; //add for SwMultiTOXTabDialog
473 	virtual AbstractEditRegionDlg*		CreateEditRegionDlg( int nResId,
474 												Window* pParent, SwWrtShell& rWrtSh ) = 0; //add for SwEditRegionDlg
475 	virtual AbstractInsertSectionTabDialog*		CreateInsertSectionTabDialog( int nResId,
476 													Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh ) = 0; //add for SwInsertSectionTabDialog
477 	virtual AbstractMarkFloatDlg*		CreateIndexMarkFloatDlg( int nResId,
478 													SfxBindings* pBindings,
479 				   									SfxChildWindow* pChild,
480 				   									Window *pParent,
481 													SfxChildWinInfo* pInfo,
482 				   									sal_Bool bNew=sal_True) = 0; //add for SwIndexMarkFloatDlg
483 	virtual AbstractMarkFloatDlg*		CreateAuthMarkFloatDlg( int nResId,
484 													SfxBindings* pBindings,
485 				   									SfxChildWindow* pChild,
486 				   									Window *pParent,
487 													SfxChildWinInfo* pInfo,
488 				   									sal_Bool bNew=sal_True) = 0; //add for SwAuthMarkFloatDlg
489 	virtual VclAbstractDialog *			CreateIndexMarkModalDlg( int nResId,
490 												Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark ) = 0; //add for SwIndexMarkModalDlg
491 
492     virtual AbstractMailMergeWizard*    CreateMailMergeWizard(SwView& rView, SwMailMergeConfigItem& rConfigItem) = 0;
493 
494     //add for static func in SwGlossaryDlg
495 	virtual GlossaryGetCurrGroup		GetGlossaryCurrGroupFunc( sal_uInt16 nId ) = 0;
496 	virtual GlossarySetActGroup			SetGlossaryActGroupFunc( sal_uInt16 nId ) = 0;
497 
498 	// for tabpage
499 	virtual CreateTabPage				GetTabPageCreatorFunc( sal_uInt16 nId ) = 0;
500 	virtual GetTabPageRanges			GetTabPageRangesFunc( sal_uInt16 nId ) = 0;
501 };
502 
503 #endif
504