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 "brush_ffi.h"
#include "color_ffi.h"

struct RUPenFuncs;
struct RUPen;

typedef struct RUPenFuncs {
    void (*destroy)(struct RUBase* self);
    void (*swap)(struct RUBase* self_c, struct RUBase* other);
    int (*style)(struct RUBase* self_c);
    void (*set_style)(struct RUBase* self_c, int arg0);
    float (*dash_offset)(struct RUBase* self_c);
    void (*set_dash_offset)(struct RUBase* self_c, float doffset);
    float (*miter_limit)(struct RUBase* self_c);
    void (*set_miter_limit)(struct RUBase* self_c, float limit);
    float (*width_f)(struct RUBase* self_c);
    void (*set_width_f)(struct RUBase* self_c, float width);
    int (*width)(struct RUBase* self_c);
    void (*set_width)(struct RUBase* self_c, int width);
    struct RUColor (*color)(struct RUBase* self_c);
    void (*set_color)(struct RUBase* self_c, struct RUBase* color);
    struct RUBrush (*brush)(struct RUBase* self_c);
    void (*set_brush)(struct RUBase* self_c, struct RUBase* brush);
    bool (*is_solid)(struct RUBase* self_c);
    int (*cap_style)(struct RUBase* self_c);
    void (*set_cap_style)(struct RUBase* self_c, int pcs);
    int (*join_style)(struct RUBase* self_c);
    void (*set_join_style)(struct RUBase* self_c, int pcs);
    bool (*is_cosmetic)(struct RUBase* self_c);
    void (*set_cosmetic)(struct RUBase* self_c, bool cosmetic);
    bool (*is_detached)(struct RUBase* self_c);
} RUPenFuncs;

typedef struct RUPenAllFuncs {
    struct RUPenFuncs* pen_funcs;
} RUPenAllFuncs;

typedef struct RUPen {
    RUBase* qt_data;
    RUBase* host_data;
    struct RUPenAllFuncs* all_funcs;
} RUPen;

extern RUPenFuncs s_pen_funcs;
extern RUPenAllFuncs s_pen_all_funcs;

#ifdef __cplusplus
}
#endif