xref: /AOO41X/main/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx (revision ffad8df045fe8db79e3e50f731c1fa6ab6501c83)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 #ifndef ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
24 #define ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
25 
26 #include <tools/gen.hxx>
27 #include <tools/string.hxx>
28 #include <tools/wintypes.hxx>
29 
30 namespace com { namespace sun { namespace star { namespace datatransfer { namespace clipboard {
31     class XClipboard;
32 } } } } }
33 
34 class Window;
35 namespace accessibility
36 {
37     class SAL_NO_VTABLE IComboListBoxHelper
38     {
39     public:
40         virtual String          GetEntry( sal_uInt16 nPos ) const = 0;
41         virtual Rectangle       GetDropDownPosSizePixel( ) const = 0;
42         virtual Rectangle       GetBoundingRectangle( sal_uInt16 nItem ) const = 0;
43         virtual Rectangle       GetWindowExtentsRelative( Window* pRelativeWindow ) = 0;
44         virtual sal_Bool            IsActive() const = 0;
45         virtual sal_Bool        IsEnabled() const = 0;
46         virtual sal_Bool            IsEntryVisible( sal_uInt16 nPos ) const = 0;
47         virtual sal_uInt16          GetDisplayLineCount() const = 0;
48         virtual void            GetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const = 0;
49         virtual WinBits         GetStyle() const = 0;
50         virtual sal_Bool            IsMultiSelectionEnabled() const = 0;
51         virtual sal_uInt16          GetTopEntry() const = 0;
52         virtual sal_Bool            IsEntryPosSelected( sal_uInt16 nPos ) const = 0;
53         virtual sal_uInt16          GetEntryCount() const = 0;
54         virtual void            Select() = 0;
55         virtual void            SelectEntryPos( sal_uInt16 nPos, sal_Bool bSelect = sal_True ) = 0;
56         virtual sal_uInt16          GetSelectEntryCount() const = 0;
57         virtual void            SetNoSelection() = 0;
58         virtual sal_uInt16          GetSelectEntryPos( sal_uInt16 nSelIndex = 0 ) const = 0;
59         virtual sal_Bool            IsInDropDown() const = 0;
60         virtual Rectangle       GetEntryCharacterBounds( const sal_Int32 _nEntryPos, const sal_Int32 _nCharacterIndex ) const = 0;
61         virtual long            GetIndexForPoint( const Point& rPoint, sal_uInt16& nPos ) const = 0;
62         virtual ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard >
63                                 GetClipboard() = 0;
64     };
65 }
66 #endif // ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
67