xref: /aoo41x/main/sc/source/ui/inc/tabvwsh.hxx (revision 38d50f7b)
1*38d50f7bSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*38d50f7bSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*38d50f7bSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*38d50f7bSAndrew Rist  * distributed with this work for additional information
6*38d50f7bSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*38d50f7bSAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*38d50f7bSAndrew Rist  * "License"); you may not use this file except in compliance
9*38d50f7bSAndrew Rist  * with the License.  You may obtain a copy of the License at
10*38d50f7bSAndrew Rist  *
11*38d50f7bSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*38d50f7bSAndrew Rist  *
13*38d50f7bSAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*38d50f7bSAndrew Rist  * software distributed under the License is distributed on an
15*38d50f7bSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*38d50f7bSAndrew Rist  * KIND, either express or implied.  See the License for the
17*38d50f7bSAndrew Rist  * specific language governing permissions and limitations
18*38d50f7bSAndrew Rist  * under the License.
19*38d50f7bSAndrew Rist  *
20*38d50f7bSAndrew Rist  *************************************************************/
21*38d50f7bSAndrew Rist 
22*38d50f7bSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef SC_TABVWSH_HXX
25cdf0e10cSrcweir #define SC_TABVWSH_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #include <svtools/htmlcfg.hxx>
28cdf0e10cSrcweir #include <sfx2/viewsh.hxx>
29cdf0e10cSrcweir #include <sfx2/viewfac.hxx>
30cdf0e10cSrcweir #include <editeng/svxenum.hxx>
31cdf0e10cSrcweir #include "scdllapi.h"
32cdf0e10cSrcweir #include "dbfunc.hxx"			// -> tabview
33cdf0e10cSrcweir #include "target.hxx"
34cdf0e10cSrcweir #include "rangelst.hxx"			// ScRangeListRef
35cdf0e10cSrcweir #include "shellids.hxx"
36cdf0e10cSrcweir #include "tabprotection.hxx" // for ScPasswordHash
37cdf0e10cSrcweir 
38cdf0e10cSrcweir class FmFormShell;
39cdf0e10cSrcweir class SbxObject;
40cdf0e10cSrcweir class SdrOle2Obj;
41cdf0e10cSrcweir class SfxBindings;
42cdf0e10cSrcweir class SfxChildWindow;
43cdf0e10cSrcweir class SfxModelessDialog;
44cdf0e10cSrcweir class SvxBorderLine;
45cdf0e10cSrcweir class SvxBoxObjectRef;
46cdf0e10cSrcweir class SvxNumberInfoItem;
47cdf0e10cSrcweir struct SfxChildWinInfo;
48cdf0e10cSrcweir 
49cdf0e10cSrcweir class ScArea;
50cdf0e10cSrcweir class ScAuditingShell;
51cdf0e10cSrcweir class ScDrawShell;
52cdf0e10cSrcweir class ScDrawTextObjectBar;
53cdf0e10cSrcweir class ScEditShell;
54cdf0e10cSrcweir class ScInputHandler;
55cdf0e10cSrcweir class ScPivotShell;
56cdf0e10cSrcweir class ScDrawFormShell;
57cdf0e10cSrcweir class ScCellShell;
58cdf0e10cSrcweir class ScOleObjectShell;
59cdf0e10cSrcweir class ScGraphicShell;
60cdf0e10cSrcweir class ScMediaShell;
61cdf0e10cSrcweir class ScChartShell;
62cdf0e10cSrcweir class ScPageBreakShell;
63cdf0e10cSrcweir class ScDPObject;
64cdf0e10cSrcweir class ScNavigatorSettings;
65cdf0e10cSrcweir 
66cdf0e10cSrcweir struct ScHeaderFieldData;
67cdf0e10cSrcweir 
68cdf0e10cSrcweir namespace com { namespace sun { namespace star { namespace frame {
69cdf0e10cSrcweir 	class XDispatchProviderInterceptor;
70cdf0e10cSrcweir } } } }
71cdf0e10cSrcweir 
72cdf0e10cSrcweir namespace svx {
73cdf0e10cSrcweir 	class ExtrusionBar;
74cdf0e10cSrcweir 	class FontworkBar;
75cdf0e10cSrcweir }
76cdf0e10cSrcweir 
77cdf0e10cSrcweir enum ObjectSelectionType
78cdf0e10cSrcweir {
79cdf0e10cSrcweir 	OST_NONE,
80cdf0e10cSrcweir 	OST_Cell,
81cdf0e10cSrcweir 	OST_Editing,
82cdf0e10cSrcweir 	OST_DrawText,
83cdf0e10cSrcweir 	OST_Drawing,
84cdf0e10cSrcweir 	OST_DrawForm,
85cdf0e10cSrcweir 	OST_Pivot,
86cdf0e10cSrcweir 	OST_Auditing,
87cdf0e10cSrcweir 	OST_OleObject,
88cdf0e10cSrcweir 	OST_Chart,
89cdf0e10cSrcweir 	OST_Graphic,
90cdf0e10cSrcweir 	OST_Media
91cdf0e10cSrcweir };
92cdf0e10cSrcweir 
93cdf0e10cSrcweir //==================================================================
94cdf0e10cSrcweir 
95cdf0e10cSrcweir 
96cdf0e10cSrcweir class ScTabViewShell: public SfxViewShell, public ScDBFunc
97cdf0e10cSrcweir {
98cdf0e10cSrcweir private:
99cdf0e10cSrcweir 	static sal_uInt16			nInsertCtrlState;
100cdf0e10cSrcweir 	static sal_uInt16			nInsCellsCtrlState;
101cdf0e10cSrcweir 	static sal_uInt16			nInsObjCtrlState;
102cdf0e10cSrcweir 
103cdf0e10cSrcweir     SvxHtmlOptions          aHTMLOpt;
104cdf0e10cSrcweir 	ObjectSelectionType		eCurOST;
105cdf0e10cSrcweir 	sal_uInt16					nDrawSfxId;
106cdf0e10cSrcweir 	sal_uInt16					nCtrlSfxId;
107cdf0e10cSrcweir 	sal_uInt16					nFormSfxId;
108cdf0e10cSrcweir     String                  sDrawCustom;                // current custom shape type
109cdf0e10cSrcweir 	ScDrawShell*			pDrawShell;
110cdf0e10cSrcweir 	ScDrawTextObjectBar*	pDrawTextShell;
111cdf0e10cSrcweir 	ScEditShell*			pEditShell;
112cdf0e10cSrcweir 	ScPivotShell*			pPivotShell;
113cdf0e10cSrcweir 	ScAuditingShell*		pAuditingShell;
114cdf0e10cSrcweir 	ScDrawFormShell*		pDrawFormShell;
115cdf0e10cSrcweir 	ScCellShell*			pCellShell;
116cdf0e10cSrcweir 	ScOleObjectShell*		pOleObjectShell;
117cdf0e10cSrcweir 	ScChartShell*			pChartShell;
118cdf0e10cSrcweir 	ScGraphicShell*			pGraphicShell;
119cdf0e10cSrcweir 	ScMediaShell*			pMediaShell;
120cdf0e10cSrcweir 	ScPageBreakShell*		pPageBreakShell;
121cdf0e10cSrcweir 	svx::ExtrusionBar*		pExtrusionBarShell;
122cdf0e10cSrcweir 	svx::FontworkBar*		pFontworkBarShell;
123cdf0e10cSrcweir 
124cdf0e10cSrcweir 	FmFormShell*			pFormShell;
125cdf0e10cSrcweir 
126cdf0e10cSrcweir 	ScInputHandler*			pInputHandler;				// fuer OLE-Eingabezeile
127cdf0e10cSrcweir 
128cdf0e10cSrcweir 	SvxBorderLine*			pCurFrameLine;
129cdf0e10cSrcweir 
130cdf0e10cSrcweir 	::com::sun::star::uno::Reference<
131cdf0e10cSrcweir 		::com::sun::star::frame::XDispatchProviderInterceptor >
132cdf0e10cSrcweir 							xDisProvInterceptor;
133cdf0e10cSrcweir 
134cdf0e10cSrcweir 	Point					aWinPos;
135cdf0e10cSrcweir 
136cdf0e10cSrcweir 	ScTabViewTarget			aTarget;
137cdf0e10cSrcweir 	ScArea*					pPivotSource;
138cdf0e10cSrcweir 	ScDPObject*				pDialogDPObject;
139cdf0e10cSrcweir 
140cdf0e10cSrcweir     ScNavigatorSettings*    pNavSettings;
141cdf0e10cSrcweir 
142cdf0e10cSrcweir     // used in first Activate
143cdf0e10cSrcweir 	sal_Bool					bFirstActivate;
144cdf0e10cSrcweir 
145cdf0e10cSrcweir 	sal_Bool					bActiveDrawSh;
146cdf0e10cSrcweir 	sal_Bool					bActiveDrawTextSh;
147cdf0e10cSrcweir 	sal_Bool					bActivePivotSh;
148cdf0e10cSrcweir 	sal_Bool					bActiveAuditingSh;
149cdf0e10cSrcweir 	sal_Bool					bActiveDrawFormSh;
150cdf0e10cSrcweir 	sal_Bool					bActiveOleObjectSh;
151cdf0e10cSrcweir 	sal_Bool					bActiveChartSh;
152cdf0e10cSrcweir 	sal_Bool					bActiveGraphicSh;
153cdf0e10cSrcweir 	sal_Bool					bActiveMediaSh;
154cdf0e10cSrcweir 	sal_Bool					bActiveEditSh;
155cdf0e10cSrcweir 
156cdf0e10cSrcweir 	sal_Bool                    bFormShellAtTop;            // does the FormShell need to be on top?
157cdf0e10cSrcweir 
158cdf0e10cSrcweir 
159cdf0e10cSrcweir 	sal_Bool					bDontSwitch;				// EditShell nicht abschalten
160cdf0e10cSrcweir 	sal_Bool					bInFormatDialog;			// fuer GetSelectionText
161cdf0e10cSrcweir 	sal_Bool					bPrintSelected;				// for result of SvxPrtQryBox
162cdf0e10cSrcweir 
163cdf0e10cSrcweir 	sal_Bool					bReadOnly;					// um Status-Aenderungen zu erkennen
164cdf0e10cSrcweir 
165cdf0e10cSrcweir 	SbxObject*				pScSbxObject;
166cdf0e10cSrcweir 
167cdf0e10cSrcweir //UNUSED2008-05  sal_Bool                    bChartDlgIsEdit;            // Datenbereich aendern
168cdf0e10cSrcweir 	sal_Bool					bChartAreaValid;			// wenn Chart aufgezogen wird
169cdf0e10cSrcweir 	String					aEditChartName;
170cdf0e10cSrcweir 	ScRangeListRef			aChartSource;
171cdf0e10cSrcweir 	Rectangle				aChartPos;
172cdf0e10cSrcweir 	SCTAB					nChartDestTab;
173cdf0e10cSrcweir 	sal_uInt16					nCurRefDlgId;
174cdf0e10cSrcweir 
175cdf0e10cSrcweir 	SfxBroadcaster*			pAccessibilityBroadcaster;
176cdf0e10cSrcweir 
177cdf0e10cSrcweir 	static const int		MASTERENUMCOMMANDS = 6;
178cdf0e10cSrcweir     String					aCurrShapeEnumCommand[ MASTERENUMCOMMANDS ];
179cdf0e10cSrcweir 
180cdf0e10cSrcweir private:
181cdf0e10cSrcweir 	void	Construct( sal_uInt8 nForceDesignMode = SC_FORCEMODE_NONE );
182cdf0e10cSrcweir 
183cdf0e10cSrcweir //UNUSED2008-05  void          SetMySubShell( SfxShell* pShell );
184cdf0e10cSrcweir 	SfxShell*		GetMySubShell() const;
185cdf0e10cSrcweir 
186cdf0e10cSrcweir 	void			DoReadUserData( const String& rData );
187cdf0e10cSrcweir     void          DoReadUserDataSequence( const ::com::sun::star::uno::Sequence<
188cdf0e10cSrcweir                                      ::com::sun::star::beans::PropertyValue >& rSettings );
189cdf0e10cSrcweir 
190cdf0e10cSrcweir 	DECL_LINK( SimpleRefClose, String* );
191cdf0e10cSrcweir 	DECL_LINK( SimpleRefDone, String* );
192cdf0e10cSrcweir 	DECL_LINK( SimpleRefAborted, String* );
193cdf0e10cSrcweir 	DECL_LINK( SimpleRefChange, String* );
194cdf0e10cSrcweir     DECL_LINK( FormControlActivated, FmFormShell* );
195cdf0e10cSrcweir 	DECL_LINK( HtmlOptionsHdl, void * );
196cdf0e10cSrcweir 
197cdf0e10cSrcweir protected:
198cdf0e10cSrcweir 	virtual void	Activate(sal_Bool bMDI);
199cdf0e10cSrcweir 	virtual void	Deactivate(sal_Bool bMDI);
200cdf0e10cSrcweir 	virtual sal_uInt16	PrepareClose( sal_Bool bUI = sal_True, sal_Bool bForBrowsing = sal_False );
201cdf0e10cSrcweir 
202cdf0e10cSrcweir 	virtual void	ShowCursor(FASTBOOL bOn);
203cdf0e10cSrcweir 
204cdf0e10cSrcweir 	virtual void	Move();		// Benachrichtigung
205cdf0e10cSrcweir 
206cdf0e10cSrcweir 	virtual void	AdjustPosSizePixel( const Point &rPos, const Size &rSize );		// alt
207cdf0e10cSrcweir 
208cdf0e10cSrcweir 	virtual void	InnerResizePixel( const Point &rOfs, const Size &rSize );		// neu
209cdf0e10cSrcweir 	virtual void	OuterResizePixel( const Point &rOfs, const Size &rSize );
210cdf0e10cSrcweir 	virtual void	SetZoomFactor( const Fraction &rZoomX, const Fraction &rZoomY );
211cdf0e10cSrcweir 
212cdf0e10cSrcweir 	virtual void	QueryObjAreaPixel( Rectangle& rRect ) const;
213cdf0e10cSrcweir 
214cdf0e10cSrcweir 	virtual Size	GetOptimalSizePixel() const;
215cdf0e10cSrcweir 
216cdf0e10cSrcweir 	virtual String  GetSelectionText( sal_Bool bWholeWord );
217cdf0e10cSrcweir 	virtual sal_Bool	HasSelection( sal_Bool bText ) const;
218cdf0e10cSrcweir 	virtual String  GetDescription() const;
219cdf0e10cSrcweir 
220cdf0e10cSrcweir 	virtual void	WriteUserData(String &, sal_Bool bBrowse = sal_False);
221cdf0e10cSrcweir 	virtual void	ReadUserData(const String &, sal_Bool bBrowse = sal_False);
222cdf0e10cSrcweir     virtual void    WriteUserDataSequence (::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
223cdf0e10cSrcweir     virtual void    ReadUserDataSequence (const ::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
224cdf0e10cSrcweir 
225cdf0e10cSrcweir     virtual void    UIDeactivated( SfxInPlaceClient* pClient );
226cdf0e10cSrcweir 
227cdf0e10cSrcweir 	virtual FASTBOOL KeyInput( const KeyEvent &rKeyEvent );
228cdf0e10cSrcweir 	virtual SdrView* GetDrawView() const;
229cdf0e10cSrcweir 
230cdf0e10cSrcweir public:
231cdf0e10cSrcweir 					TYPEINFO_VISIBILITY(SC_DLLPUBLIC);
232cdf0e10cSrcweir 
233cdf0e10cSrcweir 					SFX_DECL_INTERFACE(SCID_TABVIEW_SHELL)
234cdf0e10cSrcweir 					SFX_DECL_VIEWFACTORY(ScTabViewShell);
235cdf0e10cSrcweir 
236cdf0e10cSrcweir 
237cdf0e10cSrcweir 					// -> Clone-Methode fuer Factory
238cdf0e10cSrcweir 
239cdf0e10cSrcweir //UNUSED2008-05  ScTabViewShell( SfxViewFrame*           pViewFrame,
240cdf0e10cSrcweir //UNUSED2008-05                  const ScTabViewShell&   rWin );
241cdf0e10cSrcweir 
242cdf0e10cSrcweir 					// aus einer allgemeinen Shell konstruieren und
243cdf0e10cSrcweir 					// soviel wie moeglich uebernehmen (SliderPos etc.):
244cdf0e10cSrcweir 
245cdf0e10cSrcweir 					ScTabViewShell( SfxViewFrame*			pViewFrame,
246cdf0e10cSrcweir 									SfxViewShell*			pOldSh );
247cdf0e10cSrcweir 
248cdf0e10cSrcweir 	virtual			~ScTabViewShell();
249cdf0e10cSrcweir 
250cdf0e10cSrcweir 	Window*			GetDialogParent();
251cdf0e10cSrcweir 
252cdf0e10cSrcweir     bool            IsRefInputMode() const;
253cdf0e10cSrcweir 	void			ExecuteInputDirect();
254cdf0e10cSrcweir 
255cdf0e10cSrcweir 	ScInputHandler*	GetInputHandler() const;
256cdf0e10cSrcweir 	void			UpdateInputHandler( sal_Bool bForce = sal_False, sal_Bool bStopEditing = sal_True );
257cdf0e10cSrcweir     void            UpdateInputHandlerCellAdjust( SvxCellHorJustify eJust );
258cdf0e10cSrcweir 	sal_Bool			TabKeyInput(const KeyEvent& rKEvt);
259cdf0e10cSrcweir 	sal_Bool			SfxKeyInput(const KeyEvent& rKEvt);
260cdf0e10cSrcweir 
261cdf0e10cSrcweir 	void			SetActive();
262cdf0e10cSrcweir 
263cdf0e10cSrcweir 	SvxBorderLine*	GetDefaultFrameLine() const { return pCurFrameLine; }
264cdf0e10cSrcweir 	void 			SetDefaultFrameLine(const SvxBorderLine* pLine );
265cdf0e10cSrcweir 
266cdf0e10cSrcweir //UNUSED2008-05  void            ExecuteShowNIY( SfxRequest& rReq );
267cdf0e10cSrcweir //UNUSED2008-05  void			StateDisabled( SfxItemSet& rSet );
268cdf0e10cSrcweir 
269cdf0e10cSrcweir 	SC_DLLPUBLIC void			Execute( SfxRequest& rReq );
270cdf0e10cSrcweir 	SC_DLLPUBLIC void			GetState( SfxItemSet& rSet );
271cdf0e10cSrcweir 
272cdf0e10cSrcweir 	void			ExecuteTable( SfxRequest& rReq );
273cdf0e10cSrcweir 	void			GetStateTable( SfxItemSet& rSet );
274cdf0e10cSrcweir 
275cdf0e10cSrcweir 	void			WindowChanged();
276cdf0e10cSrcweir 	void 			ExecDraw(SfxRequest&);
277cdf0e10cSrcweir 	void			ExecDrawIns(SfxRequest& rReq);
278cdf0e10cSrcweir 	void 			GetDrawState(SfxItemSet &rSet);
279cdf0e10cSrcweir 	void 			GetDrawInsState(SfxItemSet &rSet);
280cdf0e10cSrcweir 	void			ExecGallery(SfxRequest& rReq);		// StarGallery
281cdf0e10cSrcweir 	void			GetGalleryState(SfxItemSet& rSet);
282cdf0e10cSrcweir 
283cdf0e10cSrcweir 	void			ExecChildWin(SfxRequest& rReq);
284cdf0e10cSrcweir 	void			GetChildWinState( SfxItemSet& rSet );
285cdf0e10cSrcweir 
286cdf0e10cSrcweir 	void			ExecImageMap( SfxRequest& rReq );
287cdf0e10cSrcweir 	void			GetImageMapState( SfxItemSet& rSet );
288cdf0e10cSrcweir 
289cdf0e10cSrcweir 	void			ExecTbx( SfxRequest& rReq );
290cdf0e10cSrcweir 	void			GetTbxState( SfxItemSet& rSet );
291cdf0e10cSrcweir 
292cdf0e10cSrcweir 	void			ExecuteSave( SfxRequest& rReq );
293cdf0e10cSrcweir 	void			GetSaveState( SfxItemSet& rSet );
294cdf0e10cSrcweir 	void			ExecSearch( SfxRequest& rReq );
295cdf0e10cSrcweir 
296cdf0e10cSrcweir 	void			ExecuteUndo(SfxRequest& rReq);
297cdf0e10cSrcweir 	void			GetUndoState(SfxItemSet &rSet);
298cdf0e10cSrcweir 
299cdf0e10cSrcweir 	void			ExecuteSbx( SfxRequest& rReq );
300cdf0e10cSrcweir 	void			GetSbxState( SfxItemSet& rSet );
301cdf0e10cSrcweir 
302cdf0e10cSrcweir 	void			ExecuteObject(SfxRequest& rReq);
303cdf0e10cSrcweir 	void			GetObjectState(SfxItemSet &rSet);
304cdf0e10cSrcweir 
305cdf0e10cSrcweir 	void			ExecDrawOpt(SfxRequest& rReq);
306cdf0e10cSrcweir 	void			GetDrawOptState(SfxItemSet &rSet);
307cdf0e10cSrcweir 
308cdf0e10cSrcweir     void            UpdateDrawShell();
309cdf0e10cSrcweir 	void			SetDrawShell( sal_Bool bActive );
310cdf0e10cSrcweir 	void			SetDrawTextShell( sal_Bool bActive );
311cdf0e10cSrcweir 
312cdf0e10cSrcweir 	void			SetPivotShell( sal_Bool bActive );
313cdf0e10cSrcweir 	ScArea*			GetPivotSource(){return pPivotSource;}
314cdf0e10cSrcweir 	void			SetPivotSource(ScArea* pSrc){pPivotSource=pSrc;}
315cdf0e10cSrcweir 	void			SetDialogDPObject( const ScDPObject* pObj );
316cdf0e10cSrcweir 	const ScDPObject* GetDialogDPObject() const { return pDialogDPObject; }
317cdf0e10cSrcweir 
318cdf0e10cSrcweir 	sal_Bool			GetDontSwitch(){return bDontSwitch;}
319cdf0e10cSrcweir 	void			SetDontSwitch(sal_Bool bFlag){bDontSwitch=bFlag;}
320cdf0e10cSrcweir 
321cdf0e10cSrcweir 
322cdf0e10cSrcweir 	void			SetAuditShell( sal_Bool bActive );
323cdf0e10cSrcweir 	void			SetDrawFormShell( sal_Bool bActive );
324cdf0e10cSrcweir 	void			SetEditShell(EditView* pView, sal_Bool bActive );
325cdf0e10cSrcweir 	void			SetOleObjectShell( sal_Bool bActive );
326cdf0e10cSrcweir 	void			SetChartShell( sal_Bool bActive );
327cdf0e10cSrcweir 	void			SetGraphicShell( sal_Bool bActive );
328cdf0e10cSrcweir 	void			SetMediaShell( sal_Bool bActive );
329cdf0e10cSrcweir 
330cdf0e10cSrcweir 
331cdf0e10cSrcweir 	void			SetDrawShellOrSub();
332cdf0e10cSrcweir 	void			SetCurSubShell( ObjectSelectionType eOST, sal_Bool bForce = sal_False );
333cdf0e10cSrcweir 
334cdf0e10cSrcweir     void            SetFormShellAtTop( sal_Bool bSet );
335cdf0e10cSrcweir 
336cdf0e10cSrcweir 	ObjectSelectionType GetCurObjectSelectionType();
337cdf0e10cSrcweir 
338cdf0e10cSrcweir 	virtual ErrCode	DoVerb(long nVerb);
339cdf0e10cSrcweir 
340cdf0e10cSrcweir 
341cdf0e10cSrcweir 	void			StopEditShell();
342cdf0e10cSrcweir 	sal_Bool			IsDrawTextShell() const;
343cdf0e10cSrcweir 	sal_Bool			IsAuditShell() const;
344cdf0e10cSrcweir 
345cdf0e10cSrcweir 	void			SetDrawTextUndo( ::svl::IUndoManager* pUndoMgr );
346cdf0e10cSrcweir 
347cdf0e10cSrcweir 	void			FillFieldData( ScHeaderFieldData& rData );
348cdf0e10cSrcweir 
349cdf0e10cSrcweir //UNUSED2008-05  void            ResetChartArea();
350cdf0e10cSrcweir 	void			SetChartArea( const ScRangeListRef& rSource, const Rectangle& rDest );
351cdf0e10cSrcweir 	sal_Bool			GetChartArea( ScRangeListRef& rSource, Rectangle& rDest, SCTAB& rTab ) const;
352cdf0e10cSrcweir 
353cdf0e10cSrcweir //UNUSED2008-05  sal_Bool            IsChartDlgEdit() const;
354cdf0e10cSrcweir //UNUSED2008-05  void            SetChartDlgEdit(sal_Bool bFlag){bChartDlgIsEdit=bFlag;}
355cdf0e10cSrcweir 
356cdf0e10cSrcweir 	void			SetEditChartName(const String& aStr){aEditChartName=aStr;}
357cdf0e10cSrcweir //UNUSED2008-05  const String&   GetEditChartName() const;
358cdf0e10cSrcweir 
359cdf0e10cSrcweir 	virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
360cdf0e10cSrcweir 
361cdf0e10cSrcweir     ScNavigatorSettings*    GetNavigatorSettings();
362cdf0e10cSrcweir 
363cdf0e10cSrcweir 	// Drucken:
364cdf0e10cSrcweir 	virtual SfxPrinter*		GetPrinter( sal_Bool bCreate = sal_False );
365cdf0e10cSrcweir 	virtual sal_uInt16			SetPrinter( SfxPrinter* pNewPrinter,
366cdf0e10cSrcweir                                           sal_uInt16 nDiffFlags = SFX_PRINTER_ALL, bool bIsApi=false );
367cdf0e10cSrcweir 
368cdf0e10cSrcweir 	virtual SfxTabPage*     CreatePrintOptionsPage( Window *pParent, const SfxItemSet &rOptions );
369cdf0e10cSrcweir 
370cdf0e10cSrcweir 	void			ConnectObject( SdrOle2Obj* pObj );
371cdf0e10cSrcweir 	sal_Bool			ActivateObject( SdrOle2Obj* pObj, long nVerb );
372cdf0e10cSrcweir 
373cdf0e10cSrcweir     void            DeactivateOle();
374cdf0e10cSrcweir 
375cdf0e10cSrcweir 	SC_DLLPUBLIC static ScTabViewShell* GetActiveViewShell();
376cdf0e10cSrcweir 	SfxModelessDialog*	CreateRefDialog( SfxBindings* pB, SfxChildWindow* pCW,
377cdf0e10cSrcweir 										SfxChildWinInfo* pInfo,
378cdf0e10cSrcweir 										Window* pParent, sal_uInt16 nSlotId );
379cdf0e10cSrcweir 
380cdf0e10cSrcweir 	void			UpdateOleZoom();
381cdf0e10cSrcweir 	inline SbxObject* GetScSbxObject() const
382cdf0e10cSrcweir 					{ return pScSbxObject; }
383cdf0e10cSrcweir 	inline void		SetScSbxObject( SbxObject* pOb )
384cdf0e10cSrcweir 					{ pScSbxObject = pOb; }
385cdf0e10cSrcweir 
386cdf0e10cSrcweir 	FmFormShell*	GetFormShell() const	{ return pFormShell; }
387cdf0e10cSrcweir 
388cdf0e10cSrcweir 	void 	InsertURL( const String& rName, const String& rURL, const String& rTarget,
389cdf0e10cSrcweir 							sal_uInt16 nMode );
390cdf0e10cSrcweir 	void 	InsertURLButton( const String& rName, const String& rURL, const String& rTarget,
391cdf0e10cSrcweir 							const Point* pInsPos = NULL );
392cdf0e10cSrcweir 	void 	InsertURLField( const String& rName, const String& rURL, const String& rTarget );
393cdf0e10cSrcweir 
394cdf0e10cSrcweir 	sal_Bool	SelectObject( const String& rName );
395cdf0e10cSrcweir 
396cdf0e10cSrcweir 	void	SetInFormatDialog(sal_Bool bFlag) {bInFormatDialog=bFlag;}
397cdf0e10cSrcweir 	sal_Bool    IsInFormatDialog() {return bInFormatDialog;}
398cdf0e10cSrcweir 
399cdf0e10cSrcweir 	void	ForceMove()		{ Move(); }
400cdf0e10cSrcweir 
401cdf0e10cSrcweir 	void 	MakeNumberInfoItem		( ScDocument*			 pDoc,
402cdf0e10cSrcweir 									  ScViewData*			 pViewData,
403cdf0e10cSrcweir 									  SvxNumberInfoItem**	 ppItem );
404cdf0e10cSrcweir 
405cdf0e10cSrcweir 	void 	UpdateNumberFormatter	( ScDocument*		     	pDoc,
406cdf0e10cSrcweir 									  const SvxNumberInfoItem& 	rInfoItem );
407cdf0e10cSrcweir 
408cdf0e10cSrcweir 	void	ExecuteCellFormatDlg	( SfxRequest& rReq, sal_uInt16 nTabPage = 0xffff );
409cdf0e10cSrcweir 
410cdf0e10cSrcweir 	sal_Bool	GetFunction( String& rFuncStr, sal_uInt16 nErrCode = 0 );
411cdf0e10cSrcweir 
412cdf0e10cSrcweir 	void	StartSimpleRefDialog( const String& rTitle, const String& rInitVal,
413cdf0e10cSrcweir                                     sal_Bool bCloseOnButtonUp, sal_Bool bSingleCell, sal_Bool bMultiSelection );
414cdf0e10cSrcweir 	void	StopSimpleRefDialog();
415cdf0e10cSrcweir 
416cdf0e10cSrcweir 	void	SetCurRefDlgId( sal_uInt16 nNew );
417cdf0e10cSrcweir 
418cdf0e10cSrcweir 	void	AddAccessibilityObject( SfxListener& rObject );
419cdf0e10cSrcweir 	void	RemoveAccessibilityObject( SfxListener& rObject );
420cdf0e10cSrcweir 	void	BroadcastAccessibility( const SfxHint &rHint );
421cdf0e10cSrcweir 	sal_Bool	HasAccessibilityObjects();
422cdf0e10cSrcweir 
423cdf0e10cSrcweir     bool    ExecuteRetypePassDlg(ScPasswordHash eDesiredHash);
424cdf0e10cSrcweir 
425cdf0e10cSrcweir     using ScTabView::ShowCursor;
426cdf0e10cSrcweir };
427cdf0e10cSrcweir 
428cdf0e10cSrcweir //==================================================================
429cdf0e10cSrcweir 
430cdf0e10cSrcweir 
431cdf0e10cSrcweir #endif
432cdf0e10cSrcweir 
433