xref: /aoo41x/main/sc/source/ui/inc/tabvwsh.hxx (revision 4b4244d8)
138d50f7bSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
338d50f7bSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
438d50f7bSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
538d50f7bSAndrew Rist  * distributed with this work for additional information
638d50f7bSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
738d50f7bSAndrew Rist  * to you under the Apache License, Version 2.0 (the
838d50f7bSAndrew Rist  * "License"); you may not use this file except in compliance
938d50f7bSAndrew Rist  * with the License.  You may obtain a copy of the License at
1038d50f7bSAndrew Rist  *
1138d50f7bSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
1238d50f7bSAndrew Rist  *
1338d50f7bSAndrew Rist  * Unless required by applicable law or agreed to in writing,
1438d50f7bSAndrew Rist  * software distributed under the License is distributed on an
1538d50f7bSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
1638d50f7bSAndrew Rist  * KIND, either express or implied.  See the License for the
1738d50f7bSAndrew Rist  * specific language governing permissions and limitations
1838d50f7bSAndrew Rist  * under the License.
1938d50f7bSAndrew Rist  *
2038d50f7bSAndrew Rist  *************************************************************/
2138d50f7bSAndrew Rist 
2238d50f7bSAndrew 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
1640deba7fbSSteve Yin 	sal_Bool 					bIsActive;
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 
180*4b4244d8SSteve Yin 	sal_Bool	bForceFocusOnCurCell; // i123629
181*4b4244d8SSteve Yin 
182cdf0e10cSrcweir private:
183cdf0e10cSrcweir 	void	Construct( sal_uInt8 nForceDesignMode = SC_FORCEMODE_NONE );
184cdf0e10cSrcweir 
185cdf0e10cSrcweir //UNUSED2008-05  void          SetMySubShell( SfxShell* pShell );
186cdf0e10cSrcweir 	SfxShell*		GetMySubShell() const;
187cdf0e10cSrcweir 
188cdf0e10cSrcweir 	void			DoReadUserData( const String& rData );
189cdf0e10cSrcweir     void          DoReadUserDataSequence( const ::com::sun::star::uno::Sequence<
190cdf0e10cSrcweir                                      ::com::sun::star::beans::PropertyValue >& rSettings );
191cdf0e10cSrcweir 
192cdf0e10cSrcweir 	DECL_LINK( SimpleRefClose, String* );
193cdf0e10cSrcweir 	DECL_LINK( SimpleRefDone, String* );
194cdf0e10cSrcweir 	DECL_LINK( SimpleRefAborted, String* );
195cdf0e10cSrcweir 	DECL_LINK( SimpleRefChange, String* );
196cdf0e10cSrcweir     DECL_LINK( FormControlActivated, FmFormShell* );
197cdf0e10cSrcweir 	DECL_LINK( HtmlOptionsHdl, void * );
198cdf0e10cSrcweir 
199cdf0e10cSrcweir protected:
200cdf0e10cSrcweir 	virtual void	Activate(sal_Bool bMDI);
201cdf0e10cSrcweir 	virtual void	Deactivate(sal_Bool bMDI);
202cdf0e10cSrcweir 	virtual sal_uInt16	PrepareClose( sal_Bool bUI = sal_True, sal_Bool bForBrowsing = sal_False );
203cdf0e10cSrcweir 
204cdf0e10cSrcweir 	virtual void	ShowCursor(FASTBOOL bOn);
205cdf0e10cSrcweir 
206cdf0e10cSrcweir 	virtual void	Move();		// Benachrichtigung
207cdf0e10cSrcweir 
208cdf0e10cSrcweir 	virtual void	AdjustPosSizePixel( const Point &rPos, const Size &rSize );		// alt
209cdf0e10cSrcweir 
210cdf0e10cSrcweir 	virtual void	InnerResizePixel( const Point &rOfs, const Size &rSize );		// neu
211cdf0e10cSrcweir 	virtual void	OuterResizePixel( const Point &rOfs, const Size &rSize );
212cdf0e10cSrcweir 	virtual void	SetZoomFactor( const Fraction &rZoomX, const Fraction &rZoomY );
213cdf0e10cSrcweir 
214cdf0e10cSrcweir 	virtual void	QueryObjAreaPixel( Rectangle& rRect ) const;
215cdf0e10cSrcweir 
216cdf0e10cSrcweir 	virtual Size	GetOptimalSizePixel() const;
217cdf0e10cSrcweir 
218cdf0e10cSrcweir 	virtual String  GetSelectionText( sal_Bool bWholeWord );
219cdf0e10cSrcweir 	virtual sal_Bool	HasSelection( sal_Bool bText ) const;
220cdf0e10cSrcweir 	virtual String  GetDescription() const;
221cdf0e10cSrcweir 
222cdf0e10cSrcweir 	virtual void	WriteUserData(String &, sal_Bool bBrowse = sal_False);
223cdf0e10cSrcweir 	virtual void	ReadUserData(const String &, sal_Bool bBrowse = sal_False);
224cdf0e10cSrcweir     virtual void    WriteUserDataSequence (::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
225cdf0e10cSrcweir     virtual void    ReadUserDataSequence (const ::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
226cdf0e10cSrcweir 
227cdf0e10cSrcweir     virtual void    UIDeactivated( SfxInPlaceClient* pClient );
228cdf0e10cSrcweir 
229cdf0e10cSrcweir 	virtual FASTBOOL KeyInput( const KeyEvent &rKeyEvent );
230cdf0e10cSrcweir 	virtual SdrView* GetDrawView() const;
231cdf0e10cSrcweir 
232cdf0e10cSrcweir public:
233cdf0e10cSrcweir 					TYPEINFO_VISIBILITY(SC_DLLPUBLIC);
234cdf0e10cSrcweir 
235cdf0e10cSrcweir 					SFX_DECL_INTERFACE(SCID_TABVIEW_SHELL)
236cdf0e10cSrcweir 					SFX_DECL_VIEWFACTORY(ScTabViewShell);
237cdf0e10cSrcweir 
238cdf0e10cSrcweir 
239cdf0e10cSrcweir 					// -> Clone-Methode fuer Factory
240cdf0e10cSrcweir 
241cdf0e10cSrcweir //UNUSED2008-05  ScTabViewShell( SfxViewFrame*           pViewFrame,
242cdf0e10cSrcweir //UNUSED2008-05                  const ScTabViewShell&   rWin );
243cdf0e10cSrcweir 
244cdf0e10cSrcweir 					// aus einer allgemeinen Shell konstruieren und
245cdf0e10cSrcweir 					// soviel wie moeglich uebernehmen (SliderPos etc.):
246cdf0e10cSrcweir 
247cdf0e10cSrcweir 					ScTabViewShell( SfxViewFrame*			pViewFrame,
248cdf0e10cSrcweir 									SfxViewShell*			pOldSh );
249cdf0e10cSrcweir 
250cdf0e10cSrcweir 	virtual			~ScTabViewShell();
251cdf0e10cSrcweir 
252cdf0e10cSrcweir 	Window*			GetDialogParent();
253cdf0e10cSrcweir 
254cdf0e10cSrcweir     bool            IsRefInputMode() const;
255cdf0e10cSrcweir 	void			ExecuteInputDirect();
256cdf0e10cSrcweir 
257cdf0e10cSrcweir 	ScInputHandler*	GetInputHandler() const;
258cdf0e10cSrcweir 	void			UpdateInputHandler( sal_Bool bForce = sal_False, sal_Bool bStopEditing = sal_True );
259cdf0e10cSrcweir     void            UpdateInputHandlerCellAdjust( SvxCellHorJustify eJust );
260cdf0e10cSrcweir 	sal_Bool			TabKeyInput(const KeyEvent& rKEvt);
261cdf0e10cSrcweir 	sal_Bool			SfxKeyInput(const KeyEvent& rKEvt);
262cdf0e10cSrcweir 
263cdf0e10cSrcweir 	void			SetActive();
264cdf0e10cSrcweir 
GetDefaultFrameLine() const265cdf0e10cSrcweir 	SvxBorderLine*	GetDefaultFrameLine() const { return pCurFrameLine; }
266cdf0e10cSrcweir 	void 			SetDefaultFrameLine(const SvxBorderLine* pLine );
267cdf0e10cSrcweir 
268cdf0e10cSrcweir //UNUSED2008-05  void            ExecuteShowNIY( SfxRequest& rReq );
269cdf0e10cSrcweir //UNUSED2008-05  void			StateDisabled( SfxItemSet& rSet );
270cdf0e10cSrcweir 
271cdf0e10cSrcweir 	SC_DLLPUBLIC void			Execute( SfxRequest& rReq );
272cdf0e10cSrcweir 	SC_DLLPUBLIC void			GetState( SfxItemSet& rSet );
273cdf0e10cSrcweir 
274cdf0e10cSrcweir 	void			ExecuteTable( SfxRequest& rReq );
275cdf0e10cSrcweir 	void			GetStateTable( SfxItemSet& rSet );
276cdf0e10cSrcweir 
277cdf0e10cSrcweir 	void			WindowChanged();
278cdf0e10cSrcweir 	void 			ExecDraw(SfxRequest&);
279cdf0e10cSrcweir 	void			ExecDrawIns(SfxRequest& rReq);
280cdf0e10cSrcweir 	void 			GetDrawState(SfxItemSet &rSet);
281cdf0e10cSrcweir 	void 			GetDrawInsState(SfxItemSet &rSet);
282cdf0e10cSrcweir 	void			ExecGallery(SfxRequest& rReq);		// StarGallery
283cdf0e10cSrcweir 	void			GetGalleryState(SfxItemSet& rSet);
284cdf0e10cSrcweir 
285cdf0e10cSrcweir 	void			ExecChildWin(SfxRequest& rReq);
286cdf0e10cSrcweir 	void			GetChildWinState( SfxItemSet& rSet );
287cdf0e10cSrcweir 
288cdf0e10cSrcweir 	void			ExecImageMap( SfxRequest& rReq );
289cdf0e10cSrcweir 	void			GetImageMapState( SfxItemSet& rSet );
290cdf0e10cSrcweir 
291cdf0e10cSrcweir 	void			ExecTbx( SfxRequest& rReq );
292cdf0e10cSrcweir 	void			GetTbxState( SfxItemSet& rSet );
293cdf0e10cSrcweir 
294cdf0e10cSrcweir 	void			ExecuteSave( SfxRequest& rReq );
295cdf0e10cSrcweir 	void			GetSaveState( SfxItemSet& rSet );
296cdf0e10cSrcweir 	void			ExecSearch( SfxRequest& rReq );
297cdf0e10cSrcweir 
298cdf0e10cSrcweir 	void			ExecuteUndo(SfxRequest& rReq);
299cdf0e10cSrcweir 	void			GetUndoState(SfxItemSet &rSet);
300cdf0e10cSrcweir 
301cdf0e10cSrcweir 	void			ExecuteSbx( SfxRequest& rReq );
302cdf0e10cSrcweir 	void			GetSbxState( SfxItemSet& rSet );
303cdf0e10cSrcweir 
304cdf0e10cSrcweir 	void			ExecuteObject(SfxRequest& rReq);
305cdf0e10cSrcweir 	void			GetObjectState(SfxItemSet &rSet);
306cdf0e10cSrcweir 
307cdf0e10cSrcweir 	void			ExecDrawOpt(SfxRequest& rReq);
308cdf0e10cSrcweir 	void			GetDrawOptState(SfxItemSet &rSet);
309cdf0e10cSrcweir 
310cdf0e10cSrcweir     void            UpdateDrawShell();
311cdf0e10cSrcweir 	void			SetDrawShell( sal_Bool bActive );
312cdf0e10cSrcweir 	void			SetDrawTextShell( sal_Bool bActive );
313cdf0e10cSrcweir 
314cdf0e10cSrcweir 	void			SetPivotShell( sal_Bool bActive );
GetPivotSource()315cdf0e10cSrcweir 	ScArea*			GetPivotSource(){return pPivotSource;}
SetPivotSource(ScArea * pSrc)316cdf0e10cSrcweir 	void			SetPivotSource(ScArea* pSrc){pPivotSource=pSrc;}
317cdf0e10cSrcweir 	void			SetDialogDPObject( const ScDPObject* pObj );
GetDialogDPObject() const318cdf0e10cSrcweir 	const ScDPObject* GetDialogDPObject() const { return pDialogDPObject; }
319cdf0e10cSrcweir 
GetDontSwitch()320cdf0e10cSrcweir 	sal_Bool			GetDontSwitch(){return bDontSwitch;}
SetDontSwitch(sal_Bool bFlag)321cdf0e10cSrcweir 	void			SetDontSwitch(sal_Bool bFlag){bDontSwitch=bFlag;}
322cdf0e10cSrcweir 
323cdf0e10cSrcweir 
324cdf0e10cSrcweir 	void			SetAuditShell( sal_Bool bActive );
325cdf0e10cSrcweir 	void			SetDrawFormShell( sal_Bool bActive );
326cdf0e10cSrcweir 	void			SetEditShell(EditView* pView, sal_Bool bActive );
327cdf0e10cSrcweir 	void			SetOleObjectShell( sal_Bool bActive );
328cdf0e10cSrcweir 	void			SetChartShell( sal_Bool bActive );
329cdf0e10cSrcweir 	void			SetGraphicShell( sal_Bool bActive );
330cdf0e10cSrcweir 	void			SetMediaShell( sal_Bool bActive );
331cdf0e10cSrcweir 
332cdf0e10cSrcweir 
333cdf0e10cSrcweir 	void			SetDrawShellOrSub();
334cdf0e10cSrcweir 	void			SetCurSubShell( ObjectSelectionType eOST, sal_Bool bForce = sal_False );
335cdf0e10cSrcweir 
336cdf0e10cSrcweir     void            SetFormShellAtTop( sal_Bool bSet );
337cdf0e10cSrcweir 
338cdf0e10cSrcweir 	ObjectSelectionType GetCurObjectSelectionType();
339cdf0e10cSrcweir 
340cdf0e10cSrcweir 	virtual ErrCode	DoVerb(long nVerb);
341cdf0e10cSrcweir 
342cdf0e10cSrcweir 
343cdf0e10cSrcweir 	void			StopEditShell();
344cdf0e10cSrcweir 	sal_Bool			IsDrawTextShell() const;
345cdf0e10cSrcweir 	sal_Bool			IsAuditShell() const;
346cdf0e10cSrcweir 
347cdf0e10cSrcweir 	void			SetDrawTextUndo( ::svl::IUndoManager* pUndoMgr );
348cdf0e10cSrcweir 
349cdf0e10cSrcweir 	void			FillFieldData( ScHeaderFieldData& rData );
350cdf0e10cSrcweir 
351cdf0e10cSrcweir //UNUSED2008-05  void            ResetChartArea();
352cdf0e10cSrcweir 	void			SetChartArea( const ScRangeListRef& rSource, const Rectangle& rDest );
353cdf0e10cSrcweir 	sal_Bool			GetChartArea( ScRangeListRef& rSource, Rectangle& rDest, SCTAB& rTab ) const;
354cdf0e10cSrcweir 
355cdf0e10cSrcweir //UNUSED2008-05  sal_Bool            IsChartDlgEdit() const;
356cdf0e10cSrcweir //UNUSED2008-05  void            SetChartDlgEdit(sal_Bool bFlag){bChartDlgIsEdit=bFlag;}
357cdf0e10cSrcweir 
SetEditChartName(const String & aStr)358cdf0e10cSrcweir 	void			SetEditChartName(const String& aStr){aEditChartName=aStr;}
359cdf0e10cSrcweir //UNUSED2008-05  const String&   GetEditChartName() const;
360cdf0e10cSrcweir 
361cdf0e10cSrcweir 	virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
362cdf0e10cSrcweir 
363cdf0e10cSrcweir     ScNavigatorSettings*    GetNavigatorSettings();
364cdf0e10cSrcweir 
365cdf0e10cSrcweir 	// Drucken:
366cdf0e10cSrcweir 	virtual SfxPrinter*		GetPrinter( sal_Bool bCreate = sal_False );
367cdf0e10cSrcweir 	virtual sal_uInt16			SetPrinter( SfxPrinter* pNewPrinter,
368cdf0e10cSrcweir                                           sal_uInt16 nDiffFlags = SFX_PRINTER_ALL, bool bIsApi=false );
369cdf0e10cSrcweir 
370cdf0e10cSrcweir 	virtual SfxTabPage*     CreatePrintOptionsPage( Window *pParent, const SfxItemSet &rOptions );
371cdf0e10cSrcweir 
372cdf0e10cSrcweir 	void			ConnectObject( SdrOle2Obj* pObj );
373cdf0e10cSrcweir 	sal_Bool			ActivateObject( SdrOle2Obj* pObj, long nVerb );
374cdf0e10cSrcweir 
375cdf0e10cSrcweir     void            DeactivateOle();
376cdf0e10cSrcweir 
377cdf0e10cSrcweir 	SC_DLLPUBLIC static ScTabViewShell* GetActiveViewShell();
378cdf0e10cSrcweir 	SfxModelessDialog*	CreateRefDialog( SfxBindings* pB, SfxChildWindow* pCW,
379cdf0e10cSrcweir 										SfxChildWinInfo* pInfo,
380cdf0e10cSrcweir 										Window* pParent, sal_uInt16 nSlotId );
381cdf0e10cSrcweir 
382cdf0e10cSrcweir 	void			UpdateOleZoom();
GetScSbxObject() const383cdf0e10cSrcweir 	inline SbxObject* GetScSbxObject() const
384cdf0e10cSrcweir 					{ return pScSbxObject; }
SetScSbxObject(SbxObject * pOb)385cdf0e10cSrcweir 	inline void		SetScSbxObject( SbxObject* pOb )
386cdf0e10cSrcweir 					{ pScSbxObject = pOb; }
387cdf0e10cSrcweir 
GetFormShell() const388cdf0e10cSrcweir 	FmFormShell*	GetFormShell() const	{ return pFormShell; }
389cdf0e10cSrcweir 
390cdf0e10cSrcweir 	void 	InsertURL( const String& rName, const String& rURL, const String& rTarget,
391cdf0e10cSrcweir 							sal_uInt16 nMode );
392cdf0e10cSrcweir 	void 	InsertURLButton( const String& rName, const String& rURL, const String& rTarget,
393cdf0e10cSrcweir 							const Point* pInsPos = NULL );
394cdf0e10cSrcweir 	void 	InsertURLField( const String& rName, const String& rURL, const String& rTarget );
395cdf0e10cSrcweir 
396cdf0e10cSrcweir 	sal_Bool	SelectObject( const String& rName );
397cdf0e10cSrcweir 
SetInFormatDialog(sal_Bool bFlag)398cdf0e10cSrcweir 	void	SetInFormatDialog(sal_Bool bFlag) {bInFormatDialog=bFlag;}
IsInFormatDialog()399cdf0e10cSrcweir 	sal_Bool    IsInFormatDialog() {return bInFormatDialog;}
400cdf0e10cSrcweir 
ForceMove()401cdf0e10cSrcweir 	void	ForceMove()		{ Move(); }
402cdf0e10cSrcweir 
403cdf0e10cSrcweir 	void 	MakeNumberInfoItem		( ScDocument*			 pDoc,
404cdf0e10cSrcweir 									  ScViewData*			 pViewData,
405cdf0e10cSrcweir 									  SvxNumberInfoItem**	 ppItem );
406cdf0e10cSrcweir 
407cdf0e10cSrcweir 	void 	UpdateNumberFormatter	( ScDocument*		     	pDoc,
408cdf0e10cSrcweir 									  const SvxNumberInfoItem& 	rInfoItem );
409cdf0e10cSrcweir 
410cdf0e10cSrcweir 	void	ExecuteCellFormatDlg	( SfxRequest& rReq, sal_uInt16 nTabPage = 0xffff );
411cdf0e10cSrcweir 
412cdf0e10cSrcweir 	sal_Bool	GetFunction( String& rFuncStr, sal_uInt16 nErrCode = 0 );
413cdf0e10cSrcweir 
414cdf0e10cSrcweir 	void	StartSimpleRefDialog( const String& rTitle, const String& rInitVal,
415cdf0e10cSrcweir                                     sal_Bool bCloseOnButtonUp, sal_Bool bSingleCell, sal_Bool bMultiSelection );
416cdf0e10cSrcweir 	void	StopSimpleRefDialog();
417cdf0e10cSrcweir 
418cdf0e10cSrcweir 	void	SetCurRefDlgId( sal_uInt16 nNew );
419cdf0e10cSrcweir 
420cdf0e10cSrcweir 	void	AddAccessibilityObject( SfxListener& rObject );
421cdf0e10cSrcweir 	void	RemoveAccessibilityObject( SfxListener& rObject );
422cdf0e10cSrcweir 	void	BroadcastAccessibility( const SfxHint &rHint );
423cdf0e10cSrcweir 	sal_Bool	HasAccessibilityObjects();
424cdf0e10cSrcweir 
425cdf0e10cSrcweir     bool    ExecuteRetypePassDlg(ScPasswordHash eDesiredHash);
426cdf0e10cSrcweir 
427cdf0e10cSrcweir     using ScTabView::ShowCursor;
IsActive()4280deba7fbSSteve Yin 	sal_Bool IsActive(){ return bIsActive; }
4290deba7fbSSteve Yin 	rtl::OUString GetFormula(ScAddress& rAddress);
4300deba7fbSSteve Yin 	const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & GetForms() const;
431*4b4244d8SSteve Yin 
432*4b4244d8SSteve Yin 	// i123629
GetForceFocusOnCurCell()433*4b4244d8SSteve Yin 	sal_Bool	GetForceFocusOnCurCell(){return bForceFocusOnCurCell;}
SetForceFocusOnCurCell(sal_Bool bFlag)434*4b4244d8SSteve Yin 	void		SetForceFocusOnCurCell(sal_Bool bFlag){bForceFocusOnCurCell=bFlag;}
435cdf0e10cSrcweir };
436cdf0e10cSrcweir 
437cdf0e10cSrcweir //==================================================================
438cdf0e10cSrcweir 
439cdf0e10cSrcweir 
440cdf0e10cSrcweir #endif
441cdf0e10cSrcweir 
442