|
Defines |
|
#define | I_STRUCT_OFFSET IG_STRUCT + GO_SUBTYPE_ID |
|
#define | PTU_UNSPECIFIED_TYPE PT_UNS |
|
#define | PTU_COLOR_TYPE PT_UNS |
|
#define | PTU_FONT_TYPE PT_UNS |
|
#define | PTU_CONIC_TYPE_0P_TYPE PT_UNS |
|
#define | PTU_CONIC_TYPE_1P_TYPE PT_UNS |
|
#define | PTU_CONIC_TYPE_2P_TYPE PT_UNS |
|
#define | PTU_CONIC_TYPE_3P_TYPE PT_UNS |
|
#define | PTU_BOOLEAN_TYPE PT_UNS |
|
#define | PTU_CAP_STYLE_TYPE PT_UNS |
|
#define | PTU_JOIN_STYLE_TYPE PT_UNS |
|
#define | PTU_STROKE_STYLE_TYPE PT_UNS |
|
#define | PTU_ALIGNMENT_X_TYPE PT_UNS |
|
#define | PTU_ALIGNMENT_Y_TYPE PT_UNS |
|
#define | PTU_ARROW_FRONT_TYPE PT_UNS |
|
#define | PTU_ARROW_BACK_TYPE PT_UNS |
|
#define | PTU_ARROW_ALIGN_TYPE PT_UNS |
|
#define | PTP_UNSPECIFIED_TYPE PT_POINTER |
|
#define | PTP_TRANSFORM_TYPE PT_POINTER |
|
#define | PTP_TEX_PROCESS_TYPE PT_POINTER |
|
#define | PTS_UNSPECIFIED_TYPE PT_STRING |
|
#define | PTS_FILE_NAME_TYPE PT_STRING |
|
#define | PTS_LARGE_TEXT_TYPE PT_STRING |
|
#define | PTR_UNSPECIFIED_TYPE PT_REAL |
|
#define | PTR_POSITIVE_TYPE PT_REAL |
|
#define | PTR_COORDINATE_TYPE PT_REAL |
|
#define | PTR_LENGTH_TYPE PT_REAL |
|
#define | PTR_ANGLE_PI_TYPE PT_REAL |
|
#define | PTR_ANGLE_2PI_TYPE PT_REAL |
|
#define | PTR_ANGLE_4PI_TYPE PT_REAL |
|
#define | PTR_REFERENCE_TYPE PT_REAL |
|
#define | PTU_UNSPECIFIED_UNION u |
|
#define | PTU_COLOR_UNION u |
|
#define | PTU_FONT_UNION u |
|
#define | PTU_CONIC_TYPE_0P_UNION u |
|
#define | PTU_CONIC_TYPE_1P_UNION u |
|
#define | PTU_CONIC_TYPE_2P_UNION u |
|
#define | PTU_CONIC_TYPE_3P_UNION u |
|
#define | PTU_BOOLEAN_UNION u |
|
#define | PTU_CAP_STYLE_UNION u |
|
#define | PTU_JOIN_STYLE_UNION u |
|
#define | PTU_STROKE_STYLE_UNION u |
|
#define | PTU_ALIGNMENT_X_UNION u |
|
#define | PTU_ALIGNMENT_Y_UNION u |
|
#define | PTU_ARROW_FRONT_UNION u |
|
#define | PTU_ARROW_BACK_UNION u |
|
#define | PTU_ARROW_ALIGN_UNION u |
|
#define | PTP_UNSPECIFIED_UNION v |
|
#define | PTP_TRANSFORM_UNION t |
|
#define | PTP_TEX_PROCESS_UNION v |
|
#define | PTS_UNSPECIFIED_UNION s |
|
#define | PTS_FILE_NAME_UNION s |
|
#define | PTS_LARGE_TEXT_UNION s |
|
#define | PTR_UNSPECIFIED_UNION r |
|
#define | PTR_POSITIVE_UNION r |
|
#define | PTR_COORDINATE_UNION r |
|
#define | PTR_LENGTH_UNION r |
|
#define | PTR_ANGLE_PI_UNION r |
|
#define | PTR_ANGLE_2PI_UNION r |
|
#define | PTR_ANGLE_4PI_UNION r |
|
#define | PTR_REFERENCE_UNION r |
|
#define | PROP_TYPE(_prop_subtype) GLUEE(_prop_subtype, _TYPE) |
| | Generates typ of property for given subtype of property.
|
|
#define | PROP_UNION(_prop_subtype) GLUEE(_prop_subtype, _UNION) |
| | Generates variable in enum prop_value for given subtype of property.
|
|
#define | PSTRUCT_SID(_name, _sid) GLUEE3(GO_SUBNAME(GO_ID, _sid), _prop_, _name) |
| | Name of structure of property.
|
|
#define | PSTRUCT(_name) PSTRUCT_SID(_name, GO_SUBID) |
| | Name of structure of property.
|
|
#define | PGET(_name) GLUEE4(GO_SUBNAME_ID, _prop_, _name, _get) |
| | Name of function which returns value of property.
|
|
#define | PSET(_name) GLUEE4(GO_SUBNAME_ID, _prop_, _name, _set) |
| | Name of function which tries to change value of property.
|
|
#define | PLOW(_name) GLUEE4(GO_SUBNAME_ID, _prop_, _name, _set_low) |
| | Name of function which changes value of property; called only by undo.
|
|
#define | PGETU(_name) GLUEE4(GO_SUBNAME_ID, _prop_, _name, _get_unit) |
| | Name of function which returns unit of property.
|
|
#define | PSETU(_name) GLUEE4(GO_SUBNAME_ID, _prop_, _name, _set_unit) |
| | Name of function which changes unit of property.
|
|
#define | PINIT(_sid) GLUEE(GO_SUBNAME(GO_ID, _sid), _virtual_prop_init) |
| | Name of function which initialises property.
|
|
#define | PFINISH(_sid) GLUEE(GO_SUBNAME(GO_ID, _sid), _virtual_prop_finish) |
| | Name of function which destroys property.
|
| #define | PROP_VIRTUAL() |
| | Generates functions for initialising and destroying list of virtual properties.
|
| #define | PROP_GET(_name, _var, _prop_subtype) |
| | Generates function which returns value _var of property _name.
|
|
#define | RECOMPUTE_CHANGED tsort_dirty_recompute(&g->go) |
|
#define | RECOMPUTE_ALTERED go_altered(&g->go) |
| #define | PROP_SET(_name, _var, _prop_subtype, _cond, _msg, _recomp) |
| | Generates function which changes value _var of property _name and writes the change into undo history and calls recompute _recomp if condition _cond holds; otherwise calls trans_fail with message _msg.
|
| #define | PROP_SET_READ(_name) |
| | Read-only property is not possible to change so only trans_fail is called.
|
| #define | PROP_SET_REHANG_X(_name, _var, _anchor, _msg) |
| | Generates function which change X-coordinate of anchor. Property _name corresponds to position of anchor _anchor and the function rehangs the anchor if it hangs on mouse-click; otherwise calls trans_fail with message _msg.
|
| #define | PROP_SET_REHANG_Y(_name, _var, _anchor, _msg) |
| | Generates function which change Y-coordinate of anchor. Property _name corresponds to position of anchor _anchor and the function rehangs the anchor if it hangs on mouse-click; otherwise calls trans_fail with message _msg.
|
| #define | PROP_SET_BOOLEAN(_name, _var, _mask, _recomp) |
| | Like macro PROP_SET but specialised for boolean variables stored in flags of graphic object,.
|
| #define | PROP_SET_LOW(_name, _var, _prop_subtype) |
| | Generates function that changes value of property; function is called only by undo.
|
| #define | PROP_SET_LOW_BOOLEAN(_name, _var, _mask) |
| | Like macro PROP_SET_LOW but specialised for boolean variables stored in flags of graphic object,.
|
| #define | PROP_SET_LOW_DIE(_name,) |
| | Undo never change this property.
|
| #define | PROP_UNIT_GET(_name, _var) |
| | Generates function which returns unit of property.
|
| #define | PROP_UNIT_GET_DIE(_name) |
| | Given property has not a unit.
|
| #define | PROP_UNIT_SET(_name, _var) |
| | Generates function which changes unit of property.
|
| #define | PROP_UNIT_SET_DIE(_name) |
| | Given property has not a unit.
|
| #define | PROP_STRUCT(_name, _next, _prop_subtype, _flags, _undo_mask) |
| | Generates structure of property.
|
| #define | PROP_ALL_WITHOUT_SET(_name, _next, _prop_subtype, _var, _low, _flags, _undo_mask) |
| | Generates structure of property and functions which returns and changes unit and returns value and undo's changes.
|
| #define | PROP_ALL(_name, _next, _prop_subtype, _var, _cond, _msg, _recomp, _low, _flags, _undo_mask) |
| | Generates structure of property and all functions for manipulation with property.
|
| #define | PROP_ALL_REHANG(_name, _next, _var, _anchor, _msg, _flags) |
| | Generates two property which correspond to X and Y coordinate of anchor.
|
| #define | PROP_ALL_READ(_name, _next, _prop_subtype, _var, _flags, _undo_mask) |
| | Generates function for obtaining value of read only property.
|
| #define | PROP_ALL_WITHOUT_UNIT_AND_SET(_name, _next, _prop_subtype, _var, _low, _flags, _undo_mask) |
| | Like PROP_ALL_WITHOUT_SET but for property which has not unit.
|
| #define | PROP_ALL_WITHOUT_UNIT(_name, _next, _prop_subtype, _var, _cond, _msg, _recomp, _low, _flags, _undo_mask) |
| | Like PROP_ALL but for property which has not unit.
|
| #define | PROP_ALL_BOOLEAN(_name, _next, _var, _mask, _recomp, _flags, _undo_mask) |
| | Like PROP_ALL but for boolean property.
|
| #define | IG_STRUCT_FCE(_name, _struct, _init, _finish, _subgo_count) |
| #define | IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) |
|
#define | IG_STRUCT_1(_sid, _name, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) |
|
#define | IG_STRUCT_2(_sid, _name, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp,) IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) IG_STRUCT_1(__VA_ARGS__) |
|
#define | IG_STRUCT_3(_sid, _name, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp,) IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) IG_STRUCT_2(__VA_ARGS__) |
|
#define | IG_STRUCT_4(_sid, _name, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp,) IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) IG_STRUCT_3(__VA_ARGS__) |
|
#define | IG_STRUCT_5(_sid, _name, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp,) IG_STRUCT_ONE(_sid, _hc, _curve, _hstart_, _hend, _center, _ac, _astart, _aend, _vp) IG_STRUCT_4(__VA_ARGS__) |
|
#define | IG_INIT_ONE(_sid, _name) IG_STRUCT[GO_SUBTYPE(GO_ID, _sid)].name = string_lookup_ref(_name); IH_INIT(_sid)(); IA_INIT(_sid)(); PINIT(_sid)(); |
|
#define | IG_INIT_1(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp) IG_INIT_ONE(_sid, _name) |
|
#define | IG_INIT_2(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_INIT_ONE(_sid, _name) IG_INIT_1(__VA_ARGS__) |
|
#define | IG_INIT_3(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_INIT_ONE(_sid, _name) IG_INIT_2(__VA_ARGS__) |
|
#define | IG_INIT_4(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_INIT_ONE(_sid, _name) IG_INIT_3(__VA_ARGS__) |
|
#define | IG_INIT_5(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_INIT_ONE(_sid, _name) IG_INIT_4(__VA_ARGS__) |
|
#define | IG_FINISH_ONE(_sid) PFINISH(_sid) (); |
|
#define | IG_FINISH_1(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp) IG_FINISH_ONE(_sid) |
|
#define | IG_FINISH_2(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_FINISH_ONE(_sid) IG_FINISH_1(__VA_ARGS__) |
|
#define | IG_FINISH_3(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_FINISH_ONE(_sid) IG_FINISH_2(__VA_ARGS__) |
|
#define | IG_FINISH_4(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_FINISH_ONE(_sid) IG_FINISH_3(__VA_ARGS__) |
|
#define | IG_FINISH_5(_sid, _name, _hc, _curve, _hstart, _hend, _center, _ac, _astart, _aend, _vp,) IG_FINISH_ONE(_sid) IG_FINISH_4(__VA_ARGS__) |
|
#define | IH_STRUCT_FCE(_struct, _fce) static struct hanger_info IH_STRUCT_ID[] = { _struct }; static void IH_INIT_ID(void) { _fce } |
| #define | IH_STRUCT_ONE(_i, _q, _var, _get, _lin) |
|
#define | IH_STRUCT_1(_i, _n, _q, _var, _get, _lin) IH_STRUCT_ONE(_i, _q, _var, _get, _lin) |
|
#define | IH_STRUCT_2(_i, _n, _q, _var, _get, _lin,) IH_STRUCT_ONE(_i, _q, _var, _get, _lin) IH_STRUCT_1(_i + 1, __VA_ARGS__) |
|
#define | IH_STRUCT_3(_i, _n, _q, _var, _get, _lin,) IH_STRUCT_ONE(_i, _q, _var, _get, _lin) IH_STRUCT_2(_i + 1, __VA_ARGS__) |
|
#define | IH_STRUCT_4(_i, _n, _q, _var, _get, _lin,) IH_STRUCT_ONE(_i, _q, _var, _get, _lin) IH_STRUCT_3(_i + 1, __VA_ARGS__) |
|
#define | IH_FCE_ONE(_i, _n) IH_STRUCT_ID[_i].name = string_lookup_ref(_n); glt_kernel_init_hanger(&IH_STRUCT_ID[_i]); |
|
#define | IH_FCE_1(_i, _n, _q, _var, _get, _lin) IH_FCE_ONE(_i, _n) |
|
#define | IH_FCE_2(_i, _n, _q, _var, _get, _lin,) IH_FCE_ONE(_i, _n) IH_FCE_1(_i + 1, __VA_ARGS__) |
|
#define | IH_FCE_3(_i, _n, _q, _var, _get, _lin,) IH_FCE_ONE(_i, _n) IH_FCE_2(_i + 1, __VA_ARGS__) |
|
#define | IH_FCE_4(_i, _n, _q, _var, _get, _lin,) IH_FCE_ONE(_i, _n) IH_FCE_3(_i + 1, __VA_ARGS__) |
|
#define | IA_STRUCT_FCE(_struct, _fce) static struct anchor_info IA_STRUCT_ID[] = { _struct }; static void IA_INIT_ID (void) { _fce } |
|
#define | IA_STRUCT_ONE(_i, _q, _lin) { NULL, _q, OFFSETOF(GO_STRUCT_ID, a[_i]), I_STRUCT_OFFSET, _lin }, |
|
#define | IA_STRUCT_1(_i, _n, _q, _lin) IA_STRUCT_ONE(_i, _q, _lin) |
|
#define | IA_STRUCT_2(_i, _n, _q, _lin,) IA_STRUCT_ONE(_i, _q, _lin) IA_STRUCT_1(_i + 1, __VA_ARGS__) |
|
#define | IA_STRUCT_3(_i, _n, _q, _lin,) IA_STRUCT_ONE(_i, _q, _lin) IA_STRUCT_2(_i + 1, __VA_ARGS__) |
|
#define | IA_STRUCT_4(_i, _n, _q, _lin,) IA_STRUCT_ONE(_i, _q, _lin) IA_STRUCT_3(_i + 1, __VA_ARGS__) |
|
#define | IA_FCE_ONE(_i, _n) IA_STRUCT_ID[_i].name = string_lookup_ref(_n); glt_kernel_init_anchor(&IA_STRUCT_ID[_i]); |
|
#define | IA_FCE_1(_i, _n, _q, _lin) IA_FCE_ONE(_i, _n) |
|
#define | IA_FCE_2(_i, _n, _q, _lin,) IA_FCE_ONE(_i, _n) IA_FCE_1(_i + 1, __VA_ARGS__) |
|
#define | IA_FCE_3(_i, _n, _q, _lin,) IA_FCE_ONE(_i, _n) IA_FCE_2(_i + 1, __VA_ARGS__) |
|
#define | IA_FCE_4(_i, _n, _q, _lin,) IA_FCE_ONE(_i, _n) IA_FCE_3(_i + 1, __VA_ARGS__) |
|
#define | MSG_UNIT(_name) msg("\tunit_" #_name " = %u, %s\n", go->unit_##_name, go->unit_##_name == PROP_UNIT_MAX ? "default unit" : unit_array[go->unit_##_name].name->text) |
|
#define | ASSERT_GO_TYPE_ID(_o) ASSERT_GO_TYPE(_o, GO_ID) |
|
#define | ASSERT_GO_SUBTYPE_ID(_o) ASSERT_GO_SUBTYPE(_o, GO_ID, GO_SUBID) |
| #define | GO_TYPE_SWITCH() |
| #define | GO_SUBTYPE_SWITCH(_id,) |
|
#define | ASSERT_KERNEL() do { } while(0); |
|
#define | ASSERT_KERNEL_SLOW() do { } while(0); |
|
#define | DANGEROUS() do { } while(0) |
|
#define | DBG_O() do { } while(0) |
|
#define | DBG_TSORT() do { } while(0) |
|
#define | DBG_TRANS() do { } while(0) |
|
#define | TRANS_FAIL1() TRANS_FAIL((__VA_ARGS__), (__VA_ARGS__)) |
|
#define | TRANS_FAIL(_release, _debug) trans_fail _release; |
|
#define | ASSERT_META_TRANS ASSERT(trans_present && trans_page == page_universum) |
|
#define | ASSERT_GO_TRANS(_go) ASSERT(trans_present && void2page(trans_page) == ((_go) ? go_get_page(_go) : trans_page)) |
|
#define | ASSERT_O_TRANS(_o) ASSERT(trans_present && void2o(_o)->kind == T_OBJ ? trans_page == page_universum : void2page(trans_page) == go_get_page(o2go(_o))) |
|
#define | ASSERT_GO_TYPE(_o, _id) ASSERT((_o) && ((struct o*)(_o))->kind == T_GO && ((struct o*)(_o))->type == GO_TYPE(_id)) |
| #define | ASSERT_GO_SUBTYPE(_o, _id, _sid) |
|
#define | ASSERT_HANGER(_h) ASSERT((_h) && ((struct hanger*)(_h))->info && hanger_get_go((struct hanger*)(_h))->kind == T_GO) |
|
#define | ASSERT_ANCHOR(_a) ASSERT((_a) && ((struct anchor*)(_a))->info && anchor_get_go((struct anchor*)(_a))->kind == T_GO) |
Following macros must be defined before using those generators. They are defined in kernel/go_internal.h (expect user defined graphic object).