1*cdf0e10cSrcweir/************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir#ifndef __com_sun_star_frame_XLayoutManager_idl__ 29*cdf0e10cSrcweir#define __com_sun_star_frame_XLayoutManager_idl__ 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__ 32*cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl> 33*cdf0e10cSrcweir#endif 34*cdf0e10cSrcweir 35*cdf0e10cSrcweir#ifndef __com_sun_star_frame_XFrame_idl__ 36*cdf0e10cSrcweir#include <com/sun/star/frame/XFrame.idl> 37*cdf0e10cSrcweir#endif 38*cdf0e10cSrcweir 39*cdf0e10cSrcweir#ifndef __com_sun_star_awt_Point_idl__ 40*cdf0e10cSrcweir#include <com/sun/star/awt/Point.idl> 41*cdf0e10cSrcweir#endif 42*cdf0e10cSrcweir 43*cdf0e10cSrcweir#ifndef __com_sun_star_awt_Size_idl__ 44*cdf0e10cSrcweir#include <com/sun/star/awt/Size.idl> 45*cdf0e10cSrcweir#endif 46*cdf0e10cSrcweir 47*cdf0e10cSrcweir#ifndef __com_sun_star_awt_XWindow_idl__ 48*cdf0e10cSrcweir#include <com/sun/star/awt/XWindow.idl> 49*cdf0e10cSrcweir#endif 50*cdf0e10cSrcweir 51*cdf0e10cSrcweir#ifndef __com_sun_star_ui_XUIElement_idl__ 52*cdf0e10cSrcweir#include <com/sun/star/ui/XUIElement.idl> 53*cdf0e10cSrcweir#endif 54*cdf0e10cSrcweir 55*cdf0e10cSrcweir#ifndef __com_sun_star_ui_DockingArea_idl__ 56*cdf0e10cSrcweir#include <com/sun/star/ui/DockingArea.idl> 57*cdf0e10cSrcweir#endif 58*cdf0e10cSrcweir 59*cdf0e10cSrcweir#ifndef __com_sun_star_ui_XDockingAreaAcceptor_idl__ 60*cdf0e10cSrcweir#include <com/sun/star/ui/XDockingAreaAcceptor.idl> 61*cdf0e10cSrcweir#endif 62*cdf0e10cSrcweir 63*cdf0e10cSrcweir//============================================================================= 64*cdf0e10cSrcweir 65*cdf0e10cSrcweirmodule com { module sun { module star { module frame { 66*cdf0e10cSrcweir 67*cdf0e10cSrcweir//============================================================================= 68*cdf0e10cSrcweir 69*cdf0e10cSrcweir/** central interface to query for, create, destroy and manipulate user 70*cdf0e10cSrcweir interface elements which are bound to a layout manager. 71*cdf0e10cSrcweir 72*cdf0e10cSrcweir <p> 73*cdf0e10cSrcweir Every user interface element which is controlled by a layout manager has 74*cdf0e10cSrcweir a unique identifier called resource URL. 75*cdf0e10cSrcweir 76*cdf0e10cSrcweir A resourcce URL must meet the following syntax: 77*cdf0e10cSrcweir "private:resource/$type/$name". It is only allowed to use ascii characters 78*cdf0e10cSrcweir for type and name. 79*cdf0e10cSrcweir 80*cdf0e10cSrcweir Currently the following user interface element types are defined: 81*cdf0e10cSrcweir <ul> 82*cdf0e10cSrcweir <li><b>menubar</b>A configurable user interface element representing 83*cdf0e10cSrcweir a menu bar.</li> 84*cdf0e10cSrcweir <li><b>popupmenu</b>A configurable user interface element representing 85*cdf0e10cSrcweir a popup menu.</li> 86*cdf0e10cSrcweir <li><b>toolbar</b>A configurable user interface element a tool 87*cdf0e10cSrcweir bar.</li> 88*cdf0e10cSrcweir <li><b>statusbar</b>A configurable user interfave element representing 89*cdf0e10cSrcweir a status bar.</li> 90*cdf0e10cSrcweir <li><b>floater</b>A basic user interface element representing a 91*cdf0e10cSrcweir floating window.</li> 92*cdf0e10cSrcweir </ul> 93*cdf0e10cSrcweir 94*cdf0e10cSrcweir @see com::sun::star::ui::UIElementTypes 95*cdf0e10cSrcweir @see com::sun::star::frame::XFrame 96*cdf0e10cSrcweir </p> 97*cdf0e10cSrcweir 98*cdf0e10cSrcweir @since OOo 2.0 99*cdf0e10cSrcweir*/ 100*cdf0e10cSrcweir 101*cdf0e10cSrcweirpublished interface XLayoutManager : com::sun::star::uno::XInterface 102*cdf0e10cSrcweir{ 103*cdf0e10cSrcweir /** attaches a <type scope="com::sun::star::frame">XFrame</type> to a layout manager. 104*cdf0e10cSrcweir 105*cdf0e10cSrcweir @param Frame 106*cdf0e10cSrcweir specifies the frame that should be attached to the layout manager 107*cdf0e10cSrcweir 108*cdf0e10cSrcweir <p> 109*cdf0e10cSrcweir A layout manager needs a <type scope="com::sun::star::frame">XFrame</type> to be 110*cdf0e10cSrcweir able to work. Without a it no user interface elements can be created. 111*cdf0e10cSrcweir </p> 112*cdf0e10cSrcweir */ 113*cdf0e10cSrcweir void attachFrame( [in] com::sun::star::frame::XFrame Frame ); 114*cdf0e10cSrcweir 115*cdf0e10cSrcweir /** resets the layout manager and remove all of its internal user interface 116*cdf0e10cSrcweir elements. 117*cdf0e10cSrcweir 118*cdf0e10cSrcweir <p> 119*cdf0e10cSrcweir This call should be handled with care as all user interface elements will 120*cdf0e10cSrcweir be destroyed and the layout manager is reseted to a state after a 121*cdf0e10cSrcweir <member>attachFrame</member> has been made. That means an attached frame 122*cdf0e10cSrcweir which has been set by <member>attachFrame</member> is not released. 123*cdf0e10cSrcweir The layout manager itself calls reset after a component has been attached 124*cdf0e10cSrcweir or reattached to a frame. 125*cdf0e10cSrcweir </p> 126*cdf0e10cSrcweir */ 127*cdf0e10cSrcweir void reset(); 128*cdf0e10cSrcweir 129*cdf0e10cSrcweir /** provides the current docking area size of the layout manager. 130*cdf0e10cSrcweir 131*cdf0e10cSrcweir @return 132*cdf0e10cSrcweir The <type scope="com::sun::star::awt">Rectangle</type> contains pixel values. The 133*cdf0e10cSrcweir members of <type scope="com::sun::star::awt">Rectangle</type> are filled as following: 134*cdf0e10cSrcweir <ul> 135*cdf0e10cSrcweir <li>X = docking area on left side (in pixel)</li> 136*cdf0e10cSrcweir <li>Y = docking area on top side (in pixel)</li> 137*cdf0e10cSrcweir <li>Width = docking area on right side (in pixel)</li> 138*cdf0e10cSrcweir <li>Height = docking area on bottom side (in pixel)</li> 139*cdf0e10cSrcweir </ul> 140*cdf0e10cSrcweir */ 141*cdf0e10cSrcweir com::sun::star::awt::Rectangle getCurrentDockingArea(); 142*cdf0e10cSrcweir 143*cdf0e10cSrcweir /** retrieves the current docking area acceptor that controls the border space of the frame's 144*cdf0e10cSrcweir container window. 145*cdf0e10cSrcweir 146*cdf0e10cSrcweir @return 147*cdf0e10cSrcweir current docking area acceptor which controls the border space of frame's container window. 148*cdf0e10cSrcweir 149*cdf0e10cSrcweir <p> 150*cdf0e10cSrcweir A docking area acceptor retrieved by this method is owned by the layout manager. It is not 151*cdf0e10cSrcweir allowed to dispose this object, it will be destroyed on reference count! 152*cdf0e10cSrcweir </p> 153*cdf0e10cSrcweir */ 154*cdf0e10cSrcweir com::sun::star::ui::XDockingAreaAcceptor getDockingAreaAcceptor(); 155*cdf0e10cSrcweir 156*cdf0e10cSrcweir /** sets a docking area acceptor that controls the border space of the frame's container window. 157*cdf0e10cSrcweir 158*cdf0e10cSrcweir @param xDockingAreaAcceptor 159*cdf0e10cSrcweir a docking area acceptor which controls the border space of frame's container window. 160*cdf0e10cSrcweir 161*cdf0e10cSrcweir <p> 162*cdf0e10cSrcweir A docking area acceptor decides if the layout manager can use requested border space for 163*cdf0e10cSrcweir docking windows. If the acceptor denies the requested space the layout manager automatically 164*cdf0e10cSrcweir set all docked windows into floating state and will not use this space for docking.<br/> 165*cdf0e10cSrcweir After setting a docking area acceptor the object is owned by the layout manager. It is not 166*cdf0e10cSrcweir allowed to dispose this object, it will be destroyed on reference count! 167*cdf0e10cSrcweir </p> 168*cdf0e10cSrcweir */ 169*cdf0e10cSrcweir void setDockingAreaAcceptor( [in] com::sun::star::ui::XDockingAreaAcceptor xDockingAreaAcceptor ); 170*cdf0e10cSrcweir 171*cdf0e10cSrcweir /** creates a new user interface element. 172*cdf0e10cSrcweir 173*cdf0e10cSrcweir @param ResourceURL 174*cdf0e10cSrcweir specifies which user interface element should be created. A resourcce URL must meet the following 175*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 176*cdf0e10cSrcweir name. 177*cdf0e10cSrcweir */ 178*cdf0e10cSrcweir void createElement( [in] string ResourceURL ); 179*cdf0e10cSrcweir 180*cdf0e10cSrcweir /** destroys a user interface element. 181*cdf0e10cSrcweir 182*cdf0e10cSrcweir @param ResourceURL 183*cdf0e10cSrcweir specifies which user interface element should be destroyed. A resourcce URL must meet 184*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii 185*cdf0e10cSrcweir characters for type and name. 186*cdf0e10cSrcweir */ 187*cdf0e10cSrcweir void destroyElement( [in] string ResourceURL ); 188*cdf0e10cSrcweir 189*cdf0e10cSrcweir /** request to make a user interface element visible if it is not in hidden state. 190*cdf0e10cSrcweir 191*cdf0e10cSrcweir @param ResourceURL 192*cdf0e10cSrcweir specifies which user interface element should be made visible. A resourcce URL must 193*cdf0e10cSrcweir meet the following syntax: "private:resource/$type/$name". It is only allowed to use 194*cdf0e10cSrcweir ascii characters for type and 195*cdf0e10cSrcweir name. 196*cdf0e10cSrcweir 197*cdf0e10cSrcweir @return 198*cdf0e10cSrcweir returns <TRUE/> if the user interface element could be made visible, otherwise 199*cdf0e10cSrcweir <FALSE/> will be returned. 200*cdf0e10cSrcweir 201*cdf0e10cSrcweir <p> 202*cdf0e10cSrcweir If a user interface element should forced to the visible state 203*cdf0e10cSrcweir <member>XLayoutManager::showElement</member> should be used. This function can be 204*cdf0e10cSrcweir used for context dependent elements which should respect a the current visibility 205*cdf0e10cSrcweir state. 206*cdf0e10cSrcweir </p> 207*cdf0e10cSrcweir */ 208*cdf0e10cSrcweir boolean requestElement( [in] string ResourceURL ); 209*cdf0e10cSrcweir 210*cdf0e10cSrcweir /** retrieves a user interface element which has been created before. 211*cdf0e10cSrcweir 212*cdf0e10cSrcweir @param ResourceURL 213*cdf0e10cSrcweir specifies which user interface element should be retrieved. A resourcce URL must meet the following 214*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 215*cdf0e10cSrcweir name. 216*cdf0e10cSrcweir 217*cdf0e10cSrcweir <p> 218*cdf0e10cSrcweir The layout manager instance is owner of the returned user interface element. That means that the life time of 219*cdf0e10cSrcweir the user interface element is controlled by the layout manager. It can be disposed at every time! 220*cdf0e10cSrcweir </p> 221*cdf0e10cSrcweir */ 222*cdf0e10cSrcweir com::sun::star::ui::XUIElement getElement( [in] string ResourceURL ); 223*cdf0e10cSrcweir 224*cdf0e10cSrcweir /** retrieves all user interface elements which are currently instanciated. 225*cdf0e10cSrcweir 226*cdf0e10cSrcweir @return 227*cdf0e10cSrcweir a sequence of user interface elements providing <type scope="com::sun::star::ui">XUIElement</type> 228*cdf0e10cSrcweir interface. 229*cdf0e10cSrcweir 230*cdf0e10cSrcweir <p> 231*cdf0e10cSrcweir The layout manager instance is owner of the returned user interface elements. That means that the life time of 232*cdf0e10cSrcweir the user interface elements is controlled by the layout manager. They can be disposed at every time! 233*cdf0e10cSrcweir </p> 234*cdf0e10cSrcweir */ 235*cdf0e10cSrcweir sequence< com::sun::star::ui::XUIElement > getElements(); 236*cdf0e10cSrcweir 237*cdf0e10cSrcweir /** shows a user interface element. 238*cdf0e10cSrcweir 239*cdf0e10cSrcweir @param ResourceURL 240*cdf0e10cSrcweir specifies which user interface element should be shown. A resourcce URL must meet the following 241*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 242*cdf0e10cSrcweir name. 243*cdf0e10cSrcweir 244*cdf0e10cSrcweir @return 245*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been shown, otherwise <FALSE/> will be returned. 246*cdf0e10cSrcweir */ 247*cdf0e10cSrcweir boolean showElement( [in] string ResourceURL ); 248*cdf0e10cSrcweir 249*cdf0e10cSrcweir /** hides a user interface element. 250*cdf0e10cSrcweir 251*cdf0e10cSrcweir @param ResourceURL 252*cdf0e10cSrcweir specifies which user interface element should be hidden. A resourcce URL must meet the following 253*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 254*cdf0e10cSrcweir name. 255*cdf0e10cSrcweir 256*cdf0e10cSrcweir @return 257*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been hidden, otherwise <FALSE/> will be returned. 258*cdf0e10cSrcweir */ 259*cdf0e10cSrcweir boolean hideElement( [in] string ResourceURL ); 260*cdf0e10cSrcweir 261*cdf0e10cSrcweir /** docks a window based user interface element to a specified docking area. 262*cdf0e10cSrcweir 263*cdf0e10cSrcweir @param ResourceURL 264*cdf0e10cSrcweir specifies which user interface element should be docked. A resourcce URL must meet the following 265*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 266*cdf0e10cSrcweir name. 267*cdf0e10cSrcweir 268*cdf0e10cSrcweir @param DockingArea 269*cdf0e10cSrcweir specifies on which docking area the window based user interface element should docked. 270*cdf0e10cSrcweir 271*cdf0e10cSrcweir @param Pos 272*cdf0e10cSrcweir specifies the position inside the docking area. 273*cdf0e10cSrcweir 274*cdf0e10cSrcweir @return 275*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been docked, otherwise <FALSE/> will be returned. 276*cdf0e10cSrcweir 277*cdf0e10cSrcweir @see com::sun::star::ui::DockingArea 278*cdf0e10cSrcweir */ 279*cdf0e10cSrcweir boolean dockWindow( [in] string ResourceURL, [in] com::sun::star::ui::DockingArea DockingArea, [in] com::sun::star::awt::Point Pos ); 280*cdf0e10cSrcweir 281*cdf0e10cSrcweir /** docks all windows which are member of the provided user interface element type. 282*cdf0e10cSrcweir 283*cdf0e10cSrcweir @param nElementType 284*cdf0e10cSrcweir specifies which user interface element type should be docked. 285*cdf0e10cSrcweir 286*cdf0e10cSrcweir @return 287*cdf0e10cSrcweir returns <TRUE/> if all user interface elements of the requested type could be 288*cdf0e10cSrcweir docked, otherwise <FALSE/> will be returned. 289*cdf0e10cSrcweir 290*cdf0e10cSrcweir @see com::sun::star::ui::UIElementType 291*cdf0e10cSrcweir */ 292*cdf0e10cSrcweir boolean dockAllWindows( [in] short nElementType ); 293*cdf0e10cSrcweir 294*cdf0e10cSrcweir /** forces a window based user interface element to float. 295*cdf0e10cSrcweir 296*cdf0e10cSrcweir @param ResourceURL 297*cdf0e10cSrcweir specifies which user interface element should be float. A resourcce URL must meet the following 298*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 299*cdf0e10cSrcweir name. 300*cdf0e10cSrcweir 301*cdf0e10cSrcweir @return 302*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been docked, otherwise <FALSE/> will be returned. 303*cdf0e10cSrcweir */ 304*cdf0e10cSrcweir boolean floatWindow( [in] string ResourceURL ); 305*cdf0e10cSrcweir 306*cdf0e10cSrcweir /** locks a window based user interface element if it's in a docked state. 307*cdf0e10cSrcweir 308*cdf0e10cSrcweir @param ResourceURL 309*cdf0e10cSrcweir specifies which user interface element should be locked. A resourcce URL must meet the following 310*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 311*cdf0e10cSrcweir name. 312*cdf0e10cSrcweir 313*cdf0e10cSrcweir @return 314*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been locked, otherwise <FALSE/> will be returned. 315*cdf0e10cSrcweir */ 316*cdf0e10cSrcweir boolean lockWindow( [in] string ResourceURL ); 317*cdf0e10cSrcweir 318*cdf0e10cSrcweir /** unlocks a window based user interface element if it's in a docked state. 319*cdf0e10cSrcweir 320*cdf0e10cSrcweir @param ResourceURL 321*cdf0e10cSrcweir specifies which user interface element should be unlocked. A resourcce URL must 322*cdf0e10cSrcweir meet the following syntax: "private:resource/$type/$name". It is only allowed 323*cdf0e10cSrcweir to use ascii characters for type and name. 324*cdf0e10cSrcweir 325*cdf0e10cSrcweir @return 326*cdf0e10cSrcweir returns <TRUE/> if the user interface element has been unlocked, otherwise 327*cdf0e10cSrcweir <FALSE/> will be returned. 328*cdf0e10cSrcweir */ 329*cdf0e10cSrcweir boolean unlockWindow( [in] string ResourceURL ); 330*cdf0e10cSrcweir 331*cdf0e10cSrcweir /** sets a new size for a window based user interface element. 332*cdf0e10cSrcweir 333*cdf0e10cSrcweir @param ResourceURL 334*cdf0e10cSrcweir specifies which user interface element should be resized. A resourcce URL must meet the following 335*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 336*cdf0e10cSrcweir name. 337*cdf0e10cSrcweir 338*cdf0e10cSrcweir @param Size 339*cdf0e10cSrcweir specifies the new size in pixel. 340*cdf0e10cSrcweir 341*cdf0e10cSrcweir <p> 342*cdf0e10cSrcweir It is up to the layout manager to decide if the user interface element can be resized. The new size can be retrieved 343*cdf0e10cSrcweir by calling <member>getElementSize</member>. 344*cdf0e10cSrcweir </p> 345*cdf0e10cSrcweir */ 346*cdf0e10cSrcweir void setElementSize( [in] string ResourceURL, [in] com::sun::star::awt::Size Size ); 347*cdf0e10cSrcweir 348*cdf0e10cSrcweir /** sets a new position for a window based user interface element. 349*cdf0e10cSrcweir 350*cdf0e10cSrcweir @param ResourceURL 351*cdf0e10cSrcweir specifies which user interface element should be moved. A resourcce URL must meet the following 352*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 353*cdf0e10cSrcweir name. 354*cdf0e10cSrcweir 355*cdf0e10cSrcweir @param Pos 356*cdf0e10cSrcweir specifies the new position in pixel. 357*cdf0e10cSrcweir 358*cdf0e10cSrcweir <p> 359*cdf0e10cSrcweir It is up to the layout manager to decide if the user interface element can be moved. The new position can be retrieved 360*cdf0e10cSrcweir by calling <member>getElementPos</member>. 361*cdf0e10cSrcweir </p> 362*cdf0e10cSrcweir */ 363*cdf0e10cSrcweir void setElementPos( [in] string ResourceURL, [in] com::sun::star::awt::Point Pos ); 364*cdf0e10cSrcweir 365*cdf0e10cSrcweir /** sets a new position and size for a window based user interface element. 366*cdf0e10cSrcweir 367*cdf0e10cSrcweir @param ResourceURL 368*cdf0e10cSrcweir specifies which user interface element should be moved and resized. A resourcce URL must meet the following 369*cdf0e10cSrcweir syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 370*cdf0e10cSrcweir name. 371*cdf0e10cSrcweir 372*cdf0e10cSrcweir @param Pos 373*cdf0e10cSrcweir specifies the new position in pixel. 374*cdf0e10cSrcweir 375*cdf0e10cSrcweir @param Size 376*cdf0e10cSrcweir specifies the new position in pixel. 377*cdf0e10cSrcweir 378*cdf0e10cSrcweir <p> 379*cdf0e10cSrcweir It is up to the layout manager to decide if the user interface element can be moved and resized. The new position and size can 380*cdf0e10cSrcweir be retrieved by calling <member>getElementPos</member> and <member>getElementSize</member>. 381*cdf0e10cSrcweir </p> 382*cdf0e10cSrcweir */ 383*cdf0e10cSrcweir void setElementPosSize( [in] string ResourceURL, [in] com::sun::star::awt::Point Pos, [in] com::sun::star::awt::Size Size ); 384*cdf0e10cSrcweir 385*cdf0e10cSrcweir /** retrieves the current visibility state of a window based user interface element. 386*cdf0e10cSrcweir 387*cdf0e10cSrcweir @param ResourceURL 388*cdf0e10cSrcweir specifies for which user interface element the visibility state should be retrieved. A resource URL must meet 389*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 390*cdf0e10cSrcweir name. 391*cdf0e10cSrcweir 392*cdf0e10cSrcweir @return 393*cdf0e10cSrcweir <TRUE/> if the user interface element is visible, otherwise <FALSE/>. 394*cdf0e10cSrcweir */ 395*cdf0e10cSrcweir boolean isElementVisible( [in] string ResourceURL ); 396*cdf0e10cSrcweir 397*cdf0e10cSrcweir /** retrieves the current floating state of a window based user interface element. 398*cdf0e10cSrcweir 399*cdf0e10cSrcweir @param ResourceURL 400*cdf0e10cSrcweir specifies for which user interface element the floating state should be retrieved. A resource URL must meet 401*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 402*cdf0e10cSrcweir name. 403*cdf0e10cSrcweir 404*cdf0e10cSrcweir @return 405*cdf0e10cSrcweir <TRUE/> if the user interface element is floating, otherwise <FALSE/>. 406*cdf0e10cSrcweir */ 407*cdf0e10cSrcweir boolean isElementFloating( [in] string ResourceURL ); 408*cdf0e10cSrcweir 409*cdf0e10cSrcweir /** retrieves the current docking state of a window based user interface element. 410*cdf0e10cSrcweir 411*cdf0e10cSrcweir @param ResourceURL 412*cdf0e10cSrcweir specifies for which user interface element the docking state should be retrieved. A resource URL must meet 413*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 414*cdf0e10cSrcweir name. 415*cdf0e10cSrcweir 416*cdf0e10cSrcweir @return 417*cdf0e10cSrcweir <TRUE/> if the user interface element is docked, otherwise <FALSE/>. 418*cdf0e10cSrcweir */ 419*cdf0e10cSrcweir boolean isElementDocked( [in] string ResourceURL ); 420*cdf0e10cSrcweir 421*cdf0e10cSrcweir /** retrieves the current lock state of a window based user interface element. 422*cdf0e10cSrcweir 423*cdf0e10cSrcweir @param ResourceURL 424*cdf0e10cSrcweir specifies for which user interface element the lock state should be retrieved. A resource URL must meet 425*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 426*cdf0e10cSrcweir name. 427*cdf0e10cSrcweir 428*cdf0e10cSrcweir @return 429*cdf0e10cSrcweir <TRUE/> if the user interface element is locked, otherwise <FALSE/>. 430*cdf0e10cSrcweir */ 431*cdf0e10cSrcweir boolean isElementLocked( [in] string ResourceURL ); 432*cdf0e10cSrcweir 433*cdf0e10cSrcweir /** retrieves the current size of a window based user interface element. 434*cdf0e10cSrcweir 435*cdf0e10cSrcweir @param ResourceURL 436*cdf0e10cSrcweir specifies for which user interface element the current size should be retrieved. A resource URL must meet 437*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 438*cdf0e10cSrcweir name. 439*cdf0e10cSrcweir 440*cdf0e10cSrcweir @return 441*cdf0e10cSrcweir the size in pixel of the user interface element. A non-window based user interface element provides a zero size. 442*cdf0e10cSrcweir */ 443*cdf0e10cSrcweir com::sun::star::awt::Size getElementSize( [in] string ResourceURL ); 444*cdf0e10cSrcweir 445*cdf0e10cSrcweir /** retrieves the current pixel position of a window based user interface element. 446*cdf0e10cSrcweir 447*cdf0e10cSrcweir @param ResourceURL 448*cdf0e10cSrcweir specifies for which user interface element the current position should be retrieved. A resource URL must meet 449*cdf0e10cSrcweir the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and 450*cdf0e10cSrcweir name. 451*cdf0e10cSrcweir 452*cdf0e10cSrcweir @return 453*cdf0e10cSrcweir the size in pixel of the user interface element. A non-window based user interface element provides a zero size. 454*cdf0e10cSrcweir */ 455*cdf0e10cSrcweir com::sun::star::awt::Point getElementPos( [in] string ResourceURL ); 456*cdf0e10cSrcweir 457*cdf0e10cSrcweir /** prohibit all layout updates until unlock is called again. 458*cdf0e10cSrcweir 459*cdf0e10cSrcweir <p> 460*cdf0e10cSrcweir This call can be used to speed up the creation process of serveral user interface elements. Otherwise the layout manager 461*cdf0e10cSrcweir would calculate the layout for every creation. 462*cdf0e10cSrcweir </p> 463*cdf0e10cSrcweir */ 464*cdf0e10cSrcweir void lock(); 465*cdf0e10cSrcweir 466*cdf0e10cSrcweir /** permit layout updates again. 467*cdf0e10cSrcweir 468*cdf0e10cSrcweir <p> 469*cdf0e10cSrcweir This function should be called to permit layout updates. The layout manager starts to calculate the new layout after 470*cdf0e10cSrcweir this call. 471*cdf0e10cSrcweir </p> 472*cdf0e10cSrcweir */ 473*cdf0e10cSrcweir void unlock(); 474*cdf0e10cSrcweir 475*cdf0e10cSrcweir /** forces a complete new layouting of all user interface elements. 476*cdf0e10cSrcweir */ 477*cdf0e10cSrcweir void doLayout(); 478*cdf0e10cSrcweir 479*cdf0e10cSrcweir /** sets the layout manager to invisible state and hides all user interface elements. 480*cdf0e10cSrcweir 481*cdf0e10cSrcweir <p> 482*cdf0e10cSrcweir A layout manager can be set to invisible state to force it to hide all of its 483*cdf0e10cSrcweir user interface elements. If another component wants to use the window for its 484*cdf0e10cSrcweir own user interface elements it can use this function. This function is normally 485*cdf0e10cSrcweir used to implement inplace editing. 486*cdf0e10cSrcweir </p> 487*cdf0e10cSrcweir 488*cdf0e10cSrcweir @param Visible 489*cdf0e10cSrcweir provide <FALSE/> to make layout manager invisible otherwise this must be 490*cdf0e10cSrcweir set to <TRUE/>. 491*cdf0e10cSrcweir */ 492*cdf0e10cSrcweir void setVisible( [in] boolean Visible ); 493*cdf0e10cSrcweir 494*cdf0e10cSrcweir /** retrieves the visibility state of a layout manager. 495*cdf0e10cSrcweir 496*cdf0e10cSrcweir <p> 497*cdf0e10cSrcweir A layout manager can be set to invisible state to force it to hide all of its 498*cdf0e10cSrcweir user interface elements. If another component wants to use the window for its 499*cdf0e10cSrcweir own user interface elements it can use this function. This function is normally 500*cdf0e10cSrcweir used to implement inplace editing. 501*cdf0e10cSrcweir </p> 502*cdf0e10cSrcweir 503*cdf0e10cSrcweir */ 504*cdf0e10cSrcweir boolean isVisible(); 505*cdf0e10cSrcweir 506*cdf0e10cSrcweir}; 507*cdf0e10cSrcweir 508*cdf0e10cSrcweir}; }; }; }; 509*cdf0e10cSrcweir 510*cdf0e10cSrcweir#endif 511