xref: /AOO41X/main/vcl/inc/window.h (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
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 _SV_WINDOW_H
29*cdf0e10cSrcweir #define _SV_WINDOW_H
30*cdf0e10cSrcweir 
31*cdf0e10cSrcweir #include <vector>
32*cdf0e10cSrcweir #include <vcl/sv.h>
33*cdf0e10cSrcweir #include <vcl/outdev.hxx>
34*cdf0e10cSrcweir #include <vcl/timer.hxx>
35*cdf0e10cSrcweir #ifndef _SV_INPUTCTX_HXX
36*cdf0e10cSrcweir #include <vcl/inputctx.hxx>
37*cdf0e10cSrcweir #endif
38*cdf0e10cSrcweir #ifndef _SV_POINTR_HXX
39*cdf0e10cSrcweir #include <vcl/pointr.hxx>
40*cdf0e10cSrcweir #endif
41*cdf0e10cSrcweir #include <tools/wintypes.hxx>
42*cdf0e10cSrcweir #include <vcl/vclevent.hxx>
43*cdf0e10cSrcweir #include <com/sun/star/uno/Reference.hxx>
44*cdf0e10cSrcweir #include <cppuhelper/weakref.hxx>
45*cdf0e10cSrcweir 
46*cdf0e10cSrcweir #include <vcl/salnativewidgets.hxx>
47*cdf0e10cSrcweir 
48*cdf0e10cSrcweir #include <list>
49*cdf0e10cSrcweir 
50*cdf0e10cSrcweir struct SalPaintEvent;
51*cdf0e10cSrcweir struct ImplDelData;
52*cdf0e10cSrcweir struct ImplAccessibleInfos;
53*cdf0e10cSrcweir 
54*cdf0e10cSrcweir class Window;
55*cdf0e10cSrcweir class VirtualDevice;
56*cdf0e10cSrcweir class Cursor;
57*cdf0e10cSrcweir class ImplDevFontList;
58*cdf0e10cSrcweir class ImplFontCache;
59*cdf0e10cSrcweir class VCLXWindow;
60*cdf0e10cSrcweir class SalFrame;
61*cdf0e10cSrcweir class SalObject;
62*cdf0e10cSrcweir 
63*cdf0e10cSrcweir 
64*cdf0e10cSrcweir namespace com {
65*cdf0e10cSrcweir namespace sun {
66*cdf0e10cSrcweir namespace star {
67*cdf0e10cSrcweir namespace accessibility {
68*cdf0e10cSrcweir     class XAccessible;
69*cdf0e10cSrcweir }}}}
70*cdf0e10cSrcweir 
71*cdf0e10cSrcweir namespace com {
72*cdf0e10cSrcweir namespace sun {
73*cdf0e10cSrcweir namespace star {
74*cdf0e10cSrcweir namespace rendering {
75*cdf0e10cSrcweir     class XCanvas;
76*cdf0e10cSrcweir }}}}
77*cdf0e10cSrcweir 
78*cdf0e10cSrcweir namespace com {
79*cdf0e10cSrcweir namespace sun {
80*cdf0e10cSrcweir namespace star {
81*cdf0e10cSrcweir namespace awt {
82*cdf0e10cSrcweir     class XWindowPeer;
83*cdf0e10cSrcweir     class XWindow;
84*cdf0e10cSrcweir }
85*cdf0e10cSrcweir namespace uno {
86*cdf0e10cSrcweir     class Any;
87*cdf0e10cSrcweir     class XInterface;
88*cdf0e10cSrcweir }
89*cdf0e10cSrcweir namespace datatransfer {
90*cdf0e10cSrcweir namespace clipboard {
91*cdf0e10cSrcweir     class XClipboard;
92*cdf0e10cSrcweir }
93*cdf0e10cSrcweir 
94*cdf0e10cSrcweir namespace dnd {
95*cdf0e10cSrcweir     class XDropTargetListener;
96*cdf0e10cSrcweir     class XDragGestureRecognizer;
97*cdf0e10cSrcweir     class XDragSource;
98*cdf0e10cSrcweir     class XDropTarget;
99*cdf0e10cSrcweir } } } } }
100*cdf0e10cSrcweir 
101*cdf0e10cSrcweir namespace vcl {
102*cdf0e10cSrcweir     struct ControlLayoutData;
103*cdf0e10cSrcweir     struct ExtWindowImpl;
104*cdf0e10cSrcweir }
105*cdf0e10cSrcweir 
106*cdf0e10cSrcweir 
107*cdf0e10cSrcweir // --------------
108*cdf0e10cSrcweir // - Prototypes -
109*cdf0e10cSrcweir // --------------
110*cdf0e10cSrcweir 
111*cdf0e10cSrcweir long ImplWindowFrameProc( Window* pInst, SalFrame* pFrame, sal_uInt16 nEvent, const void* pEvent );
112*cdf0e10cSrcweir 
113*cdf0e10cSrcweir // -----------
114*cdf0e10cSrcweir // - HitTest -
115*cdf0e10cSrcweir // -----------
116*cdf0e10cSrcweir 
117*cdf0e10cSrcweir #define WINDOW_HITTEST_INSIDE           ((sal_uInt16)0x0001)
118*cdf0e10cSrcweir #define WINDOW_HITTEST_TRANSPARENT      ((sal_uInt16)0x0002)
119*cdf0e10cSrcweir 
120*cdf0e10cSrcweir // ---------------
121*cdf0e10cSrcweir // - ImplWinData -
122*cdf0e10cSrcweir // ---------------
123*cdf0e10cSrcweir 
124*cdf0e10cSrcweir struct ImplWinData
125*cdf0e10cSrcweir {
126*cdf0e10cSrcweir     UniString*          mpExtOldText;
127*cdf0e10cSrcweir     sal_uInt16*             mpExtOldAttrAry;
128*cdf0e10cSrcweir     Rectangle*          mpCursorRect;
129*cdf0e10cSrcweir     long                mnCursorExtWidth;
130*cdf0e10cSrcweir     Rectangle*          mpFocusRect;
131*cdf0e10cSrcweir     Rectangle*          mpTrackRect;
132*cdf0e10cSrcweir     sal_uInt16              mnTrackFlags;
133*cdf0e10cSrcweir     sal_uInt16				mnIsTopWindow;
134*cdf0e10cSrcweir     sal_Bool                mbMouseOver;          // tracks mouse over for native widget paint effect
135*cdf0e10cSrcweir     sal_Bool                mbEnableNativeWidget; // toggle native widget rendering
136*cdf0e10cSrcweir     ::std::list< Window* >
137*cdf0e10cSrcweir                         maTopWindowChildren;
138*cdf0e10cSrcweir };
139*cdf0e10cSrcweir 
140*cdf0e10cSrcweir // -------------------
141*cdf0e10cSrcweir // - ImplOverlapData -
142*cdf0e10cSrcweir // -------------------
143*cdf0e10cSrcweir 
144*cdf0e10cSrcweir struct ImplOverlapData
145*cdf0e10cSrcweir {
146*cdf0e10cSrcweir     VirtualDevice*      mpSaveBackDev;      // Gesicherte Hintergrund-Bitmap
147*cdf0e10cSrcweir     Region*             mpSaveBackRgn;      // Gesicherte Region, was invalidiert werden muss
148*cdf0e10cSrcweir     Window*             mpNextBackWin;      // Naechstes Fenster mit Hintergrund-Sicherung
149*cdf0e10cSrcweir     sal_uIntPtr               mnSaveBackSize;     // Groesse Bitmap fuer Hintergrund-Sicherung
150*cdf0e10cSrcweir     sal_Bool                mbSaveBack;         // sal_True: Background sichern
151*cdf0e10cSrcweir     sal_uInt8                mnTopLevel;         // Level for Overlap-Window
152*cdf0e10cSrcweir };
153*cdf0e10cSrcweir 
154*cdf0e10cSrcweir // -----------------
155*cdf0e10cSrcweir // - ImplFrameData -
156*cdf0e10cSrcweir // -----------------
157*cdf0e10cSrcweir 
158*cdf0e10cSrcweir struct ImplFrameData
159*cdf0e10cSrcweir {
160*cdf0e10cSrcweir     Timer               maPaintTimer;       // paint timer
161*cdf0e10cSrcweir     Timer				maResizeTimer;		// resize timer
162*cdf0e10cSrcweir     InputContext        maOldInputContext;  // Last set Input Context
163*cdf0e10cSrcweir     Window*             mpNextFrame;        // next frame window
164*cdf0e10cSrcweir     Window*             mpFirstOverlap;     // first overlap window
165*cdf0e10cSrcweir     Window*             mpFocusWin;         // focus window (is also set, when frame doesn't have the focous)
166*cdf0e10cSrcweir     Window*             mpMouseMoveWin;     // last window, where MouseMove() called
167*cdf0e10cSrcweir     Window*             mpMouseDownWin;     // last window, where MouseButtonDown() called
168*cdf0e10cSrcweir     Window*             mpFirstBackWin;     // Erstes Overlap-Window mit Hintergrund-Sicherung
169*cdf0e10cSrcweir 	::std::vector<Window *> maOwnerDrawList; // List of system windows with owner draw decoration
170*cdf0e10cSrcweir     ImplDevFontList*    mpFontList;         // Font-List for this frame
171*cdf0e10cSrcweir     ImplFontCache*      mpFontCache;        // Font-Cache for this frame
172*cdf0e10cSrcweir     sal_Int32           mnDPIX;             // Original Screen Resolution
173*cdf0e10cSrcweir     sal_Int32           mnDPIY;             // Original Screen Resolution
174*cdf0e10cSrcweir     ImplMapRes          maMapUnitRes;       // for LogicUnitToPixel
175*cdf0e10cSrcweir     sal_uIntPtr               mnAllSaveBackSize;  // Groesse aller Bitmaps fuer Hintergrund-Sicherung
176*cdf0e10cSrcweir     sal_uIntPtr               mnFocusId;          // FocusId for PostUserLink
177*cdf0e10cSrcweir     sal_uIntPtr               mnMouseMoveId;      // MoveId for PostUserLink
178*cdf0e10cSrcweir     long                mnLastMouseX;       // last x mouse position
179*cdf0e10cSrcweir     long                mnLastMouseY;       // last y mouse position
180*cdf0e10cSrcweir     long                mnBeforeLastMouseX; // last but one x mouse position
181*cdf0e10cSrcweir     long                mnBeforeLastMouseY; // last but one y mouse position
182*cdf0e10cSrcweir     long                mnFirstMouseX;      // first x mouse position by mousebuttondown
183*cdf0e10cSrcweir     long                mnFirstMouseY;      // first y mouse position by mousebuttondown
184*cdf0e10cSrcweir     long                mnLastMouseWinX;    // last x mouse position, rel. to pMouseMoveWin
185*cdf0e10cSrcweir     long                mnLastMouseWinY;    // last y mouse position, rel. to pMouseMoveWin
186*cdf0e10cSrcweir     sal_uInt16              mnModalMode;        // frame based modal count (app based makes no sense anymore)
187*cdf0e10cSrcweir     sal_uIntPtr               mnMouseDownTime;    // mouse button down time for double click
188*cdf0e10cSrcweir     sal_uInt16              mnClickCount;       // mouse click count
189*cdf0e10cSrcweir     sal_uInt16              mnFirstMouseCode;   // mouse code by mousebuttondown
190*cdf0e10cSrcweir     sal_uInt16              mnMouseCode;        // mouse code
191*cdf0e10cSrcweir     sal_uInt16              mnMouseMode;        // mouse mode
192*cdf0e10cSrcweir     MapUnit             meMapUnit;          // last MapUnit for LogicUnitToPixel
193*cdf0e10cSrcweir     sal_Bool                mbHasFocus;         // focus
194*cdf0e10cSrcweir     sal_Bool                mbInMouseMove;      // is MouseMove on stack
195*cdf0e10cSrcweir     sal_Bool                mbMouseIn;          // is Mouse inside the frame
196*cdf0e10cSrcweir     sal_Bool                mbStartDragCalled;  // is command startdrag called
197*cdf0e10cSrcweir     sal_Bool                mbNeedSysWindow;    // set, when FrameSize <= IMPL_MIN_NEEDSYSWIN
198*cdf0e10cSrcweir     sal_Bool                mbMinimized;        // set, when FrameSize <= 0
199*cdf0e10cSrcweir     sal_Bool                mbStartFocusState;  // FocusState, beim abschicken des Events
200*cdf0e10cSrcweir     sal_Bool                mbInSysObjFocusHdl; // Innerhalb vom GetFocus-Handler eines SysChilds
201*cdf0e10cSrcweir     sal_Bool                mbInSysObjToTopHdl; // Innerhalb vom ToTop-Handler eines SysChilds
202*cdf0e10cSrcweir     sal_Bool                mbSysObjFocus;      // Hat ein SysChild den Focus
203*cdf0e10cSrcweir 
204*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::dnd::XDragSource > mxDragSource;
205*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::dnd::XDropTarget > mxDropTarget;
206*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::dnd::XDropTargetListener > mxDropTargetListener;
207*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard > mxClipboard;
208*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard > mxSelection;
209*cdf0e10cSrcweir 
210*cdf0e10cSrcweir     sal_Bool                mbInternalDragGestureRecognizer;
211*cdf0e10cSrcweir };
212*cdf0e10cSrcweir 
213*cdf0e10cSrcweir // -----------------------
214*cdf0e10cSrcweir // - ImplAccessibleInfos -
215*cdf0e10cSrcweir // -----------------------
216*cdf0e10cSrcweir 
217*cdf0e10cSrcweir struct ImplAccessibleInfos
218*cdf0e10cSrcweir {
219*cdf0e10cSrcweir     sal_uInt16 nAccessibleRole;
220*cdf0e10cSrcweir     String* pAccessibleName;
221*cdf0e10cSrcweir     String* pAccessibleDescription;
222*cdf0e10cSrcweir     Window* pLabeledByWindow;
223*cdf0e10cSrcweir     Window* pLabelForWindow;
224*cdf0e10cSrcweir     Window* pMemberOfWindow;
225*cdf0e10cSrcweir 
226*cdf0e10cSrcweir     ImplAccessibleInfos();
227*cdf0e10cSrcweir     ~ImplAccessibleInfos();
228*cdf0e10cSrcweir };
229*cdf0e10cSrcweir 
230*cdf0e10cSrcweir 
231*cdf0e10cSrcweir // ---------------
232*cdf0e10cSrcweir // - WindowImpl -
233*cdf0e10cSrcweir // ---------------
234*cdf0e10cSrcweir 
235*cdf0e10cSrcweir enum AlwaysInputMode { AlwaysInputNone = 0, AlwaysInputEnabled = 1, AlwaysInputDisabled =2 };
236*cdf0e10cSrcweir 
237*cdf0e10cSrcweir class WindowImpl
238*cdf0e10cSrcweir {
239*cdf0e10cSrcweir public:
240*cdf0e10cSrcweir     WindowImpl();
241*cdf0e10cSrcweir     ~WindowImpl();
242*cdf0e10cSrcweir 
243*cdf0e10cSrcweir     ImplWinData*        mpWinData;
244*cdf0e10cSrcweir     ImplOverlapData*    mpOverlapData;
245*cdf0e10cSrcweir     ImplFrameData*      mpFrameData;
246*cdf0e10cSrcweir     SalFrame*           mpFrame;
247*cdf0e10cSrcweir     SalObject*          mpSysObj;
248*cdf0e10cSrcweir     Window*             mpFrameWindow;
249*cdf0e10cSrcweir     Window*             mpOverlapWindow;
250*cdf0e10cSrcweir     Window*             mpBorderWindow;
251*cdf0e10cSrcweir     Window*             mpClientWindow;
252*cdf0e10cSrcweir     Window*             mpParent;
253*cdf0e10cSrcweir     Window*             mpRealParent;
254*cdf0e10cSrcweir     Window*             mpFirstChild;
255*cdf0e10cSrcweir     Window*             mpLastChild;
256*cdf0e10cSrcweir     Window*             mpFirstOverlap;
257*cdf0e10cSrcweir     Window*             mpLastOverlap;
258*cdf0e10cSrcweir     Window*             mpPrev;
259*cdf0e10cSrcweir     Window*             mpNext;
260*cdf0e10cSrcweir     Window*             mpNextOverlap;
261*cdf0e10cSrcweir     Window*             mpLastFocusWindow;
262*cdf0e10cSrcweir     Window*             mpDlgCtrlDownWindow;
263*cdf0e10cSrcweir     VclEventListeners   maEventListeners;
264*cdf0e10cSrcweir     VclEventListeners   maChildEventListeners;
265*cdf0e10cSrcweir 
266*cdf0e10cSrcweir     // The canvas interface for this VCL window. Is persistent after the first GetCanvas() call
267*cdf0e10cSrcweir     ::com::sun::star::uno::WeakReference< ::com::sun::star::rendering::XCanvas > 	mxCanvas;
268*cdf0e10cSrcweir 
269*cdf0e10cSrcweir     ImplDelData*        mpFirstDel;
270*cdf0e10cSrcweir     void*               mpUserData;
271*cdf0e10cSrcweir     vcl::ExtWindowImpl* mpExtImpl;
272*cdf0e10cSrcweir     Cursor*             mpCursor;
273*cdf0e10cSrcweir     Pointer             maPointer;
274*cdf0e10cSrcweir     Fraction            maZoom;
275*cdf0e10cSrcweir     XubString           maText;
276*cdf0e10cSrcweir     Font*               mpControlFont;
277*cdf0e10cSrcweir     Color               maControlForeground;
278*cdf0e10cSrcweir     Color               maControlBackground;
279*cdf0e10cSrcweir     sal_Int32           mnLeftBorder;
280*cdf0e10cSrcweir     sal_Int32           mnTopBorder;
281*cdf0e10cSrcweir     sal_Int32           mnRightBorder;
282*cdf0e10cSrcweir     sal_Int32           mnBottomBorder;
283*cdf0e10cSrcweir     long                mnX;
284*cdf0e10cSrcweir     long                mnY;
285*cdf0e10cSrcweir     long                mnAbsScreenX;
286*cdf0e10cSrcweir     Point               maPos;
287*cdf0e10cSrcweir     rtl::OString        maHelpId;
288*cdf0e10cSrcweir     rtl::OString        maUniqId;
289*cdf0e10cSrcweir     XubString           maHelpText;
290*cdf0e10cSrcweir     XubString           maQuickHelpText;
291*cdf0e10cSrcweir     InputContext        maInputContext;
292*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > mxWindowPeer;
293*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > mxAccessible;
294*cdf0e10cSrcweir     ImplAccessibleInfos* mpAccessibleInfos;
295*cdf0e10cSrcweir     VCLXWindow*         mpVCLXWindow;
296*cdf0e10cSrcweir     Region              maWinRegion;        // region to 'shape' the VCL window (frame coordinates)
297*cdf0e10cSrcweir     Region              maWinClipRegion;    // the (clipping) region that finally corresponds to the VCL window (frame coordinates)
298*cdf0e10cSrcweir     Region              maInvalidateRegion; // region that has to be redrawn (frame coordinates)
299*cdf0e10cSrcweir     Region*             mpChildClipRegion;  // child clip region if CLIPCHILDREN is set (frame coordinates)
300*cdf0e10cSrcweir     Region*             mpPaintRegion;      // only set during Paint() method call (window coordinates)
301*cdf0e10cSrcweir     WinBits             mnStyle;
302*cdf0e10cSrcweir     WinBits             mnPrevStyle;
303*cdf0e10cSrcweir     WinBits             mnExtendedStyle;
304*cdf0e10cSrcweir     WinBits             mnPrevExtendedStyle;
305*cdf0e10cSrcweir     WindowType          mnType;
306*cdf0e10cSrcweir     ControlPart         mnNativeBackground;
307*cdf0e10cSrcweir     sal_uInt16              mnWaitCount;
308*cdf0e10cSrcweir     sal_uInt16              mnPaintFlags;
309*cdf0e10cSrcweir     sal_uInt16              mnGetFocusFlags;
310*cdf0e10cSrcweir     sal_uInt16              mnParentClipMode;
311*cdf0e10cSrcweir     sal_uInt16              mnActivateMode;
312*cdf0e10cSrcweir     sal_uInt16              mnDlgCtrlFlags;
313*cdf0e10cSrcweir     sal_uInt16              mnLockCount;
314*cdf0e10cSrcweir     AlwaysInputMode     meAlwaysInputMode;
315*cdf0e10cSrcweir     sal_Bool                mbFrame:1,
316*cdf0e10cSrcweir                         mbBorderWin:1,
317*cdf0e10cSrcweir                         mbOverlapWin:1,
318*cdf0e10cSrcweir                         mbSysWin:1,
319*cdf0e10cSrcweir                         mbDialog:1,
320*cdf0e10cSrcweir                         mbDockWin:1,
321*cdf0e10cSrcweir                         mbFloatWin:1,
322*cdf0e10cSrcweir                         mbPushButton:1,
323*cdf0e10cSrcweir                         mbVisible:1,
324*cdf0e10cSrcweir                         mbDisabled:1,
325*cdf0e10cSrcweir                         mbInputDisabled:1,
326*cdf0e10cSrcweir                         mbDropDisabled:1,
327*cdf0e10cSrcweir                         mbNoUpdate:1,
328*cdf0e10cSrcweir                         mbNoParentUpdate:1,
329*cdf0e10cSrcweir                         mbActive:1,
330*cdf0e10cSrcweir                         mbParentActive:1,
331*cdf0e10cSrcweir                         mbReallyVisible:1,
332*cdf0e10cSrcweir                         mbReallyShown:1,
333*cdf0e10cSrcweir                         mbInInitShow:1,
334*cdf0e10cSrcweir                         mbChildNotify:1,
335*cdf0e10cSrcweir                         mbChildPtrOverwrite:1,
336*cdf0e10cSrcweir                         mbNoPtrVisible:1,
337*cdf0e10cSrcweir                         mbPaintFrame:1,
338*cdf0e10cSrcweir                         mbInPaint:1,
339*cdf0e10cSrcweir                         mbMouseMove:1,
340*cdf0e10cSrcweir                         mbMouseButtonDown:1,
341*cdf0e10cSrcweir                         mbMouseButtonUp:1,
342*cdf0e10cSrcweir                         mbKeyInput:1,
343*cdf0e10cSrcweir                         mbKeyUp:1,
344*cdf0e10cSrcweir                         mbCommand:1,
345*cdf0e10cSrcweir                         mbDefPos:1,
346*cdf0e10cSrcweir                         mbDefSize:1,
347*cdf0e10cSrcweir                         mbCallMove:1,
348*cdf0e10cSrcweir                         mbCallResize:1,
349*cdf0e10cSrcweir                         mbWaitSystemResize:1,
350*cdf0e10cSrcweir                         mbInitWinClipRegion:1,
351*cdf0e10cSrcweir                         mbInitChildRegion:1,
352*cdf0e10cSrcweir                         mbWinRegion:1,
353*cdf0e10cSrcweir                         mbClipChildren:1,
354*cdf0e10cSrcweir                         mbClipSiblings:1,
355*cdf0e10cSrcweir                         mbChildTransparent:1,
356*cdf0e10cSrcweir                         mbPaintTransparent:1,
357*cdf0e10cSrcweir                         mbMouseTransparent:1,
358*cdf0e10cSrcweir                         mbDlgCtrlStart:1,
359*cdf0e10cSrcweir                         mbFocusVisible:1,
360*cdf0e10cSrcweir                         mbTrackVisible:1,
361*cdf0e10cSrcweir                         mbUseNativeFocus:1,
362*cdf0e10cSrcweir                         mbNativeFocusVisible:1,
363*cdf0e10cSrcweir                         mbInShowFocus:1,
364*cdf0e10cSrcweir                         mbInHideFocus:1,
365*cdf0e10cSrcweir                         mbControlForeground:1,
366*cdf0e10cSrcweir                         mbControlBackground:1,
367*cdf0e10cSrcweir                         mbAlwaysOnTop:1,
368*cdf0e10cSrcweir                         mbCompoundControl:1,
369*cdf0e10cSrcweir                         mbCompoundControlHasFocus:1,
370*cdf0e10cSrcweir                         mbPaintDisabled:1,
371*cdf0e10cSrcweir                         mbAllResize:1,
372*cdf0e10cSrcweir                         mbInDtor:1,
373*cdf0e10cSrcweir                         mbExtTextInput:1,
374*cdf0e10cSrcweir                         mbInFocusHdl:1,
375*cdf0e10cSrcweir                         mbOverlapVisible:1,
376*cdf0e10cSrcweir                         mbCreatedWithToolkit:1,
377*cdf0e10cSrcweir                         mbToolBox:1,
378*cdf0e10cSrcweir                         mbSplitter:1,
379*cdf0e10cSrcweir                         mbSuppressAccessibilityEvents:1,
380*cdf0e10cSrcweir                         mbMenuFloatingWindow:1,
381*cdf0e10cSrcweir                         mbDrawSelectionBackground:1,
382*cdf0e10cSrcweir                         mbIsInTaskPaneList:1,
383*cdf0e10cSrcweir                         mbToolbarFloatingWindow:1,
384*cdf0e10cSrcweir                         mbCallHandlersDuringInputDisabled:1,
385*cdf0e10cSrcweir                         mbDisableAccessibleLabelForRelation:1,
386*cdf0e10cSrcweir                         mbDisableAccessibleLabeledByRelation:1,
387*cdf0e10cSrcweir                         mbHelpTextDynamic:1,
388*cdf0e10cSrcweir                         mbFakeFocusSet:1,
389*cdf0e10cSrcweir                         mbInterceptChildWindowKeyDown:1;
390*cdf0e10cSrcweir 
391*cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxDNDListenerContainer;
392*cdf0e10cSrcweir };
393*cdf0e10cSrcweir 
394*cdf0e10cSrcweir // -----------------
395*cdf0e10cSrcweir // - Hilfsmethoden -
396*cdf0e10cSrcweir // -----------------
397*cdf0e10cSrcweir 
398*cdf0e10cSrcweir long ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, sal_Bool bMouseLeave,
399*cdf0e10cSrcweir                            long nX, long nY, sal_uIntPtr nMsgTime,
400*cdf0e10cSrcweir                            sal_uInt16 nCode, sal_uInt16 nMode );
401*cdf0e10cSrcweir void ImplHandleResize( Window* pWindow, long nNewWidth, long nNewHeight );
402*cdf0e10cSrcweir 
403*cdf0e10cSrcweir #endif // _SV_WINDOW_H
404