diff options
Diffstat (limited to 'offapi/com/sun/star/awt/XDockableWindow.idl')
-rw-r--r-- | offapi/com/sun/star/awt/XDockableWindow.idl | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/offapi/com/sun/star/awt/XDockableWindow.idl b/offapi/com/sun/star/awt/XDockableWindow.idl new file mode 100644 index 000000000..400283827 --- /dev/null +++ b/offapi/com/sun/star/awt/XDockableWindow.idl @@ -0,0 +1,120 @@ +/* -*- 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_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 + com::sun::star::awt::XDockableWindowListener 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 com::sun::star::awt::XDockableWindowListener 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 + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |