diff options
Diffstat (limited to 'offapi/com/sun/star/drawing/framework/XTabBar.idl')
-rw-r--r-- | offapi/com/sun/star/drawing/framework/XTabBar.idl | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/offapi/com/sun/star/drawing/framework/XTabBar.idl b/offapi/com/sun/star/drawing/framework/XTabBar.idl new file mode 100644 index 000000000..97778edf2 --- /dev/null +++ b/offapi/com/sun/star/drawing/framework/XTabBar.idl @@ -0,0 +1,94 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_drawing_framework_XTabBar_idl__ +#define __com_sun_star_drawing_framework_XTabBar_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/awt/XWindow.idl> +#include <com/sun/star/drawing/framework/TabBarButton.idl> + +module com { module sun { module star { module drawing { module framework { + +/** UI control for the selection of views in a pane. + <p>Every tab of a tab bar has, besides its localized title and help + text, the URL of a view. A possible alternative would be to use a + command URL instead of the view URL.</p> + <p>In the current Impress implementation a tab bar is only used for the + center pane to switch between views in the center pane. Tab bars can + make sense for other panes as well, i.e. for showing either the slide + sorter or the outline view in the left pane.</p> + <p>Tab bar buttons are identified by their resource id. Note that + because the resource anchors are all the same (the tab bar), it is the + resource URL that really identifies a button. There can not be two + buttons with the same resource id.</p> + </p> + <p>A better place for this interface (in an extended version) would be + <code>com::sun::star::awt</code></p> + @see TabBarButton +*/ +interface XTabBar +{ + /** Add a tab bar button to the right of another one. + @param aButton + The new tab bar button that is to be inserted. If a button with + the same resource id is already present than that is removed before the + new button is inserted. + @param aAnchor + The new button is inserted to the right of this button. When + its ResourceId is empty then the new button is inserted at the left + most position. + */ + void addTabBarButtonAfter ([in] TabBarButton aButton, [in] TabBarButton aAnchor); + + /** Add a tab bar button at the right most position. + @param aButton + The new tab bar button that is to be inserted. + */ + void appendTabBarButton ([in] TabBarButton aButton); + + /** Remove a tab bar button. + @param aButton + The tab bar button to remove. When there is no button with the + specified resource id then this call is silently ignored. + */ + void removeTabBarButton ([in] TabBarButton aButton); + + /** Test whether the specified button exists in the tab bar. + @param aButton + The tab bar button whose existence is tested. + @return + Returns `TRUE` when the button exists. + */ + boolean hasTabBarButton ([in] TabBarButton aButton); + + /** Return a sequence of all the tab bar buttons. + <p>Their order reflects the visible order in the tab bar.</p> + <p>This method can be used when + addTabBarButtonAfter() does not provide enough + control as to where to insert a new button.</p> + */ + sequence<TabBarButton> getTabBarButtons (); +}; + +}; }; }; }; }; // ::com::sun::star::drawing::framework + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |