Initial revision
[ssr] / StraySrc / Libraries / Steel / h / interface
1 /************************************
2
3 interface segment of Wimp routines
4
5 Controls low-level access to
6 Interface module.
7
8 Version 1.00 (29 June 1991)
9 © 1991-1998 Straylight
10
11 ************************************/
12
13 /*----- Licensing note ----------------------------------------------------*
14 *
15 * This file is part of Straylight's Steel library.
16 *
17 * Steel is free software; you can redistribute it and/or modify
18 * it under the terms of the GNU General Public License as published by
19 * the Free Software Foundation; either version 2, or (at your option)
20 * any later version.
21 *
22 * Steel is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * GNU General Public License for more details.
26 *
27 * You should have received a copy of the GNU General Public License
28 * along with Steel. If not, write to the Free Software Foundation,
29 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
30 */
31
32 #ifndef __interface_h
33
34 #ifndef __sprite_h
35 #include "sprite.h"
36 #endif
37
38 /* Structure for passing to interface_set/releaseworkareapointer(). */
39
40 typedef struct
41 {
42 wimp_w win;
43 wimp_box b;
44 char *ptr;
45 }
46 interface_pointerstr;
47
48 /*
49 * void interface_spritearea(sprite_area *a)
50 *
51 * Use
52 * Sets the sprite area for use with interface_pollpointer().
53 *
54 * Parameters
55 * sprite_area *a == the sprite area containing all the pointers
56 */
57
58 void interface_spritearea(sprite_area *a);
59
60 /* These are just bindings to the SWI commands provided by the Interface module. */
61
62 os_error *interface_slabButton(wimp_mousestr *mouse);
63 os_error *interface_render3dWindow(wimp_redrawstr *rdr);
64 os_error *interface_initialise(wimp_t task);
65 os_error *interface_closeDown(wimp_t task);
66 os_error *interface_poll(wimp_eventstr *evnt,wimp_t task);
67 os_error *interface_setWorkareaPointer(interface_pointerstr *s);
68 os_error *interface_removeWorkareaPointer(interface_pointerstr *s);
69
70 #define __interface_h
71
72 #endif
73
74 /* End of interface.h */