#include "../rute_base.h"
#include "../rute_manual.h"
#include <QToolButton>
#include "tool_button_ffi.h"
static uint32_t tool_button_tool_button_style(struct RUBase* self_c) {
WRToolButton* qt_value = (WRToolButton*)self_c;
auto ret_value = qt_value->toolButtonStyle();
return (uint32_t)ret_value;
}
static uint32_t tool_button_arrow_type(struct RUBase* self_c) {
WRToolButton* qt_value = (WRToolButton*)self_c;
auto ret_value = qt_value->arrowType();
return (uint32_t)ret_value;
}
static void tool_button_set_arrow_type(struct RUBase* self_c, uint32_t arrow_type) {
WRToolButton* qt_value = (WRToolButton*)self_c;
qt_value->setArrowType((Qt::ArrowType)arrow_type);
}
static void tool_button_set_popup_mode(struct RUBase* self_c, uint32_t mode) {
WRToolButton* qt_value = (WRToolButton*)self_c;
qt_value->setPopupMode((QToolButton::ToolButtonPopupMode)mode);
}
static uint32_t tool_button_popup_mode(struct RUBase* self_c) {
WRToolButton* qt_value = (WRToolButton*)self_c;
auto ret_value = qt_value->popupMode();
return (uint32_t)ret_value;
}
static bool tool_button_auto_raise(struct RUBase* self_c) {
WRToolButton* qt_value = (WRToolButton*)self_c;
auto ret_value = qt_value->autoRaise();
return ret_value;
}
static void tool_button_show_menu(struct RUBase* self_c) {
WRToolButton* qt_value = (WRToolButton*)self_c;
qt_value->showMenu();
}
static void tool_button_set_tool_button_style(struct RUBase* self_c, uint32_t style) {
WRToolButton* qt_value = (WRToolButton*)self_c;
qt_value->setToolButtonStyle((Qt::ToolButtonStyle)style);
}
static void set_tool_button_mouse_press_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_mouse_press_event = trampoline_func;
qt_object->m_mouse_press_event_user_data = user_data;
qt_object->m_mouse_press_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_mouse_press_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_mouse_press_event = nullptr;
qt_object->m_mouse_press_event_user_data = nullptr;
qt_object->m_mouse_press_event_wrapped_func = nullptr;
}
static void set_tool_button_mouse_release_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_mouse_release_event = trampoline_func;
qt_object->m_mouse_release_event_user_data = user_data;
qt_object->m_mouse_release_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_mouse_release_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_mouse_release_event = nullptr;
qt_object->m_mouse_release_event_user_data = nullptr;
qt_object->m_mouse_release_event_wrapped_func = nullptr;
}
static void set_tool_button_paint_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_paint_event = trampoline_func;
qt_object->m_paint_event_user_data = user_data;
qt_object->m_paint_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_paint_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_paint_event = nullptr;
qt_object->m_paint_event_user_data = nullptr;
qt_object->m_paint_event_wrapped_func = nullptr;
}
static void set_tool_button_enter_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_enter_event = trampoline_func;
qt_object->m_enter_event_user_data = user_data;
qt_object->m_enter_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_enter_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_enter_event = nullptr;
qt_object->m_enter_event_user_data = nullptr;
qt_object->m_enter_event_wrapped_func = nullptr;
}
static void set_tool_button_leave_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_leave_event = trampoline_func;
qt_object->m_leave_event_user_data = user_data;
qt_object->m_leave_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_leave_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_leave_event = nullptr;
qt_object->m_leave_event_user_data = nullptr;
qt_object->m_leave_event_wrapped_func = nullptr;
}
static void set_tool_button_change_event(void* object, void* user_data, void* wrapped_func, void (*trampoline_func)(void*, void* self_c, struct RUBase* arg0)) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_change_event = trampoline_func;
qt_object->m_change_event_user_data = user_data;
qt_object->m_change_event_wrapped_func = wrapped_func;
}
static void remove_tool_button_change_event(void* object) {
WRToolButton* qt_object = (WRToolButton*)object;
qt_object->m_change_event = nullptr;
qt_object->m_change_event_user_data = nullptr;
qt_object->m_change_event_wrapped_func = nullptr;
}
static struct RUToolButton create_tool_button(
struct RUBase* priv_data,
RUDeleteCallback delete_callback,
void* private_user_data)
{
auto ctl = create_widget_func<struct RUToolButton, WRToolButton>(priv_data, delete_callback, private_user_data);
ctl.all_funcs = &s_tool_button_all_funcs;
return ctl;
}
static void destroy_tool_button(struct RUBase* priv_data) {
destroy_generic<WRToolButton>(priv_data);
}
struct RUToolButtonFuncs s_tool_button_funcs = {
destroy_tool_button,
tool_button_tool_button_style,
tool_button_arrow_type,
tool_button_set_arrow_type,
tool_button_set_popup_mode,
tool_button_popup_mode,
tool_button_auto_raise,
tool_button_show_menu,
tool_button_set_tool_button_style,
set_tool_button_mouse_press_event,
remove_tool_button_mouse_press_event,
set_tool_button_mouse_release_event,
remove_tool_button_mouse_release_event,
set_tool_button_paint_event,
remove_tool_button_paint_event,
set_tool_button_enter_event,
remove_tool_button_enter_event,
set_tool_button_leave_event,
remove_tool_button_leave_event,
set_tool_button_change_event,
remove_tool_button_change_event,
};
struct RUToolButtonAllFuncs s_tool_button_all_funcs = {
&s_object_funcs,
&s_paint_device_funcs,
&s_widget_funcs,
&s_abstract_button_funcs,
&s_tool_button_funcs,
};