#include "../rute_base.h"
#include "../rute_manual.h"
#include <QScreen>
#include "screen_ffi.h"
static const char* screen_name(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->name();
return q_string_to_const_char(ret_value);
}
static const char* screen_manufacturer(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->manufacturer();
return q_string_to_const_char(ret_value);
}
static const char* screen_model(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->model();
return q_string_to_const_char(ret_value);
}
static const char* screen_serial_number(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->serialNumber();
return q_string_to_const_char(ret_value);
}
static int screen_depth(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->depth();
return ret_value;
}
static float screen_physical_dots_per_inch_x(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->physicalDotsPerInchX();
return ret_value;
}
static float screen_physical_dots_per_inch_y(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->physicalDotsPerInchY();
return ret_value;
}
static float screen_physical_dots_per_inch(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->physicalDotsPerInch();
return ret_value;
}
static float screen_logical_dots_per_inch_x(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->logicalDotsPerInchX();
return ret_value;
}
static float screen_logical_dots_per_inch_y(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->logicalDotsPerInchY();
return ret_value;
}
static float screen_logical_dots_per_inch(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->logicalDotsPerInch();
return ret_value;
}
static float screen_device_pixel_ratio(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->devicePixelRatio();
return ret_value;
}
static struct RUSize screen_available_size(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->availableSize();
WRSize* new_val = new WRSize();
*new_val = ret_value;
struct RUSize ctl;
ctl.qt_data = (struct RUBase*)new_val;
ctl.host_data = (struct RUBase*)s_host_data_lookup[(void*)new_val];
ctl.all_funcs = &s_size_all_funcs;
return ctl;
}
static struct RUSize screen_virtual_size(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->virtualSize();
WRSize* new_val = new WRSize();
*new_val = ret_value;
struct RUSize ctl;
ctl.qt_data = (struct RUBase*)new_val;
ctl.host_data = (struct RUBase*)s_host_data_lookup[(void*)new_val];
ctl.all_funcs = &s_size_all_funcs;
return ctl;
}
static struct RUSize screen_available_virtual_size(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->availableVirtualSize();
WRSize* new_val = new WRSize();
*new_val = ret_value;
struct RUSize ctl;
ctl.qt_data = (struct RUBase*)new_val;
ctl.host_data = (struct RUBase*)s_host_data_lookup[(void*)new_val];
ctl.all_funcs = &s_size_all_funcs;
return ctl;
}
static int screen_primary_orientation(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->primaryOrientation();
return s_screen_orientation_lookup[(int)ret_value];
}
static int screen_angle_between(struct RUBase* self_c, int a, int b) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->angleBetween((Qt::ScreenOrientation)s_screen_orientation_lookup[a], (Qt::ScreenOrientation)s_screen_orientation_lookup[b]);
return ret_value;
}
static bool screen_is_landscape(struct RUBase* self_c, int orientation) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->isLandscape((Qt::ScreenOrientation)s_screen_orientation_lookup[orientation]);
return ret_value;
}
static float screen_refresh_rate(struct RUBase* self_c) {
QScreen* qt_value = (QScreen*)self_c;
auto ret_value = qt_value->refreshRate();
return ret_value;
}
struct RUScreenFuncs s_screen_funcs = {
screen_name,
screen_manufacturer,
screen_model,
screen_serial_number,
screen_depth,
screen_physical_dots_per_inch_x,
screen_physical_dots_per_inch_y,
screen_physical_dots_per_inch,
screen_logical_dots_per_inch_x,
screen_logical_dots_per_inch_y,
screen_logical_dots_per_inch,
screen_device_pixel_ratio,
screen_available_size,
screen_virtual_size,
screen_available_virtual_size,
screen_primary_orientation,
screen_angle_between,
screen_is_landscape,
screen_refresh_rate,
};
struct RUScreenAllFuncs s_screen_all_funcs = {
&s_screen_funcs,
};