Files
pcem/includes/private/wx-ui/wx-utils.h
2022-01-27 14:31:05 -08:00

182 lines
6.1 KiB
C

#ifndef _WX_UTILS2_H_
#define _WX_UTILS2_H_
#include <wx/defs.h>
#ifndef LONG_PARAM
#define LONG_PARAM wxIntPtr
#endif
#ifndef INT_PARAM
#define INT_PARAM wxInt32
#endif
typedef int (*WX_CALLBACK)(void* data);
#ifdef __cplusplus
extern "C" {
#endif
int wx_messagebox(void* nothing, const char* message, const char* title, int style);
void wx_simple_messagebox(const char* title, const char *format, ...);
int wx_xrcid(const char* s);
int wx_filedialog(void* window, const char* title, const char* path, const char* extensions, const char* extension, int open, char* file);
void wx_checkmenuitem(void* window, int id, int checked);
void wx_enablemenuitem(void* menu, int id, int enable);
void* wx_getmenu(void* window);
void* wx_getmenubar(void* window);
void wx_enabletoolbaritem(void* toolbar, int id, int enable);
void* wx_gettoolbar(void* window);
void* wx_getsubmenu(void* window, int id);
void wx_appendmenu(void* sub_menu, int id, const char* title, enum wxItemKind type);
void* wx_getnativemenu(void* menu);
int wx_textentrydialog(void* window, const char* message, const char* title, const char* value, unsigned int min_length, unsigned int max_length, LONG_PARAM result);
int wx_dlgdirlist(void* window, const char* path, int id, int static_path, int file_type);
int wx_dlgdirselectex(void* window, LONG_PARAM path, int count, int id);
void wx_setwindowtitle(void* window, char* s);
int wx_sendmessage(void* window, int type, LONG_PARAM param1, LONG_PARAM param2);
void* wx_getdlgitem(void* window, int id);
void wx_setdlgitemtext(void* window, int id, char* str);
void wx_enablewindow(void* window, int enabled);
void wx_showwindow(void* window, int show);
int wx_iswindowvisible(void* window);
void* wx_getnativewindow(void* window);
void wx_callback(void* window, WX_CALLBACK callback, void* data);
void wx_togglewindow(void* window);
int wx_progressdialog(void* window, const char* title, const char* message, WX_CALLBACK callback, void* data, int range, volatile int *pos);
void wx_enddialog(void* window, int ret_code);
int wx_dialogbox(void* window, const char* name, int(*callback)(void* window, int message, INT_PARAM param1, LONG_PARAM param2));
void wx_exit(void* window, int value);
void wx_stop_emulation(void* window);
void wx_stop_emulation_now(void* window);
void* wx_createtimer(void (*fn)());
void wx_starttimer(void* timer, int milliseconds, int once);
void wx_stoptimer(void* timer);
void wx_destroytimer(void* timer);
void wx_popupmenu(void* window, void* menu, int* x, int* y);
void* wx_create_status_frame(void* window);
void wx_destroy_status_frame(void* window);
int wx_yield();
void wx_setwindowposition(void* window, int x, int y);
void wx_setwindowsize(void* window, int width, int height);
void wx_show_status(void* window);
void wx_close_status(void* window);
void wx_get_home_directory(char* path);
int wx_create_directory(char* path);
int wx_setup(char* path);
int wx_file_exists(char* path);
int wx_dir_exists(char* path);
int wx_copy_file(char* from, char* to, int overwrite);
void wx_date_format(char* s, const char* format);
int wx_image_save(const char* path, const char* name, const char* format, unsigned char* rgba, int width, int height, int alpha);
void* wx_image_load(const char* path);
void wx_image_rescale(void* image, int width, int height);
void wx_image_get_size(void* image, int* width, int* height);
unsigned char* wx_image_get_data(void* image);
unsigned char* wx_image_get_alpha(void* image);
void wx_image_free(void* image);
void* wx_config_load(const char* path);
int wx_config_get_string(void* config, const char* name, char* dst, int size, const char* defVal);
int wx_config_get_int(void* config, const char* name, int* dst, int defVal);
int wx_config_get_float(void* config, const char* name, float* dst, float defVal);
int wx_config_get_bool(void* config, const char* name, int* dst, int defVal);
int wx_config_has_entry(void* config, const char* name);
void wx_config_free(void* config);
int confirm();
#ifdef _WIN32
void wx_winsendmessage(void* window, int msg, INT_PARAM wParam, LONG_PARAM lParam);
#endif
#ifdef __cplusplus
}
#endif
extern int (*wx_keydown_func)(void* window, void* event, int keycode, int modifiers);
extern int (*wx_keyup_func)(void* window, void* event, int keycode, int modifiers);
extern void (*wx_idle_func)(void* window, void* event);
#define WX_ID wx_xrcid
#define WX_MB_CHECKED 1
#define WX_MB_UNCHECKED 0
#define WX_INITDIALOG 1
#define WX_COMMAND 2
#define WX_CB_ADDSTRING 1
#define WX_CB_SETCURSEL 2
#define WX_CB_GETCURSEL 3
#define WX_CB_RESETCONTENT 4
#define WX_CB_GETLBTEXT 5
#define WX_BM_SETCHECK 20
#define WX_BM_GETCHECK 21
#define WX_WM_SETTEXT 40
#define WX_WM_GETTEXT 41
#define WX_UDM_SETPOS 50
#define WX_UDM_GETPOS 51
#define WX_UDM_SETINCR 52
#define WX_UDM_SETRANGE 53
#define WX_LB_GETCOUNT 60
#define WX_LB_GETCURSEL 61
#define WX_LB_GETTEXT 62
#define WX_LB_DELETESTRING 63
#define WX_LB_INSERTSTRING 64
#define WX_LB_RESETCONTENT 65
#define WX_LB_SETCURSEL 66
#define WX_LBN_DBLCLK 67
#define WX_CHB_SETPAGETEXT 68
#define WX_CHB_ADDPAGE 69
#define WX_CHB_REMOVEPAGE 70
#define WX_CHB_GETPAGECOUNT 71
#define WX_REPARENT 72
#define WX_WM_ENABLE 80
#define WX_WM_SHOW 81
#define WX_WM_LAYOUT 82
#define WX_SB_SETCURSEL 90
#define WX_MB_YES wxYES
#define WX_MB_OK wxOK
#define WX_MB_OKCANCEL wxOK|wxCANCEL
#define WX_MB_NODEFAULT wxYES_NO|wxNO_DEFAULT
#define WX_IDOK wxOK
#define IMAGE_JPG "jpg"
#define IMAGE_PNG "png"
#define IMAGE_BMP "bmp"
#define IMAGE_TIFF "tiff"
extern int has_been_inited;
#define ID_IS(s) wParam == wx_xrcid(s)
#define ID_RANGE(a, b) wParam >= wx_xrcid(a) && wParam <= wx_xrcid(b)
#endif /* _WX_UTILS_H_ */