summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/awt/XWindow.idl
blob: b5df8adbb088cae7197623e3d09fea26ffffb481 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
/* -*- 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_XWindow_idl__
#define __com_sun_star_awt_XWindow_idl__

#include <com/sun/star/lang/XComponent.idl>

#include <com/sun/star/awt/Rectangle.idl>

#include <com/sun/star/awt/XWindowListener.idl>

#include <com/sun/star/awt/XFocusListener.idl>

#include <com/sun/star/awt/XKeyListener.idl>

#include <com/sun/star/awt/XMouseListener.idl>

#include <com/sun/star/awt/XMouseMotionListener.idl>

#include <com/sun/star/awt/XPaintListener.idl>



 module com {  module sun {  module star {  module awt {


/** specifies the basic operations for a window component.

    <p>A window is a rectangular region on an output device with
    its own position, size, and internal coordinate system.
    A window is used for displaying data. In addition, the window
    receives events from the user.</p>
 */
published interface XWindow: com::sun::star::lang::XComponent
{

    /** sets the outer bounds of the window.

        @param X
        the x-coordinate of the window.

        @param Y
        the y-coordinate of the window.

        @param Width
        the width of the window.

        @param Height
        the height of the window.

        @param Flags
        Flags are of type <type>PosSize</type> and specify, which parameters
        are taken into account when setting the outer bounds of the window.
    */
    void setPosSize( [in] long X,
             [in] long Y,
             [in] long Width,
             [in] long Height,
             [in] short Flags );


    /** returns the outer bounds of the window.
     */
    com::sun::star::awt::Rectangle getPosSize();


    /** shows or hides the window depending on the parameter.
     */
    void setVisible( [in] boolean Visible );


    /** enables or disables the window depending on the parameter.
     */
    void setEnable( [in] boolean Enable );


    /** sets the focus to the window.
     */
    void setFocus();


    /** adds a window listener to the object.

        @param xListener
            the listener to add. If this listener also supports the <type>XWindowListener2</type> interface,
            it will receive the additional events declared in XWindowListener2.
     */
    void addWindowListener( [in] com::sun::star::awt::XWindowListener xListener );


    /** removes the specified window listener from the listener list.
     */
    void removeWindowListener( [in] com::sun::star::awt::XWindowListener xListener );


    /** adds a focus listener to the object.
     */
    void addFocusListener( [in] com::sun::star::awt::XFocusListener xListener );


    /** removes the specified focus listener from the listener list.
     */
    void removeFocusListener( [in] com::sun::star::awt::XFocusListener xListener );


    /** adds a key listener to the object.
     */
    void addKeyListener( [in] com::sun::star::awt::XKeyListener xListener );


    /** removes the specified key listener from the listener list.
     */
    void removeKeyListener( [in] com::sun::star::awt::XKeyListener xListener );


    /** adds a mouse listener to the object.
     */
    void addMouseListener( [in] com::sun::star::awt::XMouseListener xListener );


    /** removes the specified mouse listener from the listener list.
     */
    void removeMouseListener( [in] com::sun::star::awt::XMouseListener xListener );


    /** adds a mouse motion listener to the object.
     */
    void addMouseMotionListener( [in] com::sun::star::awt::XMouseMotionListener xListener );


    /** removes the specified mouse motion listener from the listener list.
     */
    void removeMouseMotionListener( [in] com::sun::star::awt::XMouseMotionListener xListener );


    /** adds a paint listener to the object.
     */
    void addPaintListener( [in] com::sun::star::awt::XPaintListener xListener );


    /** removes the specified paint listener from the listener list.
     */
    void removePaintListener( [in] com::sun::star::awt::XPaintListener xListener );

};


}; }; }; };

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */