xref: /aoo42x/main/sw/inc/unotbl.hxx (revision 5766e809)
11d2dbeb0SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
31d2dbeb0SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
41d2dbeb0SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
51d2dbeb0SAndrew Rist  * distributed with this work for additional information
61d2dbeb0SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
71d2dbeb0SAndrew Rist  * to you under the Apache License, Version 2.0 (the
81d2dbeb0SAndrew Rist  * "License"); you may not use this file except in compliance
91d2dbeb0SAndrew Rist  * with the License.  You may obtain a copy of the License at
101d2dbeb0SAndrew Rist  *
111d2dbeb0SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
121d2dbeb0SAndrew Rist  *
131d2dbeb0SAndrew Rist  * Unless required by applicable law or agreed to in writing,
141d2dbeb0SAndrew Rist  * software distributed under the License is distributed on an
151d2dbeb0SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
161d2dbeb0SAndrew Rist  * KIND, either express or implied.  See the License for the
171d2dbeb0SAndrew Rist  * specific language governing permissions and limitations
181d2dbeb0SAndrew Rist  * under the License.
191d2dbeb0SAndrew Rist  *
201d2dbeb0SAndrew Rist  *************************************************************/
211d2dbeb0SAndrew Rist 
221d2dbeb0SAndrew Rist 
23cdf0e10cSrcweir #ifndef _UNOTBL_HXX
24cdf0e10cSrcweir #define _UNOTBL_HXX
25cdf0e10cSrcweir 
26cdf0e10cSrcweir #include <com/sun/star/container/XNamed.hpp>
27cdf0e10cSrcweir #include <com/sun/star/container/XEnumerationAccess.hpp>
28cdf0e10cSrcweir #include <com/sun/star/util/XSortable.hpp>
29cdf0e10cSrcweir #include <com/sun/star/chart/XChartData.hpp>
30cdf0e10cSrcweir #include <com/sun/star/chart/XChartDataArray.hpp>
31cdf0e10cSrcweir #include <com/sun/star/chart2/data/XLabeledDataSequence.hpp>
32cdf0e10cSrcweir #include <com/sun/star/text/XTextTableCursor.hpp>
33cdf0e10cSrcweir #include <com/sun/star/text/XTextTable.hpp>
34cdf0e10cSrcweir #include <com/sun/star/table/XCellRange.hpp>
35cdf0e10cSrcweir #include <com/sun/star/sheet/XCellRangeData.hpp>
36cdf0e10cSrcweir #include <com/sun/star/table/XAutoFormattable.hpp>
37cdf0e10cSrcweir 
38cdf0e10cSrcweir #include <cppuhelper/implbase3.hxx>
39cdf0e10cSrcweir #include <cppuhelper/implbase4.hxx>
40cdf0e10cSrcweir #include <cppuhelper/implbase5.hxx>
41cdf0e10cSrcweir #include <cppuhelper/implbase7.hxx>
42cdf0e10cSrcweir #include <cppuhelper/implbase10.hxx>
43cdf0e10cSrcweir 
44cdf0e10cSrcweir #include <comphelper/uno3.hxx>
45cdf0e10cSrcweir #include <tools/string.hxx>
46cdf0e10cSrcweir 
47cdf0e10cSrcweir #include <calbck.hxx>
48cdf0e10cSrcweir #include <TextCursorHelper.hxx>
49cdf0e10cSrcweir #include <unoevtlstnr.hxx>
50cdf0e10cSrcweir #include <unotext.hxx>
51cdf0e10cSrcweir 
52cdf0e10cSrcweir 
53cdf0e10cSrcweir class SwUnoCrsr;
54cdf0e10cSrcweir class SwTable;
55cdf0e10cSrcweir class SwTableBox;
56cdf0e10cSrcweir class SwTableLine;
57cdf0e10cSrcweir class SwTableCursor;
58cdf0e10cSrcweir class SwTableBoxFmt;
59cdf0e10cSrcweir class SwChartDataProvider;
60cdf0e10cSrcweir class SwFrmFmt;
61*5766e809SHerbert Dürr class SwXCell;
62cdf0e10cSrcweir 
63*5766e809SHerbert Dürr void lcl_setString( SwXCell&, const rtl::OUString &rTxt, sal_Bool bKeepNumberFmt = sal_True );
64cdf0e10cSrcweir 
65*5766e809SHerbert Dürr // ---------------------------------------------------------------------------
66cdf0e10cSrcweir 
67cdf0e10cSrcweir class SwChartEventListenerContainer : public SwEventListenerContainer
68cdf0e10cSrcweir {
69cdf0e10cSrcweir 	public:
SwChartEventListenerContainer(::com::sun::star::uno::XInterface * pxParentL)70cdf0e10cSrcweir         SwChartEventListenerContainer( ::com::sun::star::uno::XInterface* pxParentL) :
71cdf0e10cSrcweir             SwEventListenerContainer(pxParentL){}
72cdf0e10cSrcweir     	void ChartDataChanged();
73cdf0e10cSrcweir };
74cdf0e10cSrcweir /* ---------------------------------------------------------------------------
75cdf0e10cSrcweir 
76cdf0e10cSrcweir  ---------------------------------------------------------------------------*/
77cdf0e10cSrcweir typedef
78cdf0e10cSrcweir cppu::WeakImplHelper4
79cdf0e10cSrcweir <
80cdf0e10cSrcweir 	::com::sun::star::table::XCell,
81cdf0e10cSrcweir 	::com::sun::star::lang::XServiceInfo,
82cdf0e10cSrcweir 	::com::sun::star::beans::XPropertySet,
83cdf0e10cSrcweir 	::com::sun::star::container::XEnumerationAccess
84cdf0e10cSrcweir >
85cdf0e10cSrcweir SwXCellBaseClass;
86cdf0e10cSrcweir class SwXCell : public SwXCellBaseClass,
87cdf0e10cSrcweir 	public SwXText,
88cdf0e10cSrcweir 	public SwClient
89cdf0e10cSrcweir {
90cdf0e10cSrcweir     friend void   lcl_setString( SwXCell &rCell, const rtl::OUString &rTxt,
91*5766e809SHerbert Dürr                                  sal_Bool bKeepNumberFmt );
92cdf0e10cSrcweir     friend double lcl_getValue( SwXCell &rCell );
93cdf0e10cSrcweir     friend void   lcl_setValue( SwXCell &rCell, double nVal );
94cdf0e10cSrcweir 
95cdf0e10cSrcweir 
96cdf0e10cSrcweir     const SfxItemPropertySet*   m_pPropSet;
97cdf0e10cSrcweir     SwTableBox*                 pBox;       // only set in non-XML import
98cdf0e10cSrcweir 	const SwStartNode* 		pStartNode; // only set in XML import
99cdf0e10cSrcweir 
100cdf0e10cSrcweir     // table position where pBox was found last
101cdf0e10cSrcweir     sal_uInt16              nFndPos;
102cdf0e10cSrcweir 
103cdf0e10cSrcweir protected:
104cdf0e10cSrcweir 	virtual const SwStartNode *GetStartNode() const;
105cdf0e10cSrcweir 
106cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference<
107cdf0e10cSrcweir                 ::com::sun::star::text::XTextCursor >
108cdf0e10cSrcweir         CreateCursor()
109cdf0e10cSrcweir         throw (::com::sun::star::uno::RuntimeException);
110cdf0e10cSrcweir 
111cdf0e10cSrcweir     bool IsValid() const;
112cdf0e10cSrcweir 
113cdf0e10cSrcweir 	virtual ~SwXCell();
114cdf0e10cSrcweir 
115cdf0e10cSrcweir 	//SwClient
116cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
117cdf0e10cSrcweir 
118cdf0e10cSrcweir public:
119cdf0e10cSrcweir     SwXCell(SwFrmFmt* pTblFmt, SwTableBox* pBox, sal_uInt16 nPos=USHRT_MAX );
120cdf0e10cSrcweir 	SwXCell(SwFrmFmt* pTblFmt, const SwStartNode& rStartNode); // XML import interface
121cdf0e10cSrcweir 
122cdf0e10cSrcweir 
123cdf0e10cSrcweir 	TYPEINFO();
124cdf0e10cSrcweir 
125cdf0e10cSrcweir     static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId();
126cdf0e10cSrcweir 
127cdf0e10cSrcweir 	//XUnoTunnel
128cdf0e10cSrcweir 	virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException);
129cdf0e10cSrcweir 
130cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException);
131cdf0e10cSrcweir     virtual void SAL_CALL acquire(  ) throw();
132cdf0e10cSrcweir     virtual void SAL_CALL release(  ) throw();
133cdf0e10cSrcweir 
134cdf0e10cSrcweir 	//XTypeProvider
135cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes(  ) throw(::com::sun::star::uno::RuntimeException);
136cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
137cdf0e10cSrcweir 
138cdf0e10cSrcweir 	//XCell
139cdf0e10cSrcweir     virtual ::rtl::OUString SAL_CALL getFormula(  ) throw(::com::sun::star::uno::RuntimeException);
140cdf0e10cSrcweir     virtual void SAL_CALL setFormula( const ::rtl::OUString& aFormula ) throw(::com::sun::star::uno::RuntimeException);
141cdf0e10cSrcweir     virtual double SAL_CALL getValue(  ) throw(::com::sun::star::uno::RuntimeException);
142cdf0e10cSrcweir     virtual void SAL_CALL setValue( double nValue ) throw(::com::sun::star::uno::RuntimeException);
143cdf0e10cSrcweir     virtual ::com::sun::star::table::CellContentType SAL_CALL getType(  ) throw(::com::sun::star::uno::RuntimeException);
144cdf0e10cSrcweir     virtual sal_Int32 SAL_CALL getError(  ) throw(::com::sun::star::uno::RuntimeException);
145cdf0e10cSrcweir 
146cdf0e10cSrcweir 	//XText
147cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor >  SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException );
148cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor >  SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException );
149cdf0e10cSrcweir 	virtual void SAL_CALL  setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException );
150cdf0e10cSrcweir 
151cdf0e10cSrcweir 	//XPropertySet
152cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo(  ) throw(::com::sun::star::uno::RuntimeException);
153cdf0e10cSrcweir     virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
154cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
155cdf0e10cSrcweir     virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
156cdf0e10cSrcweir     virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
157cdf0e10cSrcweir     virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
158cdf0e10cSrcweir     virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
159cdf0e10cSrcweir 
160cdf0e10cSrcweir 	//XServiceInfo
161cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
162cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
163cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
164cdf0e10cSrcweir 
165cdf0e10cSrcweir 	//XEnumerationAccess - frueher XParagraphEnumerationAccess
166cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration >  SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException );
167cdf0e10cSrcweir 
168cdf0e10cSrcweir 	//XElementAccess
169cdf0e10cSrcweir     virtual ::com::sun::star::uno::Type SAL_CALL getElementType(  ) throw(::com::sun::star::uno::RuntimeException);
170cdf0e10cSrcweir     virtual sal_Bool SAL_CALL hasElements(  ) throw(::com::sun::star::uno::RuntimeException);
171cdf0e10cSrcweir 
GetTblBox() const172cdf0e10cSrcweir     SwTableBox*   GetTblBox()const {return pBox;}
173cdf0e10cSrcweir 	static SwXCell*		CreateXCell(SwFrmFmt* pTblFmt, SwTableBox* pBox, SwTable *pTbl = 0 );
174cdf0e10cSrcweir 	SwTableBox* 	FindBox(SwTable* pTable, SwTableBox* pBox);
175cdf0e10cSrcweir 
GetFrmFmt() const176cdf0e10cSrcweir     SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
177cdf0e10cSrcweir };
178cdf0e10cSrcweir /* -----------------27.06.98 15:40-------------------
179cdf0e10cSrcweir  *
180cdf0e10cSrcweir  * --------------------------------------------------*/
181cdf0e10cSrcweir class SwXTextTableRow : public cppu::WeakImplHelper2
182cdf0e10cSrcweir <
183cdf0e10cSrcweir 	::com::sun::star::beans::XPropertySet,
184cdf0e10cSrcweir     ::com::sun::star::lang::XServiceInfo
185cdf0e10cSrcweir >,
186cdf0e10cSrcweir 	public SwClient
187cdf0e10cSrcweir {
188cdf0e10cSrcweir     const SfxItemPropertySet*   m_pPropSet;
189cdf0e10cSrcweir 	SwTableLine* 			pLine;
190cdf0e10cSrcweir 
GetFrmFmt() const191cdf0e10cSrcweir 	SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
192cdf0e10cSrcweir protected:
193cdf0e10cSrcweir 	virtual ~SwXTextTableRow();
194cdf0e10cSrcweir 	//SwClient
195cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
196cdf0e10cSrcweir 
197cdf0e10cSrcweir public:
198cdf0e10cSrcweir 	SwXTextTableRow(SwFrmFmt* pFmt, SwTableLine* pLine);
199cdf0e10cSrcweir 
200cdf0e10cSrcweir 
201cdf0e10cSrcweir 	TYPEINFO();
202cdf0e10cSrcweir 
203cdf0e10cSrcweir 	//XPropertySet
204cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo(  ) throw(::com::sun::star::uno::RuntimeException);
205cdf0e10cSrcweir     virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
206cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
207cdf0e10cSrcweir     virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
208cdf0e10cSrcweir     virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
209cdf0e10cSrcweir     virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
210cdf0e10cSrcweir     virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
211cdf0e10cSrcweir 
212cdf0e10cSrcweir 	//XServiceInfo
213cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
214cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
215cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
216cdf0e10cSrcweir 
GetTblRow() const217cdf0e10cSrcweir 	const SwTableLine* 	GetTblRow() const {return pLine;}
218cdf0e10cSrcweir 	static SwTableLine* FindLine(SwTable* pTable, SwTableLine* pLine);
219cdf0e10cSrcweir };
220cdf0e10cSrcweir /* -----------------20.07.98 13:03-------------------
221cdf0e10cSrcweir  *
222cdf0e10cSrcweir  * --------------------------------------------------*/
223cdf0e10cSrcweir typedef cppu::WeakImplHelper3<
224cdf0e10cSrcweir 								::com::sun::star::text::XTextTableCursor,
225cdf0e10cSrcweir 								::com::sun::star::lang::XServiceInfo,
226cdf0e10cSrcweir 								::com::sun::star::beans::XPropertySet
227cdf0e10cSrcweir 							> SwXTextTableCursor_Base;
228cdf0e10cSrcweir class SW_DLLPUBLIC SwXTextTableCursor : public SwXTextTableCursor_Base
229cdf0e10cSrcweir 	,public SwClient
230cdf0e10cSrcweir 	,public OTextCursorHelper
231cdf0e10cSrcweir {
232cdf0e10cSrcweir 	SwDepend 				aCrsrDepend;
233cdf0e10cSrcweir     const SfxItemPropertySet*   m_pPropSet;
234cdf0e10cSrcweir 
235cdf0e10cSrcweir 	//	SwUnoCrsr* 		GetCrsr() const { return (SwUnoCrsr*)aCrsrDepend.GetRegisteredIn(); }
236cdf0e10cSrcweir 
237cdf0e10cSrcweir protected:
238cdf0e10cSrcweir 	virtual ~SwXTextTableCursor();
239cdf0e10cSrcweir public:
240cdf0e10cSrcweir 	SwXTextTableCursor(SwFrmFmt* pFmt, SwTableBox* pBox);
241cdf0e10cSrcweir 	SwXTextTableCursor(SwFrmFmt& rTableFmt,
242cdf0e10cSrcweir 						const SwTableCursor* pTableSelection);
243cdf0e10cSrcweir 
244cdf0e10cSrcweir 
245cdf0e10cSrcweir 	DECLARE_XINTERFACE()
246cdf0e10cSrcweir 
247cdf0e10cSrcweir 	//XTextTableCursor
248cdf0e10cSrcweir     virtual ::rtl::OUString SAL_CALL getRangeName(  ) throw(::com::sun::star::uno::RuntimeException);
249cdf0e10cSrcweir     virtual sal_Bool SAL_CALL gotoCellByName( const ::rtl::OUString& aCellName, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
250cdf0e10cSrcweir     virtual sal_Bool SAL_CALL goLeft( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
251cdf0e10cSrcweir     virtual sal_Bool SAL_CALL goRight( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
252cdf0e10cSrcweir     virtual sal_Bool SAL_CALL goUp( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
253cdf0e10cSrcweir     virtual sal_Bool SAL_CALL goDown( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
254cdf0e10cSrcweir     virtual void SAL_CALL gotoStart( sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
255cdf0e10cSrcweir     virtual void SAL_CALL gotoEnd( sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException);
256cdf0e10cSrcweir     virtual sal_Bool SAL_CALL mergeRange(  ) throw(::com::sun::star::uno::RuntimeException);
257cdf0e10cSrcweir     virtual sal_Bool SAL_CALL splitRange( sal_Int16 Count, sal_Bool Horizontal ) throw(::com::sun::star::uno::RuntimeException);
258cdf0e10cSrcweir 
259cdf0e10cSrcweir 	//XPropertySet
260cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo(  ) throw(::com::sun::star::uno::RuntimeException);
261cdf0e10cSrcweir     virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
262cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
263cdf0e10cSrcweir     virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
264cdf0e10cSrcweir     virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
265cdf0e10cSrcweir     virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
266cdf0e10cSrcweir     virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
267cdf0e10cSrcweir 
268cdf0e10cSrcweir 	//XServiceInfo
269cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
270cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
271cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
272cdf0e10cSrcweir 
273cdf0e10cSrcweir 	//SwClient
274cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
275cdf0e10cSrcweir 
276cdf0e10cSrcweir 	// ITextCursorHelper
277cdf0e10cSrcweir 	virtual const SwPaM*		GetPaM() const;
278cdf0e10cSrcweir 	virtual	SwPaM*				GetPaM();
279cdf0e10cSrcweir 	virtual const SwDoc* 		GetDoc() const;
280cdf0e10cSrcweir 	virtual SwDoc* 				GetDoc();
281cdf0e10cSrcweir 
282cdf0e10cSrcweir 	const SwUnoCrsr*			GetCrsr() const;
283cdf0e10cSrcweir 	SwUnoCrsr*					GetCrsr();
GetFrmFmt() const284cdf0e10cSrcweir 	SwFrmFmt* 		GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
285cdf0e10cSrcweir };
286cdf0e10cSrcweir 
287cdf0e10cSrcweir /*-----------------11.12.97 09:38-------------------
288cdf0e10cSrcweir 
289cdf0e10cSrcweir --------------------------------------------------*/
290cdf0e10cSrcweir struct SwRangeDescriptor
291cdf0e10cSrcweir {
292cdf0e10cSrcweir     sal_Int32 nTop;
293cdf0e10cSrcweir     sal_Int32 nLeft;
294cdf0e10cSrcweir     sal_Int32 nBottom;
295cdf0e10cSrcweir     sal_Int32 nRight;
296cdf0e10cSrcweir 
297cdf0e10cSrcweir     void Normalize();
298cdf0e10cSrcweir };
299cdf0e10cSrcweir 
300cdf0e10cSrcweir class SwTableProperties_Impl;
301cdf0e10cSrcweir class SwXTextTable : public cppu::WeakImplHelper10
302cdf0e10cSrcweir <
303cdf0e10cSrcweir 	::com::sun::star::text::XTextTable,
304cdf0e10cSrcweir 	::com::sun::star::lang::XServiceInfo,
305cdf0e10cSrcweir 	::com::sun::star::table::XCellRange,
306cdf0e10cSrcweir 	::com::sun::star::chart::XChartDataArray,
307cdf0e10cSrcweir 	::com::sun::star::beans::XPropertySet,
308cdf0e10cSrcweir 	::com::sun::star::container::XNamed,
309cdf0e10cSrcweir 	::com::sun::star::table::XAutoFormattable,
310cdf0e10cSrcweir 	::com::sun::star::util::XSortable,
311cdf0e10cSrcweir     ::com::sun::star::lang::XUnoTunnel,
312cdf0e10cSrcweir     ::com::sun::star::sheet::XCellRangeData
313cdf0e10cSrcweir >,
314cdf0e10cSrcweir 	public SwClient
315cdf0e10cSrcweir {
316cdf0e10cSrcweir 	SwEventListenerContainer		aLstnrCntnr;
317cdf0e10cSrcweir 	SwChartEventListenerContainer	aChartLstnrCntnr;
318cdf0e10cSrcweir     const SfxItemPropertySet*       m_pPropSet;
319cdf0e10cSrcweir 
320cdf0e10cSrcweir 	// Descriptor-interface
321cdf0e10cSrcweir 	SwTableProperties_Impl*		pTableProps;
322cdf0e10cSrcweir 	String 						m_sTableName;
323cdf0e10cSrcweir 	sal_Bool 						bIsDescriptor;
324cdf0e10cSrcweir 	unsigned short 				nRows;
325cdf0e10cSrcweir 	unsigned short 				nColumns;
326cdf0e10cSrcweir 
327cdf0e10cSrcweir 
328cdf0e10cSrcweir 	sal_Bool						bFirstRowAsLabel 	:1;
329cdf0e10cSrcweir 	sal_Bool						bFirstColumnAsLabel	:1;
330cdf0e10cSrcweir protected:
331cdf0e10cSrcweir 	virtual ~SwXTextTable();
332cdf0e10cSrcweir public:
333cdf0e10cSrcweir 	SwXTextTable();
334cdf0e10cSrcweir 	SwXTextTable(SwFrmFmt& rFrmFmt);
335cdf0e10cSrcweir 
336cdf0e10cSrcweir 
337cdf0e10cSrcweir 	static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId();
338cdf0e10cSrcweir 
339cdf0e10cSrcweir 	//XUnoTunnel
340cdf0e10cSrcweir 	virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException);
341cdf0e10cSrcweir 
342cdf0e10cSrcweir 	TYPEINFO();
343cdf0e10cSrcweir 
344cdf0e10cSrcweir 	//XTextTable
345cdf0e10cSrcweir     virtual void SAL_CALL initialize( sal_Int32 nRows, sal_Int32 nColumns ) throw(::com::sun::star::uno::RuntimeException);
346cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XTableRows > SAL_CALL getRows(  ) throw(::com::sun::star::uno::RuntimeException);
347cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XTableColumns > SAL_CALL getColumns(  ) throw(::com::sun::star::uno::RuntimeException);
348cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByName( const ::rtl::OUString& aCellName ) throw(::com::sun::star::uno::RuntimeException);
349cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getCellNames(  ) throw(::com::sun::star::uno::RuntimeException);
350cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextTableCursor > SAL_CALL createCursorByCellName( const ::rtl::OUString& aCellName ) throw(::com::sun::star::uno::RuntimeException);
351cdf0e10cSrcweir 
352cdf0e10cSrcweir 	//XTextContent
353cdf0e10cSrcweir 	virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
354cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(  ) throw(::com::sun::star::uno::RuntimeException);
355cdf0e10cSrcweir 
356cdf0e10cSrcweir 	//XComponent
357cdf0e10cSrcweir 	virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException );
358cdf0e10cSrcweir 	virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException );
359cdf0e10cSrcweir 	virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException );
360cdf0e10cSrcweir 
361cdf0e10cSrcweir 	//XCellRange
362cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByPosition( sal_Int32 nColumn, sal_Int32 nRow ) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
363cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByPosition( sal_Int32 nLeft, sal_Int32 nTop, sal_Int32 nRight, sal_Int32 nBottom ) throw(com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
364cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByName( const ::rtl::OUString& aRange ) throw(::com::sun::star::uno::RuntimeException);
365cdf0e10cSrcweir 
366cdf0e10cSrcweir 	//XChartDataArray
367cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > > SAL_CALL getData(  ) throw(::com::sun::star::uno::RuntimeException);
368cdf0e10cSrcweir     virtual void SAL_CALL setData( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > >& aData ) throw(::com::sun::star::uno::RuntimeException);
369cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getRowDescriptions(  ) throw(::com::sun::star::uno::RuntimeException);
370cdf0e10cSrcweir     virtual void SAL_CALL setRowDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRowDescriptions ) throw(::com::sun::star::uno::RuntimeException);
371cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getColumnDescriptions(  ) throw(::com::sun::star::uno::RuntimeException);
372cdf0e10cSrcweir     virtual void SAL_CALL setColumnDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aColumnDescriptions ) throw(::com::sun::star::uno::RuntimeException);
373cdf0e10cSrcweir 
374cdf0e10cSrcweir 	//XChartData
375cdf0e10cSrcweir 	virtual void SAL_CALL addChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException);
376cdf0e10cSrcweir     virtual void SAL_CALL removeChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException);
377cdf0e10cSrcweir     virtual double SAL_CALL getNotANumber(  ) throw(::com::sun::star::uno::RuntimeException);
378cdf0e10cSrcweir     virtual sal_Bool SAL_CALL isNotANumber( double nNumber ) throw(::com::sun::star::uno::RuntimeException);
379cdf0e10cSrcweir 
380cdf0e10cSrcweir 	//XSortable
381cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL createSortDescriptor(void) throw( ::com::sun::star::uno::RuntimeException );
382cdf0e10cSrcweir 	virtual void SAL_CALL sort(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xDescriptor) throw( ::com::sun::star::uno::RuntimeException );
383cdf0e10cSrcweir 
384cdf0e10cSrcweir 	//XAutoFormattable
385cdf0e10cSrcweir 	virtual void SAL_CALL autoFormat(const rtl::OUString& aName) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
386cdf0e10cSrcweir 
387cdf0e10cSrcweir 	//XPropertySet
388cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo(  ) throw(::com::sun::star::uno::RuntimeException);
389cdf0e10cSrcweir     virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
390cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
391cdf0e10cSrcweir     virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
392cdf0e10cSrcweir     virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
393cdf0e10cSrcweir     virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
394cdf0e10cSrcweir     virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
395cdf0e10cSrcweir 
396cdf0e10cSrcweir 	//XNamed
397cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException );
398cdf0e10cSrcweir 	virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException );
399cdf0e10cSrcweir 
400cdf0e10cSrcweir     //XCellRangeData
401cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > > SAL_CALL getDataArray(  ) throw (::com::sun::star::uno::RuntimeException);
402cdf0e10cSrcweir     virtual void SAL_CALL setDataArray( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > >& aArray ) throw (::com::sun::star::uno::RuntimeException);
403cdf0e10cSrcweir 
404cdf0e10cSrcweir 	//XServiceInfo
405cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
406cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
407cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
408cdf0e10cSrcweir 
409cdf0e10cSrcweir     void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
410cdf0e10cSrcweir 
411cdf0e10cSrcweir 	sal_uInt16 			getRowCount(void);
412cdf0e10cSrcweir 	sal_uInt16 			getColumnCount(void);
413cdf0e10cSrcweir 	::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange >  	GetRangeByName(SwFrmFmt* pFmt, SwTable* pTable,
414cdf0e10cSrcweir 						const String& sTLName, const String& sBRName,
415cdf0e10cSrcweir 						SwRangeDescriptor& rDesc);
416cdf0e10cSrcweir 
417cdf0e10cSrcweir 	//SwClient
418cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
419cdf0e10cSrcweir 
GetFrmFmt() const420cdf0e10cSrcweir 	SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
421cdf0e10cSrcweir };
422cdf0e10cSrcweir 
423cdf0e10cSrcweir /* -----------------27.04.98 16:41-------------------
424cdf0e10cSrcweir  *
425cdf0e10cSrcweir  * --------------------------------------------------*/
426cdf0e10cSrcweir class SwXCellRange : public cppu::WeakImplHelper7
427cdf0e10cSrcweir <
428cdf0e10cSrcweir 	::com::sun::star::table::XCellRange,
429cdf0e10cSrcweir 	::com::sun::star::lang::XServiceInfo,
430cdf0e10cSrcweir 	::com::sun::star::lang::XUnoTunnel,
431cdf0e10cSrcweir 	::com::sun::star::beans::XPropertySet,
432cdf0e10cSrcweir 	::com::sun::star::chart::XChartDataArray,
433cdf0e10cSrcweir     ::com::sun::star::util::XSortable,
434cdf0e10cSrcweir     ::com::sun::star::sheet::XCellRangeData
435cdf0e10cSrcweir >,
436cdf0e10cSrcweir 	public SwClient
437cdf0e10cSrcweir {
438cdf0e10cSrcweir 	SwDepend						aCursorDepend; //the cursor is removed after the doc has been removed
439cdf0e10cSrcweir 	SwChartEventListenerContainer	aChartLstnrCntnr;
440cdf0e10cSrcweir 
441cdf0e10cSrcweir 	SwRangeDescriptor 			aRgDesc;
442cdf0e10cSrcweir     const SfxItemPropertySet*   m_pPropSet;
443cdf0e10cSrcweir 
444cdf0e10cSrcweir 	SwUnoCrsr* 					pTblCrsr;
445cdf0e10cSrcweir 
446cdf0e10cSrcweir 	sal_Bool						bFirstRowAsLabel 	:1;
447cdf0e10cSrcweir 	sal_Bool						bFirstColumnAsLabel	:1;
448cdf0e10cSrcweir 
449cdf0e10cSrcweir public:
450cdf0e10cSrcweir 	SwXCellRange(SwUnoCrsr* pCrsr, SwFrmFmt& rFrmFmt, SwRangeDescriptor& rDesc);
451cdf0e10cSrcweir 	~SwXCellRange();
452cdf0e10cSrcweir 
453cdf0e10cSrcweir 	TYPEINFO();
454cdf0e10cSrcweir 
455cdf0e10cSrcweir 	static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId();
456cdf0e10cSrcweir 
457cdf0e10cSrcweir 	//XUnoTunnel
458cdf0e10cSrcweir 	virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException);
459cdf0e10cSrcweir 
460cdf0e10cSrcweir 
461cdf0e10cSrcweir 	//XCellRange
462cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByPosition( sal_Int32 nColumn, sal_Int32 nRow ) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
463cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByPosition( sal_Int32 nLeft, sal_Int32 nTop, sal_Int32 nRight, sal_Int32 nBottom ) throw(com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
464cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByName( const ::rtl::OUString& aRange ) throw(::com::sun::star::uno::RuntimeException);
465cdf0e10cSrcweir 
466cdf0e10cSrcweir 	//XPropertySet
467cdf0e10cSrcweir     virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo(  ) throw(::com::sun::star::uno::RuntimeException);
468cdf0e10cSrcweir     virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
469cdf0e10cSrcweir     virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
470cdf0e10cSrcweir     virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
471cdf0e10cSrcweir     virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
472cdf0e10cSrcweir     virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
473cdf0e10cSrcweir     virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
474cdf0e10cSrcweir 
475cdf0e10cSrcweir 	//XChartData
476cdf0e10cSrcweir     virtual void SAL_CALL addChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException);
477cdf0e10cSrcweir     virtual void SAL_CALL removeChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException);
478cdf0e10cSrcweir     virtual double SAL_CALL getNotANumber(  ) throw(::com::sun::star::uno::RuntimeException);
479cdf0e10cSrcweir     virtual sal_Bool SAL_CALL isNotANumber( double nNumber ) throw(::com::sun::star::uno::RuntimeException);
480cdf0e10cSrcweir 
481cdf0e10cSrcweir 	//XChartDataArray
482cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > > SAL_CALL getData(  ) throw(::com::sun::star::uno::RuntimeException);
483cdf0e10cSrcweir     virtual void SAL_CALL setData( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > >& aData ) throw(::com::sun::star::uno::RuntimeException);
484cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getRowDescriptions(  ) throw(::com::sun::star::uno::RuntimeException);
485cdf0e10cSrcweir     virtual void SAL_CALL setRowDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRowDescriptions ) throw(::com::sun::star::uno::RuntimeException);
486cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getColumnDescriptions(  ) throw(::com::sun::star::uno::RuntimeException);
487cdf0e10cSrcweir     virtual void SAL_CALL setColumnDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aColumnDescriptions ) throw(::com::sun::star::uno::RuntimeException);
488cdf0e10cSrcweir 
489cdf0e10cSrcweir 	//XSortable
490cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL createSortDescriptor(void) throw( ::com::sun::star::uno::RuntimeException );
491cdf0e10cSrcweir 	virtual void SAL_CALL sort(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xDescriptor) throw( ::com::sun::star::uno::RuntimeException );
492cdf0e10cSrcweir 
493cdf0e10cSrcweir     //XCellRangeData
494cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > > SAL_CALL getDataArray(  ) throw (::com::sun::star::uno::RuntimeException);
495cdf0e10cSrcweir     virtual void SAL_CALL setDataArray( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > >& aArray ) throw (::com::sun::star::uno::RuntimeException);
496cdf0e10cSrcweir 
497cdf0e10cSrcweir 	//XServiceInfo
498cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
499cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
500cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
501cdf0e10cSrcweir 
502cdf0e10cSrcweir 	//SwClient
503cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
504cdf0e10cSrcweir 
GetFrmFmt() const505cdf0e10cSrcweir 	SwFrmFmt* 	GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
506cdf0e10cSrcweir 	sal_uInt16 		getRowCount(void);
507cdf0e10cSrcweir 	sal_uInt16 		getColumnCount(void);
508cdf0e10cSrcweir 
509cdf0e10cSrcweir     const SwUnoCrsr* GetTblCrsr() const;
510cdf0e10cSrcweir 
511cdf0e10cSrcweir     // for SwChartDataSequence
512cdf0e10cSrcweir     void GetDataSequence(
513cdf0e10cSrcweir             ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > *pAnySeq,
514cdf0e10cSrcweir             ::com::sun::star::uno::Sequence< ::rtl::OUString > *pTxtSeq,
515cdf0e10cSrcweir             ::com::sun::star::uno::Sequence< double > *pDblSeq,
516cdf0e10cSrcweir             sal_Bool bForceNumberResults = sal_False ) throw (::com::sun::star::uno::RuntimeException);
517cdf0e10cSrcweir 
518cdf0e10cSrcweir };
519cdf0e10cSrcweir /* -----------------03.02.99 07:31-------------------
520cdf0e10cSrcweir  *
521cdf0e10cSrcweir  * --------------------------------------------------*/
522cdf0e10cSrcweir class SwXTableRows : public cppu::WeakImplHelper2
523cdf0e10cSrcweir <
524cdf0e10cSrcweir 	::com::sun::star::table::XTableRows,
525cdf0e10cSrcweir 	::com::sun::star::lang::XServiceInfo
526cdf0e10cSrcweir >,
527cdf0e10cSrcweir 	public SwClient
528cdf0e10cSrcweir 
529cdf0e10cSrcweir {
GetFrmFmt() const530cdf0e10cSrcweir 	SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
531cdf0e10cSrcweir protected:
532cdf0e10cSrcweir 	virtual ~SwXTableRows();
533cdf0e10cSrcweir public:
534cdf0e10cSrcweir 	SwXTableRows(SwFrmFmt& rFrmFmt);
535cdf0e10cSrcweir 
536cdf0e10cSrcweir 
537cdf0e10cSrcweir 	TYPEINFO();
538cdf0e10cSrcweir 
539cdf0e10cSrcweir // automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen!
540cdf0e10cSrcweir //	virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass >  > getIdlClasses(void) throw( ::com::sun::star::uno::RuntimeException );
541cdf0e10cSrcweir 
542cdf0e10cSrcweir // automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen!
543cdf0e10cSrcweir //	virtual sal_Bool		queryInterface( ::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >  & rOut );
544cdf0e10cSrcweir 
545cdf0e10cSrcweir //	SMART_UNO_DECLARATION( SwXTableRows, UsrObject );
546cdf0e10cSrcweir 
547cdf0e10cSrcweir 	//XIndexAccess
548cdf0e10cSrcweir 	virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException );
549cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException );
550cdf0e10cSrcweir 
551cdf0e10cSrcweir 	//XElementAccess
552cdf0e10cSrcweir     virtual ::com::sun::star::uno::Type SAL_CALL getElementType(  ) throw(::com::sun::star::uno::RuntimeException);
553cdf0e10cSrcweir     virtual sal_Bool SAL_CALL hasElements(  ) throw(::com::sun::star::uno::RuntimeException);
554cdf0e10cSrcweir 
555cdf0e10cSrcweir 	//XTableRows
556cdf0e10cSrcweir 	virtual void SAL_CALL insertByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException );
557cdf0e10cSrcweir 	virtual void SAL_CALL removeByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException );
558cdf0e10cSrcweir 
559cdf0e10cSrcweir 	//XServiceInfo
560cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
561cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
562cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
563cdf0e10cSrcweir 
564cdf0e10cSrcweir 	//SwClient
565cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
566cdf0e10cSrcweir };
567cdf0e10cSrcweir 
568cdf0e10cSrcweir /* -----------------03.02.99 07:31-------------------
569cdf0e10cSrcweir  *
570cdf0e10cSrcweir  * --------------------------------------------------*/
571cdf0e10cSrcweir class SwXTableColumns : public cppu::WeakImplHelper2
572cdf0e10cSrcweir <
573cdf0e10cSrcweir 	::com::sun::star::table::XTableColumns,
574cdf0e10cSrcweir 	::com::sun::star::lang::XServiceInfo
575cdf0e10cSrcweir >,
576cdf0e10cSrcweir 	public SwClient
577cdf0e10cSrcweir 
578cdf0e10cSrcweir {
GetFrmFmt() const579cdf0e10cSrcweir 	SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); }
580cdf0e10cSrcweir protected:
581cdf0e10cSrcweir 	virtual ~SwXTableColumns();
582cdf0e10cSrcweir public:
583cdf0e10cSrcweir 	SwXTableColumns(SwFrmFmt& rFrmFmt);
584cdf0e10cSrcweir 
585cdf0e10cSrcweir 
586cdf0e10cSrcweir 	TYPEINFO();
587cdf0e10cSrcweir // automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen!
588cdf0e10cSrcweir //	virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass >  > getIdlClasses(void) throw( ::com::sun::star::uno::RuntimeException );
589cdf0e10cSrcweir 
590cdf0e10cSrcweir // automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen!
591cdf0e10cSrcweir //	virtual sal_Bool		queryInterface( ::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >  & rOut );
592cdf0e10cSrcweir 
593cdf0e10cSrcweir //	SMART_UNO_DECLARATION( SwXTableColumns, UsrObject );
594cdf0e10cSrcweir 
595cdf0e10cSrcweir 	//XIndexAccess
596cdf0e10cSrcweir 	virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException );
597cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException );
598cdf0e10cSrcweir 
599cdf0e10cSrcweir 	//XElementAccess
600cdf0e10cSrcweir     virtual ::com::sun::star::uno::Type SAL_CALL getElementType(  ) throw(::com::sun::star::uno::RuntimeException);
601cdf0e10cSrcweir     virtual sal_Bool SAL_CALL hasElements(  ) throw(::com::sun::star::uno::RuntimeException);
602cdf0e10cSrcweir 
603cdf0e10cSrcweir 	//XTableColumns
604cdf0e10cSrcweir 	virtual void SAL_CALL insertByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException );
605cdf0e10cSrcweir 	virtual void SAL_CALL removeByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException );
606cdf0e10cSrcweir 
607cdf0e10cSrcweir 	//XServiceInfo
608cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
609cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
610cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
611cdf0e10cSrcweir 
612cdf0e10cSrcweir 	//SwClient
613cdf0e10cSrcweir    virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew);
614cdf0e10cSrcweir };
615cdf0e10cSrcweir 
616cdf0e10cSrcweir #endif
617cdf0e10cSrcweir 
618cdf0e10cSrcweir 
619cdf0e10cSrcweir 
620cdf0e10cSrcweir 
621