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