forked from DC-SWAT/DreamShell
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgui.h
More file actions
69 lines (52 loc) · 1.46 KB
/
gui.h
File metadata and controls
69 lines (52 loc) · 1.46 KB
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
/**
* \file gui.h
* \brief DreamShell GUI
* \date 2006-2014
* \author SWAT www.dc-swat.ru
*/
#ifndef _DS_GUI_H
#define _DS_GUI_H
#include "video.h"
#include "list.h"
#include "events.h"
#include "SDL/SDL_gui.h"
typedef struct MouseCursor {
SDL_Surface *bg;
SDL_Surface *cursor;
SDL_Rect src, dst;
int draw;
} MouseCursor_t;
/*
Mouse cursor
*/
MouseCursor_t *CreateMouseCursor(const char *fn, /* or */ SDL_Surface *surface);
void DestroyMouseCursor(MouseCursor_t *c);
void DrawMouseCursor(MouseCursor_t *c);
void DrawMouseCursorEvent(MouseCursor_t *c, SDL_Event *event);
void SetActiveMouseCursor(MouseCursor_t *c);
MouseCursor_t *GetActiveMouseCursor();
void UpdateActiveMouseCursor();
void DrawActiveMouseCursor();
/* Virtual keyboard from vkb module */
int VirtKeyboardInit();
void VirtKeyboardShutdown();
int VirtKeyboardIsVisible();
void VirtKeyboardReDraw();
void VirtKeyboardShow();
void VirtKeyboardHide();
void VirtKeyboardToggle();
/* Main GUI */
int InitGUI();
void ShutdownGUI();
int LockGUI();
int UnlockGUI();
int GUI_IsLocked();
int GUI_Object2Trash(GUI_Object *object);
void GUI_ClearTrash();
/* GUI utils */
Uint32 colorHexToRGB(char *color, SDL_Color *clr);
SDL_Color Uint32ToColor(Uint32 c);
Uint32 ColorToUint32(SDL_Color c);
Uint32 MapHexColor(char *color, SDL_PixelFormat *format);
SDL_Surface *SDL_ImageLoad(const char *filename, SDL_Rect *selection);
#endif