rute 0.0.4

UI library implemented on top of Qt
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// This file is auto-generated by rute_gen. DO NOT EDIT
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include "../rute_base.h"
#include "../rute_manual.h"
#include <QBackingStore>
#include "backing_store_ffi.h"

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static void backing_store_flush(struct RUBase* self_c, struct RUBase* region, struct RUBase* window, struct RUBase* offset) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    qt_value->flush(*((QRegion*)region), (QWindow*)window, *((QPoint*)offset));
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static void backing_store_resize(struct RUBase* self_c, struct RUBase* size) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    qt_value->resize(*((QSize*)size));
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static struct RUSize backing_store_size(struct RUBase* self_c) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    auto ret_value = qt_value->size();
    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 bool backing_store_scroll(struct RUBase* self_c, struct RUBase* area, int dx, int dy) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    auto ret_value = qt_value->scroll(*((QRegion*)area), dx, dy);
    return ret_value;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static void backing_store_begin_paint(struct RUBase* self_c, struct RUBase* arg0) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    qt_value->beginPaint(*((QRegion*)arg0));
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static void backing_store_end_paint(struct RUBase* self_c) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    qt_value->endPaint();
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static void backing_store_set_static_contents(struct RUBase* self_c, struct RUBase* region) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    qt_value->setStaticContents(*((QRegion*)region));
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static struct RURegion backing_store_static_contents(struct RUBase* self_c) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    auto ret_value = qt_value->staticContents();
    WRRegion* new_val = new WRRegion();
    *new_val = ret_value;
    struct RURegion ctl;
    ctl.qt_data = (struct RUBase*)new_val;
    ctl.host_data = (struct RUBase*)s_host_data_lookup[(void*)new_val];
    ctl.all_funcs = &s_region_all_funcs;
    return ctl;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static bool backing_store_has_static_contents(struct RUBase* self_c) {
    QBackingStore* qt_value = (QBackingStore*)self_c;
    auto ret_value = qt_value->hasStaticContents();
    return ret_value;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

struct RUBackingStoreFuncs s_backing_store_funcs = {
    backing_store_flush,
    backing_store_resize,
    backing_store_size,
    backing_store_scroll,
    backing_store_begin_paint,
    backing_store_end_paint,
    backing_store_set_static_contents,
    backing_store_static_contents,
    backing_store_has_static_contents,
};

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

struct RUBackingStoreAllFuncs s_backing_store_all_funcs = {
    &s_backing_store_funcs,
};