@@ -85,6 +85,44 @@ void tab::on_pressed_change()
8585 this ->nine_patch_toggle ::on_pressed_change ();
8686}
8787
88+ tab::tab (
89+ utki::shared_ref<ruis::context> context, //
90+ all_parameters params,
91+ utki::span<const utki::shared_ref<ruis::widget>> children
92+ ) :
93+ widget(
94+ std::move (context), //
95+ std::move(params.layout_params),
96+ std::move(params.widget_params)
97+ ),
98+ button(this ->context, ruis::button::parameters{}),
99+ toggle_button(this ->context),
100+ choice_button(this ->context),
101+ nine_patch_toggle(
102+ this ->context,
103+ std::move (params.container_params),
104+ std::move(params.button_params),
105+ std::move(params.blending_params),
106+ std::move(params.nine_patch_params),
107+ std::move(params.nine_patch_button_params),
108+ children
109+ )
110+ {
111+ if (!this ->get_pressed_nine_patch ()) {
112+ this ->set_pressed_nine_patch (
113+ this ->context .get ().loader .load <res::nine_patch>(" ruis_npt_tab_active" ).to_shared_ptr ()
114+ );
115+ }
116+ if (!this ->get_unpressed_nine_patch ()) {
117+ this ->set_unpressed_nine_patch (
118+ this ->context .get ().loader .load <res::nine_patch>(" ruis_npt_tab_inactive" ).to_shared_ptr ()
119+ );
120+ }
121+
122+ // initialize nine-patch
123+ this ->tab ::on_pressed_change ();
124+ }
125+
88126tab::tab (const utki::shared_ref<ruis::context>& c, const tml::forest& desc) :
89127 widget(c, desc),
90128 button(this ->context, desc),
0 commit comments