1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_awt_XWindow_idl__
20 #define __com_sun_star_awt_XWindow_idl__
22 #include
<com
/sun
/star
/lang
/XComponent.idl
>
24 #include
<com
/sun
/star
/awt
/Rectangle.idl
>
26 #include
<com
/sun
/star
/awt
/XWindowListener.idl
>
28 #include
<com
/sun
/star
/awt
/XFocusListener.idl
>
30 #include
<com
/sun
/star
/awt
/XKeyListener.idl
>
32 #include
<com
/sun
/star
/awt
/XMouseListener.idl
>
34 #include
<com
/sun
/star
/awt
/XMouseMotionListener.idl
>
36 #include
<com
/sun
/star
/awt
/XPaintListener.idl
>
40 module com
{ module sun
{ module star
{ module awt
{
43 /** specifies the basic operations for a window component.
45 <p>A window is a rectangular region on an output device with
46 its own position, size, and internal coordinate system.
47 A window is used for displaying data. In addition, the window
48 receives events from the user.</p>
50 published
interface XWindow
: com
::sun
::star
::lang
::XComponent
53 /** sets the outer bounds of the window.
56 the x-coordinate of the window.
59 the y-coordinate of the window.
62 the width of the window.
65 the height of the window.
68 Flags are of type PosSize and specify, which parameters
69 are taken into account when setting the outer bounds of the window.
71 void setPosSize
( [in] long X
,
78 /** returns the outer bounds of the window.
80 com
::sun
::star
::awt
::Rectangle getPosSize
();
83 /** shows or hides the window depending on the parameter.
85 void setVisible
( [in] boolean Visible
);
88 /** enables or disables the window depending on the parameter.
90 void setEnable
( [in] boolean Enable
);
93 /** sets the focus to the window.
98 /** adds a window listener to the object.
101 the listener to add. If this listener also supports the XWindowListener2 interface,
102 it will receive the additional events declared in XWindowListener2.
104 void addWindowListener
( [in] com
::sun
::star
::awt
::XWindowListener xListener
);
107 /** removes the specified window listener from the listener list.
109 void removeWindowListener
( [in] com
::sun
::star
::awt
::XWindowListener xListener
);
112 /** adds a focus listener to the object.
114 void addFocusListener
( [in] com
::sun
::star
::awt
::XFocusListener xListener
);
117 /** removes the specified focus listener from the listener list.
119 void removeFocusListener
( [in] com
::sun
::star
::awt
::XFocusListener xListener
);
122 /** adds a key listener to the object.
124 void addKeyListener
( [in] com
::sun
::star
::awt
::XKeyListener xListener
);
127 /** removes the specified key listener from the listener list.
129 void removeKeyListener
( [in] com
::sun
::star
::awt
::XKeyListener xListener
);
132 /** adds a mouse listener to the object.
134 void addMouseListener
( [in] com
::sun
::star
::awt
::XMouseListener xListener
);
137 /** removes the specified mouse listener from the listener list.
139 void removeMouseListener
( [in] com
::sun
::star
::awt
::XMouseListener xListener
);
142 /** adds a mouse motion listener to the object.
144 void addMouseMotionListener
( [in] com
::sun
::star
::awt
::XMouseMotionListener xListener
);
147 /** removes the specified mouse motion listener from the listener list.
149 void removeMouseMotionListener
( [in] com
::sun
::star
::awt
::XMouseMotionListener xListener
);
152 /** adds a paint listener to the object.
154 void addPaintListener
( [in] com
::sun
::star
::awt
::XPaintListener xListener
);
157 /** removes the specified paint listener from the listener list.
159 void removePaintListener
( [in] com
::sun
::star
::awt
::XPaintListener xListener
);
168 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */