office-gobmx/offapi/com/sun/star/awt/XDockableWindow.idl
2011-04-02 00:08:53 +02:00

138 lines
4.9 KiB
Text

/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
#ifndef __com_sun_star_awt_XDockableWindow_idl__
#define __com_sun_star_awt_XDockableWindow_idl__
#include <com/sun/star/uno/XInterface.idl>
#include <com/sun/star/awt/XDockableWindowListener.idl>
#include <com/sun/star/awt/Rectangle.idl>
//=============================================================================
module com { module sun { module star { module awt {
//=============================================================================
/** specifies the docking interface for a window component.
<p>A window can either be docked where it resides as a child window in
an application frame window or it can be floating where it will
reside in its own decorated top level window.
</p>
*/
interface XDockableWindow : com::sun::star::uno::XInterface
{
/** adds a docking listener to the object.
only a single listener may be registered at any time.
*/
void addDockableWindowListener( [in] com::sun::star::awt::XDockableWindowListener xListener );
//-------------------------------------------------------------------------
/** removes the specified docking listener from the object.
*/
void removeDockableWindowListener( [in] com::sun::star::awt::XDockableWindowListener xListener );
//-------------------------------------------------------------------------
/** enable or disable docking, docking is disabled by default
@param bEnable
<TRUE/> specifies that docking is enabled
<FALSE/> specifies that docking is disabled and no
<type scope="com::sun::star::awt">XDockableWindowListener</type> will be called
*/
void enableDocking( [in] boolean bEnable );
//-------------------------------------------------------------------------
/** queries the current window state
@returns
<TRUE/> if the window is floating
<FALSE/> if the window is docked
*/
boolean isFloating();
//-------------------------------------------------------------------------
/** toggle between floating and docked state
@param bFloating
specifies the new floating mode:
<TRUE/> means floating, <FALSE/> means docked
*/
void setFloatingMode( [in] boolean bFloating );
//-------------------------------------------------------------------------
/** prevents the window from being undocked
this has no effect if the window is floating
*/
void lock();
//-------------------------------------------------------------------------
/** enables undocking
this has no effect if the window is floating
*/
void unlock();
//-------------------------------------------------------------------------
/** queries the current locking state
@returns
<TRUE/> if the window is locked
<FALSE/> if the window is not locked
*/
boolean isLocked();
//-------------------------------------------------------------------------
/** shows the window in a menu like style, i.e. without decoration
a special indicator will allow for tearing off the window
see <type scope="com::sun::star::awt">XDockableWindowListener</type> for
the corresponding events
@param WindowRect
specifies the position and size of the pop-up window in frame coordinates
*/
void startPopupMode( [in] com::sun::star::awt::Rectangle WindowRect );
//-------------------------------------------------------------------------
/** queries the current pop-up mode
@returns
<TRUE/> if the window is in pop-up mode
<FALSE/> if the window is not in pop-up mode
*/
boolean isInPopupMode();
};
//=============================================================================
}; }; }; };
#endif