#ifndef WXD_TYPES_H
#define WXD_TYPES_H
#ifdef __cplusplus
#include <wx/defs.h>
#include <wx/event.h>
#include <wx/gdicmn.h>
#include <wx/colour.h>
#include <wx/datetime.h>
#include <wx/variant.h>
#include <wx/bmpbndl.h>
#include <wx/rearrangectrl.h>
#include <wx/dataview.h>
#endif
#include <stdbool.h>
#include <stdint.h>
#include <stddef.h>
typedef int wxd_Id;
typedef struct {
int x, y;
} wxd_Point;
typedef struct {
int width, height;
} wxd_Size;
typedef struct wxd_Rect {
int x;
int y;
int width;
int height;
} wxd_Rect;
typedef struct {
unsigned char r;
unsigned char g;
unsigned char b;
unsigned char a;
} wxd_Colour_t;
typedef struct {
short day;
unsigned short month;
int year;
short hour;
short minute;
short second;
} wxd_DateTime_t;
#define WXD_VARIANT_TYPE_INVALID 0
#define WXD_VARIANT_TYPE_BOOL 1
#define WXD_VARIANT_TYPE_INT32 2
#define WXD_VARIANT_TYPE_INT64 3
#define WXD_VARIANT_TYPE_DOUBLE 4
#define WXD_VARIANT_TYPE_STRING 5
#define WXD_VARIANT_TYPE_BITMAP 6
#define WXD_VARIANT_TYPE_DATETIME 7
#define WXD_VARIANT_TYPE_VOID_PTR 8
#define WXD_VARIANT_TYPE_BITMAP_RUST_BORROWED 9
typedef struct wxd_Variant_t {
int32_t type;
union {
bool bool_val;
int32_t int32_val;
int64_t int64_val;
double double_val;
char* string_val;
struct wxd_Bitmap_t* bitmap_val;
wxd_DateTime_t datetime_val;
} data;
} wxd_Variant_t;
typedef enum {
WXD_EVENT_TYPE_NULL = 0,
WXD_EVENT_TYPE_COMMAND_BUTTON_CLICKED = 1,
WXD_EVENT_TYPE_CLOSE_WINDOW = 2,
WXD_EVENT_TYPE_CHECKBOX = 3,
WXD_EVENT_TYPE_TEXT = 4,
WXD_EVENT_TYPE_TEXT_ENTER = 5,
WXD_EVENT_TYPE_SIZE = 6,
WXD_EVENT_TYPE_MENU = 7,
WXD_EVENT_TYPE_LEFT_DOWN = 8,
WXD_EVENT_TYPE_LEFT_UP = 9,
WXD_EVENT_TYPE_RIGHT_DOWN = 131,
WXD_EVENT_TYPE_RIGHT_UP = 132,
WXD_EVENT_TYPE_MIDDLE_DOWN = 133,
WXD_EVENT_TYPE_MIDDLE_UP = 134,
WXD_EVENT_TYPE_MOTION = 10,
WXD_EVENT_TYPE_MOUSEWHEEL = 11,
WXD_EVENT_TYPE_KEY_DOWN = 12,
WXD_EVENT_TYPE_KEY_UP = 13,
WXD_EVENT_TYPE_CHAR = 14,
WXD_EVENT_TYPE_COMMAND_RADIOBUTTON_SELECTED = 15,
WXD_EVENT_TYPE_COMMAND_RADIOBOX_SELECTED = 16,
WXD_EVENT_TYPE_COMMAND_LISTBOX_SELECTED = 17,
WXD_EVENT_TYPE_COMMAND_CHOICE_SELECTED = 18,
WXD_EVENT_TYPE_COMMAND_COMBOBOX_SELECTED = 19,
WXD_EVENT_TYPE_COMMAND_CHECKLISTBOX_SELECTED = 20,
WXD_EVENT_TYPE_COMMAND_TOGGLEBUTTON_CLICKED = 21,
WXD_EVENT_TYPE_TREE_BEGIN_LABEL_EDIT = 22,
WXD_EVENT_TYPE_TREE_END_LABEL_EDIT = 23,
WXD_EVENT_TYPE_TREE_SEL_CHANGED = 24,
WXD_EVENT_TYPE_TREE_ITEM_ACTIVATED = 25,
WXD_EVENT_TYPE_SLIDER = 26,
WXD_EVENT_TYPE_SPINCTRL = 27,
WXD_EVENT_TYPE_SPIN_UP = 28,
WXD_EVENT_TYPE_SPIN_DOWN = 29,
WXD_EVENT_TYPE_SPIN = 30,
WXD_EVENT_TYPE_NOTEBOOK_PAGE_CHANGED = 31,
WXD_EVENT_TYPE_SPLITTER_SASH_POS_CHANGED = 32,
WXD_EVENT_TYPE_SPLITTER_SASH_POS_CHANGING = 33,
WXD_EVENT_TYPE_SPLITTER_DOUBLECLICKED = 34,
WXD_EVENT_TYPE_SPLITTER_UNSPLIT = 35,
WXD_EVENT_TYPE_LIST_ITEM_SELECTED = 36,
WXD_EVENT_TYPE_LIST_ITEM_ACTIVATED = 37,
WXD_EVENT_TYPE_LIST_COL_CLICK = 38,
WXD_EVENT_TYPE_LIST_BEGIN_LABEL_EDIT = 39,
WXD_EVENT_TYPE_LIST_END_LABEL_EDIT = 40,
WXD_EVENT_TYPE_COLOURPICKER_CHANGED = 41,
WXD_EVENT_TYPE_DATE_CHANGED = 42,
WXD_EVENT_TYPE_TREEBOOK_PAGE_CHANGED = 43,
WXD_EVENT_TYPE_TREEBOOK_PAGE_CHANGING = 44,
WXD_EVENT_TYPE_TREEBOOK_NODE_EXPANDED = 45,
WXD_EVENT_TYPE_TREEBOOK_NODE_COLLAPSED = 46,
WXD_EVENT_TYPE_COMMAND_SEARCHCTRL_SEARCH_BTN = 47,
WXD_EVENT_TYPE_COMMAND_SEARCHCTRL_CANCEL_BTN = 48,
WXD_EVENT_TYPE_COMMAND_HYPERLINK = 49,
WXD_EVENT_TYPE_SPINCTRLDOUBLE = 50,
WXD_EVENT_TYPE_CALENDAR_SEL_CHANGED = 51,
WXD_EVENT_TYPE_CALENDAR_DOUBLECLICKED = 120,
WXD_EVENT_TYPE_CALENDAR_MONTH_CHANGED = 121,
WXD_EVENT_TYPE_CALENDAR_YEAR_CHANGED = 122,
WXD_EVENT_TYPE_CALENDAR_WEEKDAY_CLICKED = 123,
WXD_EVENT_TYPE_SCROLL_TOP = 52,
WXD_EVENT_TYPE_SCROLL_BOTTOM = 53,
WXD_EVENT_TYPE_SCROLL_LINEUP = 54,
WXD_EVENT_TYPE_SCROLL_LINEDOWN = 55,
WXD_EVENT_TYPE_SCROLL_PAGEUP = 56,
WXD_EVENT_TYPE_SCROLL_PAGEDOWN = 57,
WXD_EVENT_TYPE_SCROLL_THUMBTRACK = 58,
WXD_EVENT_TYPE_SCROLL_THUMBRELEASE = 59,
WXD_EVENT_TYPE_SCROLL_CHANGED = 60,
WXD_EVENT_TYPE_FILEPICKER_CHANGED = 61,
WXD_EVENT_TYPE_DIRPICKER_CHANGED = 62,
WXD_EVENT_TYPE_FONTPICKER_CHANGED = 63,
WXD_EVENT_TYPE_NOTIFICATION_MESSAGE_CLICK = 64,
WXD_EVENT_TYPE_NOTIFICATION_MESSAGE_DISMISSED = 65,
WXD_EVENT_TYPE_NOTIFICATION_MESSAGE_ACTION = 66,
WXD_EVENT_TYPE_IDLE = 67,
WXD_EVENT_TYPE_BEGIN_DRAG = 68,
WXD_EVENT_TYPE_DROP_FILES = 69,
WXD_EVENT_TYPE_DROP_TEXT = 70,
WXD_EVENT_TYPE_END_DRAG = 71,
WXD_EVENT_TYPE_PAINT = 72,
WXD_EVENT_TYPE_TIME_CHANGED = 73,
WXD_EVENT_TYPE_DESTROY = 74,
WXD_EVENT_TYPE_LIST_BEGIN_DRAG = 75,
WXD_EVENT_TYPE_LIST_BEGIN_RDRAG = 76,
WXD_EVENT_TYPE_LIST_DELETE_ITEM = 77,
WXD_EVENT_TYPE_LIST_DELETE_ALL_ITEMS = 78,
WXD_EVENT_TYPE_LIST_ITEM_DESELECTED = 79,
WXD_EVENT_TYPE_LIST_ITEM_FOCUSED = 80,
WXD_EVENT_TYPE_LIST_ITEM_MIDDLE_CLICK = 81,
WXD_EVENT_TYPE_LIST_ITEM_RIGHT_CLICK = 82,
WXD_EVENT_TYPE_LIST_KEY_DOWN = 83,
WXD_EVENT_TYPE_LIST_INSERT_ITEM = 84,
WXD_EVENT_TYPE_LIST_COL_RIGHT_CLICK = 85,
WXD_EVENT_TYPE_LIST_COL_BEGIN_DRAG = 86,
WXD_EVENT_TYPE_MEDIA_LOADED = 87,
WXD_EVENT_TYPE_MEDIA_STOP = 88,
WXD_EVENT_TYPE_MEDIA_FINISHED = 89,
WXD_EVENT_TYPE_MEDIA_STATECHANGED = 90,
WXD_EVENT_TYPE_MEDIA_PLAY = 91,
WXD_EVENT_TYPE_MEDIA_PAUSE = 92,
WXD_EVENT_TYPE_DATAVIEW_SELECTION_CHANGED = 93,
WXD_EVENT_TYPE_DATAVIEW_ITEM_ACTIVATED = 94,
WXD_EVENT_TYPE_DATAVIEW_ITEM_EDITING_STARTED = 95,
WXD_EVENT_TYPE_DATAVIEW_ITEM_EDITING_DONE = 96,
WXD_EVENT_TYPE_DATAVIEW_ITEM_COLLAPSING = 97,
WXD_EVENT_TYPE_DATAVIEW_ITEM_COLLAPSED = 98,
WXD_EVENT_TYPE_DATAVIEW_ITEM_EXPANDING = 99,
WXD_EVENT_TYPE_DATAVIEW_ITEM_EXPANDED = 100,
WXD_EVENT_TYPE_DATAVIEW_COLUMN_HEADER_CLICK = 101,
WXD_EVENT_TYPE_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK = 102,
WXD_EVENT_TYPE_DATAVIEW_COLUMN_SORTED = 103,
WXD_EVENT_TYPE_DATAVIEW_COLUMN_REORDERED = 104,
WXD_EVENT_TYPE_TREE_SEL_CHANGING = 105, WXD_EVENT_TYPE_TREE_ITEM_COLLAPSING = 106, WXD_EVENT_TYPE_TREE_ITEM_COLLAPSED = 107, WXD_EVENT_TYPE_TREE_ITEM_EXPANDING = 108, WXD_EVENT_TYPE_TREE_ITEM_EXPANDED = 109, WXD_EVENT_TYPE_TREE_ITEM_RIGHT_CLICK = 110, WXD_EVENT_TYPE_TREE_ITEM_MIDDLE_CLICK = 111, WXD_EVENT_TYPE_TREE_KEY_DOWN = 112, WXD_EVENT_TYPE_TREE_DELETE_ITEM = 113, WXD_EVENT_TYPE_TREE_ITEM_MENU = 114, WXD_EVENT_TYPE_TREE_BEGIN_DRAG = 115, WXD_EVENT_TYPE_TREE_BEGIN_RDRAG = 116, WXD_EVENT_TYPE_TREE_END_DRAG = 117, WXD_EVENT_TYPE_TREE_STATE_IMAGE_CLICK = 118, WXD_EVENT_TYPE_COMMAND_LISTBOX_DOUBLECLICKED = 119,
WXD_EVENT_TYPE_TOOL = 123, WXD_EVENT_TYPE_TOOL_ENTER = 124, WXD_EVENT_TYPE_TREE_ITEM_GETTOOLTIP = 125, WXD_EVENT_TYPE_ANY = 126,
WXD_EVENT_TYPE_MOVE = 127, WXD_EVENT_TYPE_ERASE = 128, WXD_EVENT_TYPE_SET_FOCUS = 129, WXD_EVENT_TYPE_KILL_FOCUS = 130,
WXD_EVENT_TYPE_AUI_PANE_BUTTON = 135, WXD_EVENT_TYPE_AUI_PANE_CLOSE = 136, WXD_EVENT_TYPE_AUI_PANE_MAXIMIZE = 137, WXD_EVENT_TYPE_AUI_PANE_RESTORE = 138, WXD_EVENT_TYPE_AUI_PANE_ACTIVATED = 139, WXD_EVENT_TYPE_AUI_RENDER = 140,
WXD_EVENT_TYPE_COMMAND_REARRANGE_LIST = 141,
WXD_EVENT_TYPE_TIMER = 200,
WXD_EVENT_TYPE_MAX } WXDEventTypeCEnum;
typedef int64_t wxd_Style_t;
typedef int wxd_Direction_t;
typedef int wxd_Orientation_t;
typedef int wxd_SizerFlags_t;
typedef struct wxd_App_t wxd_App_t;
typedef struct wxd_Window_t wxd_Window_t;
typedef struct wxd_Event_t wxd_Event_t;
typedef struct wxd_EvtHandler_t wxd_EvtHandler_t;
typedef struct wxd_Control_t wxd_Control_t;
typedef struct wxd_Frame_t wxd_Frame_t;
typedef struct wxd_Button_t wxd_Button_t;
typedef struct wxd_Sizer_t wxd_Sizer_t;
typedef struct wxd_StaticText_t wxd_StaticText_t;
typedef struct wxd_TextCtrl_t wxd_TextCtrl_t;
typedef struct wxd_CheckBox_t wxd_CheckBox_t;
typedef struct wxd_Panel_t wxd_Panel_t;
typedef struct wxd_RadioButton_t wxd_RadioButton_t;
typedef struct wxd_ListBox_t wxd_ListBox_t;
typedef struct wxd_Choice_t wxd_Choice_t;
typedef struct wxd_ComboBox_t wxd_ComboBox_t;
typedef struct wxd_CheckListBox_t wxd_CheckListBox_t;
typedef struct wxd_ToggleButton_t wxd_ToggleButton_t;
typedef struct wxd_RadioBox_t wxd_RadioBox_t;
typedef struct wxd_BitmapComboBox_t wxd_BitmapComboBox_t;
typedef struct wxd_TreeCtrl_t wxd_TreeCtrl_t;
typedef struct wxd_TreeItemData_t wxd_TreeItemData_t;
typedef struct wxd_StaticBox_t wxd_StaticBox_t;
typedef struct wxd_Gauge_t wxd_Gauge_t;
typedef struct wxd_Slider_t wxd_Slider_t;
typedef struct wxd_SpinCtrl_t wxd_SpinCtrl_t;
typedef struct wxd_SpinButton_t wxd_SpinButton_t;
typedef struct wxd_Notebook_t wxd_Notebook_t;
typedef struct wxd_SplitterWindow_t wxd_SplitterWindow_t;
typedef struct wxd_Bitmap_t wxd_Bitmap_t;
typedef struct wxd_BitmapButton_t wxd_BitmapButton_t;
typedef struct wxd_ScrolledWindow_t wxd_ScrolledWindow_t;
typedef struct wxd_StatusBar_t wxd_StatusBar_t;
typedef struct wxd_ToolBar_t wxd_ToolBar_t;
typedef struct wxd_MenuBar_t wxd_MenuBar_t;
typedef struct wxd_Menu_t wxd_Menu_t;
typedef struct wxd_MenuItem_t wxd_MenuItem_t;
typedef struct wxd_ListCtrl_t wxd_ListCtrl_t;
typedef struct wxd_ColourPickerCtrl_t wxd_ColourPickerCtrl_t;
typedef struct wxd_DatePickerCtrl_t wxd_DatePickerCtrl_t;
typedef struct wxd_TimePickerCtrl_t wxd_TimePickerCtrl_t;
typedef struct wxd_Treebook wxd_Treebook_t;
typedef struct wxd_SearchCtrl wxd_SearchCtrl_t;
typedef struct wxd_HyperlinkCtrl wxd_HyperlinkCtrl_t;
typedef struct wxd_ActivityIndicator wxd_ActivityIndicator_t;
typedef struct wxd_SpinCtrlDouble wxd_SpinCtrlDouble_t;
typedef struct wxd_CalendarCtrl_t wxd_CalendarCtrl_t;
typedef struct wxd_FlexGridSizer_t wxd_FlexGridSizer_t;
typedef struct wxd_StaticBoxSizer_t wxd_StaticBoxSizer_t;
typedef struct wxd_StaticBitmap_t wxd_StaticBitmap_t;
typedef struct wxd_StaticLine_t wxd_StaticLine_t;
typedef struct wxd_ScrollBar_t wxd_ScrollBar_t;
typedef struct wxd_CommandLinkButton_t wxd_CommandLinkButton_t;
typedef struct wxd_Dialog wxd_Dialog_t;
typedef struct wxd_MessageDialog wxd_MessageDialog_t;
typedef struct wxd_ArrayString { void* internal_data; } wxd_ArrayString_t;
typedef struct wxd_FileDialog wxd_FileDialog_t;
typedef struct wxd_ColourData wxd_ColourData_t;
typedef struct wxd_ColourDialog wxd_ColourDialog_t;
typedef struct wxd_FontData wxd_FontData_t;
typedef struct wxd_Font_t wxd_Font_t;
typedef struct wxd_FontDialog wxd_FontDialog_t;
typedef struct wxd_TextEntryDialog wxd_TextEntryDialog_t;
typedef struct wxd_ProgressDialog wxd_ProgressDialog_t;
typedef struct wxd_SingleChoiceDialog wxd_SingleChoiceDialog_t;
typedef struct wxd_MultiChoiceDialog wxd_MultiChoiceDialog_t;
typedef struct wxd_DirDialog wxd_DirDialog_t;
typedef struct wxd_AnimationCtrl wxd_AnimationCtrl_t;
typedef struct wxd_FilePickerCtrl_t wxd_FilePickerCtrl_t;
typedef struct wxd_DirPickerCtrl_t wxd_DirPickerCtrl_t;
typedef struct wxd_FontPickerCtrl_t wxd_FontPickerCtrl_t;
typedef struct wxd_NotificationMessage_t wxd_NotificationMessage_t;
typedef struct wxd_FileCtrl_t wxd_FileCtrl_t;
typedef struct wxd_MediaCtrl_t wxd_MediaCtrl_t;
typedef struct wxd_RearrangeList_t wxd_RearrangeList_t;
typedef struct wxd_EditableListBox_t wxd_EditableListBox_t;
typedef struct wxd_Clipboard_t wxd_Clipboard_t;
typedef struct wxd_XmlResource_t wxd_XmlResource_t;
typedef struct wxd_AuiMDIParentFrame_t wxd_AuiMDIParentFrame_t;
typedef struct wxd_AuiMDIChildFrame_t wxd_AuiMDIChildFrame_t;
typedef struct wxd_AuiManager_t wxd_AuiManager_t;
typedef struct wxd_AuiManagerEvent_t wxd_AuiManagerEvent_t;
typedef struct wxd_AuiNotebook_t wxd_AuiNotebook_t;
typedef struct wxd_AuiNotebookEvent_t wxd_AuiNotebookEvent_t;
typedef struct wxd_AuiPaneInfo_t wxd_AuiPaneInfo_t;
typedef struct wxd_AuiToolBar_t wxd_AuiToolBar_t;
typedef struct wxd_DataObject_t wxd_DataObject_t;
typedef struct wxd_TextDataObject_t wxd_TextDataObject_t;
typedef struct wxd_FileDataObject_t wxd_FileDataObject_t;
typedef struct wxd_BitmapDataObject_t wxd_BitmapDataObject_t;
typedef struct wxd_DropSource_t wxd_DropSource_t;
typedef struct wxd_DropTarget_t wxd_DropTarget_t;
typedef struct wxd_TextDropTarget_t wxd_TextDropTarget_t;
typedef struct wxd_FileDropTarget_t wxd_FileDropTarget_t;
typedef struct wxd_DC_t wxd_DC_t;
typedef struct wxd_WindowDC_t wxd_WindowDC_t;
typedef struct wxd_ClientDC_t wxd_ClientDC_t;
typedef struct wxd_PaintDC_t wxd_PaintDC_t;
typedef struct wxd_MemoryDC_t wxd_MemoryDC_t;
typedef struct wxd_ScreenDC_t wxd_ScreenDC_t;
typedef struct wxd_Bitmap_t wxd_Bitmap_t;
typedef enum {
WXD_ITEM_NORMAL = 0, WXD_ITEM_CHECK = 1, WXD_ITEM_RADIO = 2, WXD_ITEM_SEPARATOR = 3, } WXDItemKindCEnum;
typedef bool (*wxd_OnInitCallback)(void* userData);
typedef void (*wxd_ClosureCallback)(wxd_Event_t* event, void* closure_ptr);
typedef enum {
WXD_DRAG_NONE = 0, WXD_DRAG_COPY = 1, WXD_DRAG_MOVE = 2, WXD_DRAG_LINK = 3, WXD_DRAG_CANCEL = 4, WXD_DRAG_ERROR = 5 } wxd_DragResult;
typedef long long wxd_Long_t;
#define WXD_LIST_MASK_STATE 0x0001
#define WXD_LIST_MASK_TEXT 0x0002
#define WXD_LIST_MASK_IMAGE 0x0004
#define WXD_LIST_MASK_DATA 0x0008
#define WXD_LIST_MASK_WIDTH 0x0010
#define WXD_LIST_MASK_FORMAT 0x0020
typedef struct {
void* id; } wxd_DataViewItemWithID_t;
typedef void wxd_DataViewModel_t;
typedef void wxd_DataViewColumn_t;
typedef enum {
WXD_DATAVIEW_CELL_INERT,
WXD_DATAVIEW_CELL_ACTIVATABLE,
WXD_DATAVIEW_CELL_EDITABLE
} wxd_DataViewCellModeCEnum;
typedef void wxd_Image_t; typedef void wxd_ImageList_t; typedef struct wxd_Icon_t wxd_Icon_t;
typedef struct wxd_TreeItemId_Opaque_ForBindgen wxd_TreeItemId_t;
#ifdef __cplusplus
struct wxd_Event_t { wxEvent* event; };
#else
typedef struct wxd_Event_t wxd_Event_t;
#endif
typedef struct wxd_App_t wxd_App_t;
typedef struct wxd_Window_t wxd_Window_t;
typedef struct wxd_EvtHandler_t wxd_EvtHandler_t;
typedef struct wxd_Control_t wxd_Control_t;
typedef struct wxd_BitmapBundle_t wxd_BitmapBundle_t;
typedef struct wxd_Font_t wxd_Font_t;
typedef struct wxd_Window_t wxd_Window_t;
typedef struct wxd_Timer_t wxd_Timer_t;
typedef int wxd_Id;
#endif