1 #ifndef INPUTHANDLER_SUPPORT_H
2 #define INPUTHANDLER_SUPPORT_H
5 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
6 Copyright © 2001-2003, The MorphOS Development Team. All Rights Reserved.
14 void notify_mousemove_screensandwindows(struct IntuitionBase
* IntuitionBase
);
16 void notify_newprefs(struct IntuitionBase
* IntuitionBase
);
18 /*********************************************************************/
20 void send_intuimessage(struct IntuiMessage
*imsg
,
22 struct IntuitionBase
*IntuitionBase
);
24 void free_intuimessage(struct IntuiMessage
*imsg
,
25 struct IntuitionBase
*IntuitionBase
);
27 struct IntuiMessage
*alloc_intuimessage(struct Window
*w
,
28 struct IntuitionBase
*IntuitionBase
);
30 BOOL
fire_intuimessage(struct Window
*w
,
34 struct IntuitionBase
*IntuitionBase
);
36 /* use ih_fire_intuimessage if A) the inputevent because of which
37 you call this function might have to be eaten or modified
38 by Intuition or B) an inputevent might have to be created
39 by Intuition because of a deferred action */
41 BOOL
ih_fire_intuimessage(struct Window
*w
,
45 struct IntuitionBase
*IntuitionBase
);
47 /*********************************************************************/
49 IPTR
Locked_DoMethodA (struct Window
*w
,
52 struct IntuitionBase
*IntuitionBase
);
55 /*********************************************************************/
57 void NotifyDepthArrangement(struct Window
*w
,
58 struct IntuitionBase
*IntuitionBase
);
60 /*********************************************************************/
62 void PrepareGadgetInfo(struct GadgetInfo
*gi
, struct Screen
*scr
, struct Window
*win
,
63 struct Requester
*req
);
65 void SetGadgetInfoGadget(struct GadgetInfo
*gi
, struct Gadget
*gad
,
66 struct IntuitionBase
*IntuitionBase
);
68 void SetGPIMouseCoords(struct gpInput
*gpi
, struct Gadget
*gad
);
70 void HandleSysGadgetVerify(struct GadgetInfo
*gi
, struct Gadget
*gadget
,
71 struct IntuitionBase
*IntuitionBase
);
73 struct Gadget
*HandleCustomGadgetRetVal(IPTR retval
, struct GadgetInfo
*gi
,
74 struct Gadget
*gadget
,
76 BOOL
*reuse_event
, struct IntuitionBase
*IntuitionBase
);
78 struct Gadget
*DoGPInput(struct GadgetInfo
*gi
, struct Gadget
*gadget
,
79 struct InputEvent
*ie
, STACKULONG methodid
,
80 BOOL
*reuse_event
, struct IntuitionBase
*IntuitionBase
);
82 struct Gadget
* FindGadget (struct Screen
*scr
, struct Window
* window
,
83 struct Requester
*req
, int x
, int y
,
84 struct GadgetInfo
* gi
, BOOL sysonly
,
85 struct IntuitionBase
*IntuitionBase
);
87 struct Gadget
* FindHelpGadget (struct Window
* window
, int x
, int y
,
88 struct IntuitionBase
*IntuitionBase
);
90 BOOL
InsideGadget(struct Screen
*scr
, struct Window
*win
, struct Requester
*req
,
91 struct Gadget
*gad
, WORD x
, WORD y
);
93 struct Gadget
*DoActivateGadget(struct Window
*win
, struct Requester
*req
,
94 struct Gadget
*gad
, struct IntuitionBase
*IntuitionBase
);
96 struct Gadget
*FindCycleGadget(struct Window
*win
, struct Requester
*req
,
97 struct Gadget
*gad
, WORD direction
);
99 /*********************************************************************/
101 void FixWindowCoords(struct Window
*win
, LONG
*left
, LONG
*top
, LONG
*width
, LONG
*height
,struct IntuitionBase
*IntuitionBase
);
103 /*********************************************************************/
105 void WindowNeedsRefresh(struct Window
* w
, struct IntuitionBase
* IntuitionBase
);
107 struct Screen
*FindHighestScreen(struct IntuitionBase
*IntuitionBase
);
109 struct Screen
*FindActiveScreen(struct IntuitionBase
*IntuitionBase
);
111 struct Window
*FindActiveWindow(struct InputEvent
*ie
, struct Screen
*scr
, ULONG
*stitlebarhit
,
112 struct IntuitionBase
*IntuitionBase
);
114 struct Window
*FindDesktopWindow(struct Screen
*screen
,struct IntuitionBase
*IntuitionBase
);
116 /*********************************************************************/
118 struct InputEvent
*AllocInputEvent(struct IIHData
*iihdata
);
119 void FreeGeneratedInputEvents(struct IIHData
*iihdata
);
121 /*********************************************************************/
123 BOOL
FireMenuMessage(WORD code
, struct Window
*win
,
124 struct InputEvent
*ie
, struct IntuitionBase
*IntuitionBase
);
126 /*********************************************************************/
128 LONG
Gad_BeginUpdate(struct Layer
*layer
, struct IntuitionBase
*IntuitionBase
);
129 void Gad_EndUpdate(struct Layer
*layer
, UWORD flag
, struct IntuitionBase
*IntuitionBase
);
131 /*********************************************************************/
133 #endif /* INPUTHANDLER_SUPPORT_H */