MCPcopy Create free account
hub / github.com/StereoKit/StereoKit / ui_theming_init

Function ui_theming_init

StereoKitC/ui/ui_theming.cpp:88–262  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

86///////////////////////////////////////////
87
88void ui_theming_init() {
89 skui_tint = { 1,1,1,1 };
90 skui_font_stack = {};
91 skui_tint_stack = {};
92 skui_grab_aura_stack = {};
93 memset(skui_visuals, 0, sizeof(skui_visuals));
94 memset(skui_palette, 0, sizeof(skui_palette));
95 memset(skui_anim_id, 0, sizeof(skui_anim_id));
96 memset(skui_anim_time, 0, sizeof(skui_anim_time));
97
98 ui_set_color(color_hsv(0.07f, 0.5f, 0.75f, 1));
99
100 skui_font_mat = material_find(default_id_material_font);
101 material_set_queue_offset(skui_font_mat, -12);
102 skui_font = font_find(default_id_font);
103 skui_font_stack.add(text_make_style_mat(skui_font, 10 * mm2m, skui_font_mat, {1,1,1,1}));
104
105 // TODO: v0.4, this sets up default values when zeroed out, with a
106 // ui_get_settings, this isn't really necessary anymore!
107 ui_settings_t settings = {};
108 ui_settings(settings);
109
110 // Create default sprites for the toggles
111
112 // #defines because we can't capture anything in these lambdas D:
113 #define OUTER_RADIUS 31
114 #define RING_WIDTH 8
115 #define RADIUS (OUTER_RADIUS - RING_WIDTH)
116 #define INNER_RADIUS (OUTER_RADIUS - RING_WIDTH*2)
117
118 skui_toggle_on = sdf_create_sprite(ui_default_id_spr_toggle_on, 64, 64, [](vec2 pt) {
119 return
120 sdf_union(
121 sdf_box(pt, {INNER_RADIUS, INNER_RADIUS}),
122 sdf_subtract(
123 sdf_box_round(pt, {RADIUS, RADIUS}, 4),
124 sdf_box_round(pt, {OUTER_RADIUS,OUTER_RADIUS}, 8)))/32.0f;
125 }, 40);
126 skui_toggle_off = sdf_create_sprite(ui_default_id_spr_toggle_off, 64, 64, [](vec2 pt) {
127 return
128 sdf_subtract(
129 sdf_box_round(pt, {RADIUS, RADIUS}, 4),
130 sdf_box_round(pt, {OUTER_RADIUS,OUTER_RADIUS}, 8))/32.0f;
131 }, 40);
132 skui_radio_on = sdf_create_sprite(ui_default_id_spr_radio_on, 64, 64, [](vec2 pt) {
133 float dist = vec2_magnitude(pt);
134 return
135 sdf_union(
136 dist - INNER_RADIUS,
137 sdf_subtract(
138 dist - (OUTER_RADIUS - RING_WIDTH),
139 dist - OUTER_RADIUS)) / 32.0f;
140 }, 40);
141 skui_radio_off = sdf_create_sprite(ui_default_id_spr_radio_off, 64, 64, [](vec2 pt) {
142 float dist = vec2_magnitude(pt);
143 return sdf_subtract(dist - (OUTER_RADIUS - RING_WIDTH), dist - OUTER_RADIUS)/32.0f;
144 }, 40);
145

Callers 1

ui_initFunction · 0.85

Calls 15

ui_set_colorFunction · 0.85
color_hsvFunction · 0.85
material_findFunction · 0.85
font_findFunction · 0.85
text_make_style_matFunction · 0.85
ui_settingsFunction · 0.85
sdf_create_spriteFunction · 0.85
sdf_unionFunction · 0.85
sdf_boxFunction · 0.85
sdf_subtractFunction · 0.85
sdf_box_roundFunction · 0.85

Tested by

no test coverage detected