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