xref: /aoo42x/main/sc/source/ui/app/scdll.cxx (revision 7a32b0c8)
1b3f79822SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3b3f79822SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4b3f79822SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5b3f79822SAndrew Rist  * distributed with this work for additional information
6b3f79822SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7b3f79822SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8b3f79822SAndrew Rist  * "License"); you may not use this file except in compliance
9b3f79822SAndrew Rist  * with the License.  You may obtain a copy of the License at
10b3f79822SAndrew Rist  *
11b3f79822SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12b3f79822SAndrew Rist  *
13b3f79822SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14b3f79822SAndrew Rist  * software distributed under the License is distributed on an
15b3f79822SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16b3f79822SAndrew Rist  * KIND, either express or implied.  See the License for the
17b3f79822SAndrew Rist  * specific language governing permissions and limitations
18b3f79822SAndrew Rist  * under the License.
19b3f79822SAndrew Rist  *
20b3f79822SAndrew Rist  *************************************************************/
21b3f79822SAndrew Rist 
22b3f79822SAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
25cdf0e10cSrcweir #include "precompiled_sc.hxx"
26cdf0e10cSrcweir 
27cdf0e10cSrcweir 
28cdf0e10cSrcweir 
29cdf0e10cSrcweir #include <editeng/eeitem.hxx>
30cdf0e10cSrcweir 
31cdf0e10cSrcweir 
32cdf0e10cSrcweir #ifndef _FM_FMOBJFAC_HXX
33cdf0e10cSrcweir #include <svx/fmobjfac.hxx>
34cdf0e10cSrcweir #endif
35cdf0e10cSrcweir #include <svx/objfac3d.hxx>
36cdf0e10cSrcweir #include <svx/tbxcolor.hxx>
37cdf0e10cSrcweir 
38cdf0e10cSrcweir #include <sot/clsids.hxx>
39cdf0e10cSrcweir #include <sfx2/taskpane.hxx>
40*7a32b0c8SAndre Fischer #include <sfx2/sidebar/SidebarChildWindow.hxx>
41cdf0e10cSrcweir #include <sfx2/docfilt.hxx>
42cdf0e10cSrcweir #include <sfx2/fcontnr.hxx>
43cdf0e10cSrcweir #include <sfx2/docfile.hxx>
44cdf0e10cSrcweir #include <sfx2/app.hxx>
45cdf0e10cSrcweir #include <avmedia/mediaplayer.hxx>
46cdf0e10cSrcweir #include <avmedia/mediatoolbox.hxx>
47cdf0e10cSrcweir #include <comphelper/types.hxx>
48cdf0e10cSrcweir #include <svx/extrusioncolorcontrol.hxx>
49cdf0e10cSrcweir #include <svx/fontworkgallery.hxx>
50cdf0e10cSrcweir #include <svx/tbxcustomshapes.hxx>
51cdf0e10cSrcweir 
52cdf0e10cSrcweir #include <svtools/parhtml.hxx>
53cdf0e10cSrcweir #include <sot/formats.hxx>
54cdf0e10cSrcweir #define SOT_FORMATSTR_ID_STARCALC_30 SOT_FORMATSTR_ID_STARCALC
55cdf0e10cSrcweir 
56cdf0e10cSrcweir #include "scitems.hxx"		// fuer tbxctrls etc.
57cdf0e10cSrcweir #include "scmod.hxx"
58cdf0e10cSrcweir #include "scresid.hxx"
59cdf0e10cSrcweir #include "sc.hrc"
60cdf0e10cSrcweir #include "cfgids.hxx"
61cdf0e10cSrcweir 
62cdf0e10cSrcweir //!	die Registrierung wird wegen CLOOKs in ein eigenes File wandern muessen...
63cdf0e10cSrcweir 
64cdf0e10cSrcweir // Interface-Registrierung
65cdf0e10cSrcweir #include "docsh.hxx"
66cdf0e10cSrcweir #include "tabvwsh.hxx"
67cdf0e10cSrcweir #include "prevwsh.hxx"
68cdf0e10cSrcweir #include "drawsh.hxx"
69cdf0e10cSrcweir #include "drformsh.hxx"
70cdf0e10cSrcweir #include "drtxtob.hxx"
71cdf0e10cSrcweir #include "editsh.hxx"
72cdf0e10cSrcweir #include "pivotsh.hxx"
73cdf0e10cSrcweir #include "auditsh.hxx"
74cdf0e10cSrcweir #include "cellsh.hxx"
75cdf0e10cSrcweir #include "oleobjsh.hxx"
76cdf0e10cSrcweir #include "chartsh.hxx"
77cdf0e10cSrcweir #include "graphsh.hxx"
78cdf0e10cSrcweir #include "mediash.hxx"
79cdf0e10cSrcweir #include "pgbrksh.hxx"
80cdf0e10cSrcweir 
81cdf0e10cSrcweir #include "docpool.hxx"
82cdf0e10cSrcweir #include "appoptio.hxx"
83cdf0e10cSrcweir 
84cdf0e10cSrcweir // Controls
85cdf0e10cSrcweir 
86cdf0e10cSrcweir #include <svx/tbxalign.hxx>
87cdf0e10cSrcweir #include <svx/tbxctl.hxx>
88cdf0e10cSrcweir #include <svx/fillctrl.hxx>
89cdf0e10cSrcweir #include <svx/linectrl.hxx>
90cdf0e10cSrcweir #include <svx/tbcontrl.hxx>
91cdf0e10cSrcweir #include <svx/selctrl.hxx>
92cdf0e10cSrcweir #include <svx/insctrl.hxx>
93cdf0e10cSrcweir #include <svx/zoomctrl.hxx>
94cdf0e10cSrcweir #include <editeng/flditem.hxx>
95cdf0e10cSrcweir #include <svx/modctrl.hxx>
96cdf0e10cSrcweir #include <svx/pszctrl.hxx>
97cdf0e10cSrcweir #include <svx/fntctl.hxx>
98cdf0e10cSrcweir #include <svx/fntszctl.hxx>
99cdf0e10cSrcweir #include <svx/grafctrl.hxx>
100cdf0e10cSrcweir #include <svx/galbrws.hxx>
101cdf0e10cSrcweir #include <svx/clipboardctl.hxx>
102cdf0e10cSrcweir #include <svx/lboxctrl.hxx>
103cdf0e10cSrcweir #include <svx/verttexttbxctrl.hxx>
104cdf0e10cSrcweir #include <svx/formatpaintbrushctrl.hxx>
105cdf0e10cSrcweir #include "tbinsert.hxx"
106cdf0e10cSrcweir #include "tbzoomsliderctrl.hxx"
107cdf0e10cSrcweir #include <svx/zoomsliderctrl.hxx>
108cdf0e10cSrcweir 
109cdf0e10cSrcweir #include <svx/xmlsecctrl.hxx>
110cdf0e10cSrcweir // Child-Windows
111cdf0e10cSrcweir #include "reffact.hxx"
112cdf0e10cSrcweir #include "navipi.hxx"
113cdf0e10cSrcweir #include "inputwin.hxx"
114cdf0e10cSrcweir #include "spelldialog.hxx"
115cdf0e10cSrcweir #include <svx/fontwork.hxx>
116cdf0e10cSrcweir #include <svx/srchdlg.hxx>
117cdf0e10cSrcweir #include <svx/hyprlink.hxx>
118cdf0e10cSrcweir #include <svx/hyperdlg.hxx>
119cdf0e10cSrcweir #include <svx/imapdlg.hxx>
120cdf0e10cSrcweir 
121cdf0e10cSrcweir #include "editutil.hxx"
122cdf0e10cSrcweir #include <svx/svdfield.hxx>		//	SdrRegisterFieldClasses
123cdf0e10cSrcweir #include <rtl/logfile.hxx>
124cdf0e10cSrcweir 
125cdf0e10cSrcweir #include "dwfunctr.hxx"
126cdf0e10cSrcweir #include "acredlin.hxx"
127cdf0e10cSrcweir 
128cdf0e10cSrcweir //------------------------------------------------------------------
129cdf0e10cSrcweir 
130cdf0e10cSrcweir //UNUSED2008-05  //	filter detection can't use ScFilterOptions (in sc-dll),
131cdf0e10cSrcweir //UNUSED2008-05  //	so access to wk3 flag must be implemented here again
132cdf0e10cSrcweir //UNUSED2008-05
133cdf0e10cSrcweir //UNUSED2008-05  class ScLibOptions : public utl::ConfigItem
134cdf0e10cSrcweir //UNUSED2008-05  {
135cdf0e10cSrcweir //UNUSED2008-05      sal_Bool        bWK3Flag;
136cdf0e10cSrcweir //UNUSED2008-05
137cdf0e10cSrcweir //UNUSED2008-05  public:
138cdf0e10cSrcweir //UNUSED2008-05                  ScLibOptions();
139cdf0e10cSrcweir //UNUSED2008-05      sal_Bool        GetWK3Flag() const          { return bWK3Flag; }
140cdf0e10cSrcweir //UNUSED2008-05  };
141cdf0e10cSrcweir //UNUSED2008-05
142cdf0e10cSrcweir //UNUSED2008-05  #define CFGPATH_LIBFILTER		"Office.Calc/Filter/Import/Lotus123"
143cdf0e10cSrcweir //UNUSED2008-05  #define ENTRYSTR_WK3			"WK3"
144cdf0e10cSrcweir //UNUSED2008-05
145cdf0e10cSrcweir //UNUSED2008-05  ScLibOptions::ScLibOptions() :
146cdf0e10cSrcweir //UNUSED2008-05      ConfigItem( rtl::OUString::createFromAscii( CFGPATH_LIBFILTER ) ),
147cdf0e10cSrcweir //UNUSED2008-05      bWK3Flag( sal_False )
148cdf0e10cSrcweir //UNUSED2008-05  {
149cdf0e10cSrcweir //UNUSED2008-05      com::sun::star::uno::Sequence<rtl::OUString> aNames(1);
150cdf0e10cSrcweir //UNUSED2008-05      aNames[0] = rtl::OUString::createFromAscii( ENTRYSTR_WK3 );
151cdf0e10cSrcweir //UNUSED2008-05      com::sun::star::uno::Sequence<com::sun::star::uno::Any> aValues = GetProperties(aNames);
152cdf0e10cSrcweir //UNUSED2008-05      if ( aValues.getLength() == 1 && aValues[0].hasValue() )
153cdf0e10cSrcweir //UNUSED2008-05          bWK3Flag = comphelper::getBOOL( aValues[0] );
154cdf0e10cSrcweir //UNUSED2008-05  }
155cdf0e10cSrcweir 
156cdf0e10cSrcweir //------------------------------------------------------------------
157cdf0e10cSrcweir 
ScResId(sal_uInt16 nId)158cdf0e10cSrcweir ScResId::ScResId( sal_uInt16 nId ) :
159cdf0e10cSrcweir 	ResId( nId, *SC_MOD()->GetResMgr() )
160cdf0e10cSrcweir {
161cdf0e10cSrcweir }
162cdf0e10cSrcweir 
163cdf0e10cSrcweir //------------------------------------------------------------------
164cdf0e10cSrcweir 
Init()165cdf0e10cSrcweir void ScDLL::Init()
166cdf0e10cSrcweir {
167cdf0e10cSrcweir 	RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "nn93723", "ScDLL::Init" );
168cdf0e10cSrcweir 
169cdf0e10cSrcweir 	ScModule **ppShlPtr = (ScModule**) GetAppData(SHL_CALC);
170cdf0e10cSrcweir 	if ( *ppShlPtr )
171cdf0e10cSrcweir 		return;
172cdf0e10cSrcweir 
173cdf0e10cSrcweir 	ScDocumentPool::InitVersionMaps();	// wird im ScModule ctor gebraucht
174cdf0e10cSrcweir 
175cdf0e10cSrcweir 	ScModule* pMod = new ScModule( &ScDocShell::Factory() );
176cdf0e10cSrcweir 	(*ppShlPtr) = pMod;
177cdf0e10cSrcweir 
178cdf0e10cSrcweir //REMOVE		ScDocShell::RegisterFactory( SDT_SC_DOCFACTPRIO );
179cdf0e10cSrcweir 
180cdf0e10cSrcweir 	ScDocShell::Factory().SetDocumentServiceName( rtl::OUString::createFromAscii( "com.sun.star.sheet.SpreadsheetDocument" ) );
181cdf0e10cSrcweir 
182cdf0e10cSrcweir 	ScGlobal::Init();		// erst wenn der ResManager initialisiert ist
183cdf0e10cSrcweir 							//	erst nach ScGlobal::Init duerfen die App-Optionen
184cdf0e10cSrcweir 							//	initialisiert werden
185cdf0e10cSrcweir 
186cdf0e10cSrcweir 	// register your view-factories here
187cdf0e10cSrcweir 
188cdf0e10cSrcweir 	ScTabViewShell		::RegisterFactory(1);
189cdf0e10cSrcweir 	ScPreviewShell		::RegisterFactory(2);
190cdf0e10cSrcweir 
191cdf0e10cSrcweir 	// register your shell-interfaces here
192cdf0e10cSrcweir 
193cdf0e10cSrcweir 	ScModule			::RegisterInterface(pMod);
194cdf0e10cSrcweir 	ScDocShell			::RegisterInterface(pMod);
195cdf0e10cSrcweir 	ScTabViewShell		::RegisterInterface(pMod);
196cdf0e10cSrcweir 	ScPreviewShell		::RegisterInterface(pMod);
197cdf0e10cSrcweir 	ScDrawShell			::RegisterInterface(pMod);
198cdf0e10cSrcweir 	ScDrawFormShell		::RegisterInterface(pMod);
199cdf0e10cSrcweir 	ScDrawTextObjectBar	::RegisterInterface(pMod);
200cdf0e10cSrcweir 	ScEditShell			::RegisterInterface(pMod);
201cdf0e10cSrcweir 	ScPivotShell		::RegisterInterface(pMod);
202cdf0e10cSrcweir 	ScAuditingShell		::RegisterInterface(pMod);
203cdf0e10cSrcweir 	ScFormatShell		::RegisterInterface(pMod);
204cdf0e10cSrcweir 	ScCellShell			::RegisterInterface(pMod);
205cdf0e10cSrcweir 	ScOleObjectShell	::RegisterInterface(pMod);
206cdf0e10cSrcweir 	ScChartShell		::RegisterInterface(pMod);
207cdf0e10cSrcweir 	ScGraphicShell		::RegisterInterface(pMod);
208cdf0e10cSrcweir 	ScMediaShell		::RegisterInterface(pMod);
209cdf0e10cSrcweir 	ScPageBreakShell	::RegisterInterface(pMod);
210cdf0e10cSrcweir 
211cdf0e10cSrcweir 	//	eigene Controller
212cdf0e10cSrcweir 	ScTbxInsertCtrl		::RegisterControl(SID_TBXCTL_INSERT, pMod);
213cdf0e10cSrcweir 	ScTbxInsertCtrl		::RegisterControl(SID_TBXCTL_INSCELLS, pMod);
214cdf0e10cSrcweir 	ScTbxInsertCtrl		::RegisterControl(SID_TBXCTL_INSOBJ, pMod);
215cdf0e10cSrcweir     ScZoomSliderControl ::RegisterControl(SID_PREVIEW_SCALINGFACTOR, pMod);
216cdf0e10cSrcweir 
217cdf0e10cSrcweir 	//	Svx-Toolbox-Controller
218cdf0e10cSrcweir     SvxTbxCtlDraw                   ::RegisterControl(SID_INSERT_DRAW,          pMod);
219cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_BASIC,		pMod);
220cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_SYMBOL,	pMod);
221cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_ARROW,		pMod);
222cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_FLOWCHART, pMod);
223cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_CALLOUT,	pMod);
224cdf0e10cSrcweir 	SvxTbxCtlCustomShapes			::RegisterControl(SID_DRAWTBX_CS_STAR,		pMod);
225cdf0e10cSrcweir 	SvxTbxCtlAlign					::RegisterControl(SID_OBJECT_ALIGN,			pMod);
226cdf0e10cSrcweir 	SvxFillToolBoxControl			::RegisterControl(0, pMod);
227cdf0e10cSrcweir 	SvxLineStyleToolBoxControl		::RegisterControl(0, pMod);
228cdf0e10cSrcweir 	SvxLineWidthToolBoxControl		::RegisterControl(0, pMod);
229cdf0e10cSrcweir 	SvxLineColorToolBoxControl		::RegisterControl(0, pMod);
230cdf0e10cSrcweir 	SvxLineEndToolBoxControl		::RegisterControl(SID_ATTR_LINEEND_STYLE,	pMod);
231cdf0e10cSrcweir 	SvxStyleToolBoxControl			::RegisterControl(SID_STYLE_APPLY,			pMod);
232cdf0e10cSrcweir 	SvxFontNameToolBoxControl		::RegisterControl(SID_ATTR_CHAR_FONT,		pMod);
233cdf0e10cSrcweir //	SvxFontHeightToolBoxControl		::RegisterControl(SID_ATTR_CHAR_FONTHEIGHT,	pMod);
234cdf0e10cSrcweir 	SvxFontColorToolBoxControl		::RegisterControl(SID_ATTR_CHAR_COLOR,		pMod);
235cdf0e10cSrcweir 	SvxColorToolBoxControl			::RegisterControl(SID_BACKGROUND_COLOR,		pMod);
236cdf0e10cSrcweir 	SvxFrameToolBoxControl			::RegisterControl(SID_ATTR_BORDER,			pMod);
237cdf0e10cSrcweir 	SvxFrameLineStyleToolBoxControl	::RegisterControl(SID_FRAME_LINESTYLE,		pMod);
238cdf0e10cSrcweir 	SvxFrameLineColorToolBoxControl	::RegisterControl(SID_FRAME_LINECOLOR,		pMod);
239cdf0e10cSrcweir 	SvxClipBoardControl				::RegisterControl(SID_PASTE,				pMod );
240cdf0e10cSrcweir 	SvxUndoRedoControl				::RegisterControl(SID_UNDO,					pMod );
241cdf0e10cSrcweir 	SvxUndoRedoControl				::RegisterControl(SID_REDO,					pMod );
242cdf0e10cSrcweir     svx::FormatPaintBrushToolBoxControl::RegisterControl(SID_FORMATPAINTBRUSH,  pMod );
243cdf0e10cSrcweir 
244cdf0e10cSrcweir 	SvxGrafModeToolBoxControl		::RegisterControl(SID_ATTR_GRAF_MODE,		pMod);
245cdf0e10cSrcweir 	SvxGrafRedToolBoxControl		::RegisterControl(SID_ATTR_GRAF_RED,		pMod);
246cdf0e10cSrcweir 	SvxGrafGreenToolBoxControl		::RegisterControl(SID_ATTR_GRAF_GREEN,		pMod);
247cdf0e10cSrcweir 	SvxGrafBlueToolBoxControl		::RegisterControl(SID_ATTR_GRAF_BLUE,		pMod);
248cdf0e10cSrcweir 	SvxGrafLuminanceToolBoxControl	::RegisterControl(SID_ATTR_GRAF_LUMINANCE,	pMod);
249cdf0e10cSrcweir 	SvxGrafContrastToolBoxControl	::RegisterControl(SID_ATTR_GRAF_CONTRAST,	pMod);
250cdf0e10cSrcweir 	SvxGrafGammaToolBoxControl		::RegisterControl(SID_ATTR_GRAF_GAMMA,		pMod);
251cdf0e10cSrcweir 	SvxGrafTransparenceToolBoxControl::RegisterControl(SID_ATTR_GRAF_TRANSPARENCE, pMod);
252cdf0e10cSrcweir 	SvxGrafFilterToolBoxControl		::RegisterControl(SID_GRFFILTER,			pMod);
253cdf0e10cSrcweir 
254cdf0e10cSrcweir     SvxVertTextTbxCtrl::RegisterControl(SID_DRAW_CAPTION_VERTICAL,          pMod);
255cdf0e10cSrcweir     SvxVertTextTbxCtrl::RegisterControl(SID_DRAW_TEXT_VERTICAL,             pMod);
256cdf0e10cSrcweir     SvxVertTextTbxCtrl::RegisterControl(SID_TEXTDIRECTION_LEFT_TO_RIGHT,    pMod);
257cdf0e10cSrcweir     SvxVertTextTbxCtrl::RegisterControl(SID_TEXTDIRECTION_TOP_TO_BOTTOM,    pMod);
258cdf0e10cSrcweir     SvxCTLTextTbxCtrl::RegisterControl(SID_ATTR_PARA_LEFT_TO_RIGHT, pMod);
259cdf0e10cSrcweir     SvxCTLTextTbxCtrl::RegisterControl(SID_ATTR_PARA_RIGHT_TO_LEFT, pMod);
260cdf0e10cSrcweir 
261cdf0e10cSrcweir 	//Media Controller
262cdf0e10cSrcweir 	::avmedia::MediaToolBoxControl::RegisterControl( SID_AVMEDIA_TOOLBOX, pMod );
263cdf0e10cSrcweir 
264cdf0e10cSrcweir     // common SFX controller
265cdf0e10cSrcweir     ::sfx2::TaskPaneWrapper::RegisterChildWindow( sal_False, pMod );
266*7a32b0c8SAndre Fischer     ::sfx2::sidebar::SidebarChildWindow::RegisterChildWindow(NULL, pMod);
26722de8995SAndre Fischer 
268cdf0e10cSrcweir 	// Svx-StatusBar-Controller
269cdf0e10cSrcweir 	SvxInsertStatusBarControl		::RegisterControl(SID_ATTR_INSERT,		pMod);
270cdf0e10cSrcweir 	SvxSelectionModeControl			::RegisterControl(SID_STATUS_SELMODE,	pMod);
271cdf0e10cSrcweir 	SvxZoomStatusBarControl			::RegisterControl(SID_ATTR_ZOOM,		pMod);
272cdf0e10cSrcweir     SvxZoomSliderControl            ::RegisterControl(SID_ATTR_ZOOMSLIDER,  pMod);
273cdf0e10cSrcweir 	SvxModifyControl 				::RegisterControl(SID_DOC_MODIFIED,		pMod);
274cdf0e10cSrcweir 	XmlSecStatusBarControl          ::RegisterControl( SID_SIGNATURE,       pMod );
275cdf0e10cSrcweir 
276cdf0e10cSrcweir 	SvxPosSizeStatusBarControl		::RegisterControl(SID_ATTR_SIZE,		pMod);
277cdf0e10cSrcweir 
278cdf0e10cSrcweir 	// Svx-Menue-Controller
279cdf0e10cSrcweir 	SvxFontMenuControl				::RegisterControl(SID_ATTR_CHAR_FONT,		pMod);
280cdf0e10cSrcweir 	SvxFontSizeMenuControl			::RegisterControl(SID_ATTR_CHAR_FONTHEIGHT,	pMod);
281cdf0e10cSrcweir 
282cdf0e10cSrcweir 	// CustomShape extrusion controller
283cdf0e10cSrcweir 	svx::ExtrusionColorControl::RegisterControl( SID_EXTRUSION_3D_COLOR, pMod );
284cdf0e10cSrcweir 	svx::FontWorkShapeTypeControl::RegisterControl( SID_FONTWORK_SHAPE_TYPE, pMod );
285cdf0e10cSrcweir 
286cdf0e10cSrcweir 	//	Child-Windows
287cdf0e10cSrcweir 
288cdf0e10cSrcweir 	// Hack: Eingabezeile mit 42 registrieren, damit sie im PlugIn immer sichtbar ist
289cdf0e10cSrcweir 	ScInputWindowWrapper		::RegisterChildWindow(42, pMod, SFX_CHILDWIN_TASK|SFX_CHILDWIN_FORCEDOCK);
290cdf0e10cSrcweir     ScNavigatorDialogWrapper    ::RegisterChildWindowContext(
291cdf0e10cSrcweir             sal::static_int_cast<sal_uInt16>(ScTabViewShell::GetInterfaceId()), pMod);
292cdf0e10cSrcweir 	ScSolverDlgWrapper			::RegisterChildWindow(sal_False, pMod);
293cdf0e10cSrcweir     ScOptSolverDlgWrapper       ::RegisterChildWindow(sal_False, pMod);
294cdf0e10cSrcweir 	ScNameDlgWrapper			::RegisterChildWindow(sal_False, pMod);
295cdf0e10cSrcweir 	ScPivotLayoutWrapper		::RegisterChildWindow(sal_False, pMod);
296cdf0e10cSrcweir 	ScTabOpDlgWrapper			::RegisterChildWindow(sal_False, pMod);
297cdf0e10cSrcweir 	ScFilterDlgWrapper			::RegisterChildWindow(sal_False, pMod);
298cdf0e10cSrcweir 	ScSpecialFilterDlgWrapper	::RegisterChildWindow(sal_False, pMod);
299cdf0e10cSrcweir 	ScDbNameDlgWrapper			::RegisterChildWindow(sal_False, pMod);
300cdf0e10cSrcweir 	ScConsolidateDlgWrapper		::RegisterChildWindow(sal_False, pMod);
301cdf0e10cSrcweir 	ScPrintAreasDlgWrapper		::RegisterChildWindow(sal_False, pMod);
302cdf0e10cSrcweir 	ScCondFormatDlgWrapper		::RegisterChildWindow(sal_False, pMod);
303cdf0e10cSrcweir 	ScColRowNameRangesDlgWrapper::RegisterChildWindow(sal_False, pMod);
304cdf0e10cSrcweir 	ScFormulaDlgWrapper			::RegisterChildWindow(sal_False, pMod);
305cdf0e10cSrcweir 
306cdf0e10cSrcweir 	// First docking Window for Calc
307cdf0e10cSrcweir 	ScFunctionChildWindow		::RegisterChildWindow(sal_False, pMod);
308cdf0e10cSrcweir 
309cdf0e10cSrcweir 	// Redlining- Window
310cdf0e10cSrcweir 	ScAcceptChgDlgWrapper		::RegisterChildWindow(sal_False, pMod);
311cdf0e10cSrcweir     ScSimpleRefDlgWrapper       ::RegisterChildWindow(sal_False, pMod, SFX_CHILDWIN_ALWAYSAVAILABLE|SFX_CHILDWIN_NEVERHIDE );
312cdf0e10cSrcweir 	ScHighlightChgDlgWrapper	::RegisterChildWindow(sal_False, pMod);
313cdf0e10cSrcweir 
314cdf0e10cSrcweir     SvxSearchDialogWrapper      ::RegisterChildWindow(sal_False, pMod);
315cdf0e10cSrcweir     SvxHlinkDlgWrapper          ::RegisterChildWindow(sal_False, pMod);
316cdf0e10cSrcweir 	SvxFontWorkChildWindow		::RegisterChildWindow(sal_False, pMod);
317cdf0e10cSrcweir 	SvxHyperlinkDlgWrapper		::RegisterChildWindow(sal_False, pMod, SFX_CHILDWIN_FORCEDOCK);
318cdf0e10cSrcweir 	SvxIMapDlgChildWindow		::RegisterChildWindow(sal_False, pMod);
319cdf0e10cSrcweir 	GalleryChildWindow			::RegisterChildWindow(sal_False, pMod);
320cdf0e10cSrcweir     ScSpellDialogChildWindow    ::RegisterChildWindow(sal_False, pMod);
321cdf0e10cSrcweir 	::avmedia::MediaPlayer		::RegisterChildWindow(sal_False, pMod);
322cdf0e10cSrcweir 
323cdf0e10cSrcweir 	//<!--Added by PengYunQuan for Validity Cell Range Picker
324cdf0e10cSrcweir 	ScValidityRefChildWin::RegisterChildWindow(sal_False, pMod);
325cdf0e10cSrcweir 	//-->Added by PengYunQuan for Validity Cell Range Picker
326cdf0e10cSrcweir 
327cdf0e10cSrcweir 	//	Edit-Engine-Felder, soweit nicht schon in OfficeApplication::Init
328cdf0e10cSrcweir 
329cdf0e10cSrcweir 	SvClassManager& rClassManager = SvxFieldItem::GetClassManager();
330cdf0e10cSrcweir //	rClassManager.SV_CLASS_REGISTER( SvxURLField );
331cdf0e10cSrcweir //	rClassManager.SV_CLASS_REGISTER( SvxDateField );
332cdf0e10cSrcweir //	rClassManager.SV_CLASS_REGISTER( SvxPageField );
333cdf0e10cSrcweir 	rClassManager.SV_CLASS_REGISTER( SvxPagesField );
334cdf0e10cSrcweir //	rClassManager.SV_CLASS_REGISTER( SvxTimeField );
335cdf0e10cSrcweir 	rClassManager.SV_CLASS_REGISTER( SvxFileField );
336cdf0e10cSrcweir //	rClassManager.SV_CLASS_REGISTER( SvxExtFileField );
337cdf0e10cSrcweir 	rClassManager.SV_CLASS_REGISTER( SvxTableField );
338cdf0e10cSrcweir 
339cdf0e10cSrcweir 	SdrRegisterFieldClasses();		// SvDraw-Felder registrieren
340cdf0e10cSrcweir 
341cdf0e10cSrcweir 	// 3D-Objekt-Factory eintragen
342cdf0e10cSrcweir     E3dObjFactory();
343cdf0e10cSrcweir 
344cdf0e10cSrcweir     // ::com::sun::star::form::component::Form-Objekt-Factory eintragen
345cdf0e10cSrcweir     FmFormObjFactory();
346cdf0e10cSrcweir 
347cdf0e10cSrcweir     pMod->PutItem( SfxUInt16Item( SID_ATTR_METRIC, sal::static_int_cast<sal_uInt16>(pMod->GetAppOptions().GetAppMetric()) ) );
348cdf0e10cSrcweir 
349cdf0e10cSrcweir 	//	StarOne Services are now handled in the registry
350cdf0e10cSrcweir }
351cdf0e10cSrcweir 
Exit()352cdf0e10cSrcweir void ScDLL::Exit()
353cdf0e10cSrcweir {
354cdf0e10cSrcweir 	// the SxxModule must be destroyed
355cdf0e10cSrcweir 	ScModule **ppShlPtr = (ScModule**) GetAppData(SHL_CALC);
356cdf0e10cSrcweir 	delete (*ppShlPtr);
357cdf0e10cSrcweir 	(*ppShlPtr) = NULL;
358cdf0e10cSrcweir 
359cdf0e10cSrcweir 	//	ScGlobal::Clear ist schon im Module-dtor
360cdf0e10cSrcweir }
361cdf0e10cSrcweir 
362cdf0e10cSrcweir // DetectFilter functionality has moved - please update your bookmarks
363cdf0e10cSrcweir // see sc/source/ui/unoobj/scdetect.cxx, have a nice day.
364