rute 0.0.4

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

#include <stdbool.h>
#include <stdint.h>

#include "../rute_base.h"

#ifdef __cplusplus
extern "C" {
#endif
#include "layout_ffi.h"
#include "size_ffi.h"
#include "spacer_item_ffi.h"
#include "widget_ffi.h"

struct RULayoutItemFuncs;
struct RULayoutItem;

typedef struct RULayoutItemFuncs {
    struct RUSize (*size_hint)(struct RUBase* self_c);
    struct RUSize (*minimum_size)(struct RUBase* self_c);
    struct RUSize (*maximum_size)(struct RUBase* self_c);
    int (*expanding_directions)(struct RUBase* self_c);
    bool (*is_empty)(struct RUBase* self_c);
    bool (*has_height_for_width)(struct RUBase* self_c);
    int (*height_for_width)(struct RUBase* self_c, int arg0);
    int (*minimum_height_for_width)(struct RUBase* self_c, int arg0);
    void (*invalidate)(struct RUBase* self_c);
    struct RUWidget (*widget)(struct RUBase* self_c);
    struct RULayout (*layout)(struct RUBase* self_c);
    struct RUSpacerItem (*spacer_item)(struct RUBase* self_c);
    int (*alignment)(struct RUBase* self_c);
    void (*set_alignment)(struct RUBase* self_c, int a);
} RULayoutItemFuncs;

typedef struct RULayoutItemAllFuncs {
    struct RULayoutItemFuncs* layout_item_funcs;
} RULayoutItemAllFuncs;

typedef struct RULayoutItem {
    RUBase* qt_data;
    RUBase* host_data;
    struct RULayoutItemAllFuncs* all_funcs;
} RULayoutItem;

extern RULayoutItemFuncs s_layout_item_funcs;
extern RULayoutItemAllFuncs s_layout_item_all_funcs;

#ifdef __cplusplus
}
#endif