/************************************************************************* * * 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 * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_awt_XDockableWindow_idl__ #define __com_sun_star_awt_XDockableWindow_idl__ #ifndef __com_sun_star_uno_XInterface_idl__ #include #endif #ifndef __com_sun_star_awt_XDockableWindowListener_idl__ #include #endif #ifndef __com_sun_star_awt_Rectangle_idl__ #include #endif //============================================================================= module com { module sun { module star { module awt { //============================================================================= /** specifies the docking interface for a window component.

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.

*/ 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 specifies that docking is enabled specifies that docking is disabled and no XDockableWindowListener will be called */ void enableDocking( [in] boolean bEnable ); //------------------------------------------------------------------------- /** queries the current window state @returns if the window is floating if the window is docked */ boolean isFloating(); //------------------------------------------------------------------------- /** toggle between floating and docked state @param bFloating specifies the new floating mode: means floating, 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 if the window is locked 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 XDockableWindowListener for the corresponding events @param WindowRect specifies the position and size of the popup window in frame coordinates */ void startPopupMode( [in] com::sun::star::awt::Rectangle WindowRect ); //------------------------------------------------------------------------- /** queries the current popup mode @returns if the window is in popup mode if the window is not in popup mode */ boolean isInPopupMode(); }; //============================================================================= }; }; }; }; #endif