#define STYLE_DEFAULT STYLE_NONE
+// values for special global animation delay types
+#define ANIM_DELAY_UNDEFINED -1
+#define ANIM_DELAY_NONE 0
+#define ANIM_DELAY_INIT 1
+#define ANIM_DELAY_ANIM 2
+#define ANIM_DELAY_POST 3
+
+// values for special global animation delay actions
+#define ANIM_DELAY_ACTION_NONE -1
+
// values for special global animation events
+#define ANIM_EVENT_UNDEFINED -1
#define ANIM_EVENT_NONE 0
#define ANIM_EVENT_SELF (1 << 16)
#define ANIM_EVENT_ANY (1 << 17)
-
+#define ANIM_EVENT_CLICK (1 << 18)
+#define ANIM_EVENT_INIT (1 << 19)
+#define ANIM_EVENT_START (1 << 20)
+#define ANIM_EVENT_END (1 << 21)
+#define ANIM_EVENT_POST (1 << 22)
+#define ANIM_EVENT_UNCLICK_ANY (1 << 23)
+
+// anim number: bits 0-7
+// part number: bits 8-15
#define ANIM_EVENT_ANIM_BIT 0
#define ANIM_EVENT_PART_BIT 8
y >= gfx.ey && y < gfx.ey + gfx.eysize)
// values for mouse cursor
+#define CURSOR_UNDEFINED -1
#define CURSOR_DEFAULT 0
#define CURSOR_NONE 1
#define CURSOR_PLAYFIELD 2
void (*draw_tile_cursor_function)(int);
int cursor_mode;
+ int cursor_mode_override;
+ int cursor_mode_final;
+ int mouse_x, mouse_y;
};
struct TileCursorInfo
void ScaleBitmap(Bitmap **, int);
void SetMouseCursor(int);
+void UpdateRawMousePosition(int, int);
+void UpdateMousePosition(void);
void OpenAudio(void);
void CloseAudio(void);
void SetAudioMode(boolean);
+void InitEventFilter(EventFilter);
boolean PendingEvent(void);
void WaitEvent(Event *event);
void PeekEvent(Event *event);
+void PumpEvents(void);
void CheckQuitEvent(void);
Key GetEventKey(KeyEvent *, boolean);
KeyMod HandleKeyModState(Key, int);
KeyMod GetKeyModStateFromEvents(void);
void StartTextInput(int, int, int, int);
void StopTextInput(void);
-boolean CheckCloseWindowEvent(ClientMessageEvent *);
+void PushUserEvent(int, int, int);
void InitJoysticks(void);
boolean ReadJoystick(int, int *, int *, boolean *, boolean *);