1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_awt_tab_XTabPageContainer_idl__
28#define __com_sun_star_awt_tab_XTabPageContainer_idl__
29
30#include <com/sun/star/awt/tab/XTabPageContainerListener.idl>
31#include <com/sun/star/awt/tab/XTabPage.idl>
32//=============================================================================
33
34module com {  module sun {  module star {  module awt { module tab {
35
36//=============================================================================
37
38/** An interface to a control that displays tab pages.
39
40	@see UnoControlTabPageContainer
41
42	@since OOo 3.4
43 */
44published interface XTabPageContainer
45{
46	/** Returns the number of tab pages.
47		@returns
48			the number of tab pages.
49	*/
50	short getTabPageCount();
51
52    //-------------------------------------------------------------------------
53
54    /** Checks whether a tab page is activated.
55        @param
56            the tab page to be checked.
57        @returns
58            <TRUE/> if tab page is activated, else <FALSE/>.
59    */
60    boolean isTabPageActive([in] short tabPageIndex);
61
62    //-------------------------------------------------------------------------
63
64    /** Returns tab page for the given index.
65        @param
66            tabPageIndex - index of the tab page in the IndexContainer.
67        @returns
68            tab page which has tabPageIndex.
69    */
70    XTabPage getTabPage([in] short tabPageIndex);
71
72    //-------------------------------------------------------------------------
73
74    /** Returns tab page for the given ID.
75        @param
76            tabPageID - ID of the tab page.
77        @returns
78            tab page which has tabPageID.
79    */
80    XTabPage getTabPageByID([in] short tabPageID);
81
82    //-------------------------------------------------------------------------
83
84    /** Adds a listener for the <type>TabPageActivedEvent</type> posted after
85        the tab page was activated.
86        @param listener
87            the listener to add.
88    */
89    [oneway] void addTabPageContainerListener( [in] XTabPageContainerListener  listener);
90
91    //-------------------------------------------------------------------------
92
93    /** Removes a listener previously added with <method>addTabPageListener()</method>.
94        @param listener
95            the listener to remove.
96    */
97    [oneway] void removeTabPageContainerListener( [in] XTabPageContainerListener listener);
98
99    //-------------------------------------------------------------------------
100    /** Specifies the ID of the current active tab page.
101    */
102    [attribute] short ActiveTabPageID;
103};
104
105//=============================================================================
106
107}; }; }; }; };
108
109#endif
110