/* -*- 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 .
*/
module com { module sun { module star { module awt {
/** specifies the basic operations for a tab controller,
but does not require XControl as type of tabs .
*/
interface XSimpleTabController : com::sun::star::uno::XInterface
{
/** create a new tab and return a unique ID,
which can be used further to address this tab by using other methods
of this interface .
@ return [ long
a unique ID for this new tab .
*/
long insertTab();
/** remove a tab with the given ID.
@ param ID
the ID of the tab , which should be removed .
@ throws : : com : : sun : : star : : lang : : IndexOutOfBoundsException
if the specified ID isn ' t used inside this tab controller .
*/
void removeTab( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
/** change some properties of the specified tab.
@ param Properties
Such properties can be :
< table >
< tr >
< td > < b > Property < / b > < / td >
< td > < b > Type < / b > < / td >
< td > < b > Description < / b > < / td >
< / tr >
< tr >
< td > Title < / td >
< td > string < / td >
< td > the title of the tab , which is shown at the UI . < / td >
< / tr >
< tr >
< td > Position < / td >
< td > int < / td >
< td > describe the order of this tab in relation to all other tabs inside this control . < / td >
< / tr >
< / table >
@ attention Not all properties must be supported by all implementations of this interface .
Of course some important ones should be handled by every implementation . . .
as e . g . " Title " .
@ param ID
the ID of the tab , which should be changed .
@ throws : : com : : sun : : star : : lang : : IndexOutOfBoundsException
if the specified ID isn ' t used inside this tab controller .
*/
void setTabProps( [in] long ID ,
[in] sequence< com::sun::star::beans::NamedValue > Properties )
raises( com::sun::star::lang::IndexOutOfBoundsException );
/** retrieve the set of properties for the specified tab.
@ param ID
the ID of the tab .
@ throws : : com : : sun : : star : : lang : : IndexOutOfBoundsException
if the specified ID isn ' t used inside this tab controller .
*/
sequence< com::sun::star::beans::NamedValue > getTabProps( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
/** activate the specified tab.
The new tab will be activated and all listener will get an event describing this .
Of course there will be an event too , which notifies listener about the deactivation
of the last active tab .
@ param ID
the ID of the new active tab .
@ throws : : com : : sun : : star : : lang : : IndexOutOfBoundsException
if the specified ID isn ' t used inside this tab controller .
*/
void activateTab( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
/** return the unique ID of the current active tab.
@ return [ long ]
the ID of the active tab .
*/
long getActiveTabID();
/** register listener for inserting/removing tabs and changing their properties.
@ param Listener
the listener to register .
*/
void addTabListener( [in] XTabListener Listener );
/** unregister listener for inserting/removing tabs and changing their properties.
@ param Listener
the listener to unregister .
*/
void removeTabListener( [in] XTabListener Listener );
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Messung V0.5 in Prozent C=94 H=100 G=96
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-10-05)
¤
*© Formatika GbR, Deutschland