Ed_
40ffed9538
I now generate the layout the compiler wants, eventually I'll just have a custom policy so that the compiler can accept the non-idiomatic layout See scripts/build.ps1 & gen_staged_compiler_codebase.ps1 for how this is handled.
38 lines
866 B
Odin
38 lines
866 B
Odin
package sectr
|
|
|
|
UI_ThemePtr :: struct {
|
|
layout : ^UI_LayoutCombo,
|
|
style : ^UI_StyleCombo,
|
|
}
|
|
|
|
UI_Theme :: struct {
|
|
layout : UI_LayoutCombo,
|
|
style : UI_StyleCombo,
|
|
}
|
|
|
|
ui_theme_pop :: #force_inline proc() {
|
|
ui_layout_pop()
|
|
ui_style_pop()
|
|
}
|
|
|
|
@(deferred_none = ui_theme_pop)
|
|
ui_theme_via_layout_style :: #force_inline proc( layout : UI_Layout, style : UI_Style ) {
|
|
using ui := get_state().ui_context
|
|
ui_layout_push( layout )
|
|
ui_style_push( style )
|
|
}
|
|
|
|
@(deferred_none = ui_theme_pop)
|
|
ui_theme_via_combos :: #force_inline proc( layout : UI_LayoutCombo, style : UI_StyleCombo ) {
|
|
using ui := get_state().ui_context
|
|
ui_layout_push( layout )
|
|
ui_style_push( style )
|
|
}
|
|
|
|
@(deferred_none = ui_theme_pop)
|
|
ui_theme_via_theme :: #force_inline proc( theme : UI_Theme ) {
|
|
using ui := get_state().ui_context
|
|
ui_layout_push( theme.layout )
|
|
ui_style_push( theme.style )
|
|
}
|