xref: /aoo41x/main/sw/source/core/access/accpage.hxx (revision 1d2dbeb0)
1*1d2dbeb0SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*1d2dbeb0SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*1d2dbeb0SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*1d2dbeb0SAndrew Rist  * distributed with this work for additional information
6*1d2dbeb0SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*1d2dbeb0SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*1d2dbeb0SAndrew Rist  * "License"); you may not use this file except in compliance
9*1d2dbeb0SAndrew Rist  * with the License.  You may obtain a copy of the License at
10*1d2dbeb0SAndrew Rist  *
11*1d2dbeb0SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*1d2dbeb0SAndrew Rist  *
13*1d2dbeb0SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*1d2dbeb0SAndrew Rist  * software distributed under the License is distributed on an
15*1d2dbeb0SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*1d2dbeb0SAndrew Rist  * KIND, either express or implied.  See the License for the
17*1d2dbeb0SAndrew Rist  * specific language governing permissions and limitations
18*1d2dbeb0SAndrew Rist  * under the License.
19*1d2dbeb0SAndrew Rist  *
20*1d2dbeb0SAndrew Rist  *************************************************************/
21*1d2dbeb0SAndrew Rist 
22*1d2dbeb0SAndrew Rist 
23cdf0e10cSrcweir #ifndef _ACCPAGE_HXX
24cdf0e10cSrcweir #define _ACCPAGE_HXX
25cdf0e10cSrcweir 
26cdf0e10cSrcweir #ifndef _ACCCONTEXT_HXX
27cdf0e10cSrcweir #include "acccontext.hxx"
28cdf0e10cSrcweir #endif
29cdf0e10cSrcweir 
30cdf0e10cSrcweir 
31cdf0e10cSrcweir /**
32cdf0e10cSrcweir  * accessibility implementation for the page (SwPageFrm)
33cdf0e10cSrcweir  * The page is _only_ visible in the page preview. For the regular
34cdf0e10cSrcweir  * document view, it doesn't make sense to add this additional element
35cdf0e10cSrcweir  * into the hierarchy. For the page preview, however, the page is the
36cdf0e10cSrcweir  * important.
37cdf0e10cSrcweir  */
38cdf0e10cSrcweir class SwAccessiblePage : public SwAccessibleContext
39cdf0e10cSrcweir {
40cdf0e10cSrcweir 	sal_Bool	bIsSelected;	// protected by base class mutex
41cdf0e10cSrcweir 
42cdf0e10cSrcweir 	sal_Bool	IsSelected();
43cdf0e10cSrcweir 
44cdf0e10cSrcweir     using SwAccessibleFrame::GetBounds;
45cdf0e10cSrcweir 
46cdf0e10cSrcweir protected:
47cdf0e10cSrcweir 
48cdf0e10cSrcweir     // return the bounding box for the page in page preview mode
49cdf0e10cSrcweir 	SwRect GetBounds( /* const SwFrm *pFrm =0 */ );
50cdf0e10cSrcweir 
51cdf0e10cSrcweir 	// Set states for getAccessibleStateSet.
52cdf0e10cSrcweir 	// This drived class additionaly sets
53cdf0e10cSrcweir 	// FOCUSABLE(1) and FOCUSED(+)
54cdf0e10cSrcweir 	virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
55cdf0e10cSrcweir 
56cdf0e10cSrcweir 	virtual void _InvalidateCursorPos();
57cdf0e10cSrcweir 	virtual void _InvalidateFocus();
58cdf0e10cSrcweir 
59cdf0e10cSrcweir     virtual ~SwAccessiblePage();
60cdf0e10cSrcweir 
61cdf0e10cSrcweir public:
62cdf0e10cSrcweir     // convenience constructor to avoid typecast;
63cdf0e10cSrcweir     // may only be called with SwPageFrm argument
64cdf0e10cSrcweir     SwAccessiblePage( SwAccessibleMap* pInitMap, const SwFrm* pFrame );
65cdf0e10cSrcweir 
66cdf0e10cSrcweir 
67cdf0e10cSrcweir 
68cdf0e10cSrcweir     //
69cdf0e10cSrcweir     // XAccessibleContext methods that need to be overridden
70cdf0e10cSrcweir     //
71cdf0e10cSrcweir 
72cdf0e10cSrcweir 	virtual ::rtl::OUString SAL_CALL getAccessibleDescription (void)
73cdf0e10cSrcweir         throw (::com::sun::star::uno::RuntimeException);
74cdf0e10cSrcweir 
75cdf0e10cSrcweir     //
76cdf0e10cSrcweir     // XServiceInfo
77cdf0e10cSrcweir     //
78cdf0e10cSrcweir 
79cdf0e10cSrcweir 	virtual ::rtl::OUString SAL_CALL getImplementationName (void)
80cdf0e10cSrcweir         throw (::com::sun::star::uno::RuntimeException);
81cdf0e10cSrcweir     virtual sal_Bool SAL_CALL supportsService (
82cdf0e10cSrcweir         const ::rtl::OUString& sServiceName)
83cdf0e10cSrcweir         throw (::com::sun::star::uno::RuntimeException);
84cdf0e10cSrcweir 	virtual ::com::sun::star::uno::Sequence< ::rtl::OUString> SAL_CALL
85cdf0e10cSrcweir     	getSupportedServiceNames (void)
86cdf0e10cSrcweir         throw (::com::sun::star::uno::RuntimeException);
87cdf0e10cSrcweir 
88cdf0e10cSrcweir 	//=====  XTypeProvider  ====================================================
89cdf0e10cSrcweir     virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId(  ) throw(::com::sun::star::uno::RuntimeException);
90cdf0e10cSrcweir 
91cdf0e10cSrcweir 	virtual sal_Bool HasCursor();	// required by map to remember that object
92cdf0e10cSrcweir };
93cdf0e10cSrcweir 
94cdf0e10cSrcweir #endif
95cdf0e10cSrcweir 
96