xref: /aoo41x/main/sw/source/core/access/accfrmobj.hxx (revision 4d7c9de0)
11d2dbeb0SAndrew Rist /**************************************************************
21d2dbeb0SAndrew Rist  *
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 _ACCFRMOBJ_HXX
24cdf0e10cSrcweir #define _ACCFRMOBJ_HXX
25cdf0e10cSrcweir 
26cdf0e10cSrcweir #include <sal/types.h>
27cdf0e10cSrcweir 
28cdf0e10cSrcweir class SwAccessibleMap;
29cdf0e10cSrcweir class SwFrm;
30cdf0e10cSrcweir class SdrObject;
31cdf0e10cSrcweir class Window;
32cdf0e10cSrcweir class SwRect;
33cdf0e10cSrcweir 
34cdf0e10cSrcweir namespace sw { namespace access {
35cdf0e10cSrcweir 
36cdf0e10cSrcweir class SwAccessibleChild
37cdf0e10cSrcweir {
38cdf0e10cSrcweir     public:
39cdf0e10cSrcweir         SwAccessibleChild();
40cdf0e10cSrcweir         explicit SwAccessibleChild( const SdrObject* pDrawObj );
41cdf0e10cSrcweir         explicit SwAccessibleChild( const SwFrm* pFrm );
42cdf0e10cSrcweir         explicit SwAccessibleChild( Window* pWindow );
43cdf0e10cSrcweir         SwAccessibleChild( const SwFrm* pFrm,
44cdf0e10cSrcweir                            const SdrObject* pDrawObj,
45cdf0e10cSrcweir                            Window* pWindow );
46cdf0e10cSrcweir 
47cdf0e10cSrcweir         SwAccessibleChild( const SwAccessibleChild& r );
48cdf0e10cSrcweir         SwAccessibleChild& operator=( const SwAccessibleChild& r );
49cdf0e10cSrcweir 
50cdf0e10cSrcweir         SwAccessibleChild& operator=( const SdrObject* pDrawObj );
51cdf0e10cSrcweir         SwAccessibleChild& operator=( const SwFrm* pFrm );
52cdf0e10cSrcweir         SwAccessibleChild& operator=( Window* pWindow );
53cdf0e10cSrcweir 
54cdf0e10cSrcweir         bool operator==( const SwAccessibleChild& r ) const;
55cdf0e10cSrcweir 
56cdf0e10cSrcweir         bool IsValid() const;
57cdf0e10cSrcweir 
58cdf0e10cSrcweir         const SwFrm* GetSwFrm() const;
59cdf0e10cSrcweir         const SdrObject* GetDrawObject() const;
60cdf0e10cSrcweir         Window* GetWindow() const;
61cdf0e10cSrcweir 
62cdf0e10cSrcweir         const SwFrm* GetParent( const sal_Bool bInPagePreview ) const;
63cdf0e10cSrcweir 
64cdf0e10cSrcweir         bool IsAccessible( sal_Bool bPagePreview ) const;
65cdf0e10cSrcweir         bool IsBoundAsChar() const;
66*ca62e2c2SSteve Yin 
67*ca62e2c2SSteve Yin 		sal_uInt32 GetAnchorPosition() const;
68cdf0e10cSrcweir 
69cdf0e10cSrcweir         bool IsVisibleChildrenOnly() const;
70cdf0e10cSrcweir         SwRect GetBox( const SwAccessibleMap& rAccMap ) const;
71cdf0e10cSrcweir         SwRect GetBounds( const SwAccessibleMap& rAccMap ) const;
72cdf0e10cSrcweir 
73cdf0e10cSrcweir         /** indicating, if accessible child is included even, if the corresponding
74cdf0e10cSrcweir             object is not visible.
75cdf0e10cSrcweir 
76cdf0e10cSrcweir             @author OD
77cdf0e10cSrcweir         */
78cdf0e10cSrcweir         bool AlwaysIncludeAsChild() const;
79cdf0e10cSrcweir 
80cdf0e10cSrcweir     private:
81cdf0e10cSrcweir         const SwFrm* mpFrm;
82cdf0e10cSrcweir         const SdrObject* mpDrawObj;
83cdf0e10cSrcweir         Window* mpWindow;
84cdf0e10cSrcweir 
85cdf0e10cSrcweir         void Init( const SdrObject* pDrawObj );
86cdf0e10cSrcweir         void Init( const SwFrm* pFrm );
87cdf0e10cSrcweir         void Init( Window* pWindow );
88cdf0e10cSrcweir };
89cdf0e10cSrcweir 
90cdf0e10cSrcweir 
91cdf0e10cSrcweir } } // eof of namespace sw::access
92cdf0e10cSrcweir 
93cdf0e10cSrcweir #endif
94