Code: Select all
void createParametersPanelWindow(gui::IGUIEnvironment* env, u16 params_num)
{
gui::IGUISkin* skin = env->getSkin();
for (s32 i = 0; i < gui::EGDC_COUNT; i++)
{
video::SColor color = skin->getColor((gui::EGUI_DEFAULT_COLOR)i);
color.setAlpha(255);
skin->setColor((gui::EGUI_DEFAULT_COLOR)i, color);
}
gui::GUIScrollPane* params_pane = new gui::GUIScrollPane(env, env->getRootGUIElement(), core::recti(
core::vector2di(wnd_size.Width-wnd_size.Width/4, 0),
core::dimension2di(wnd_size.Width/4, wnd_size.Height)
), 1);
params_pane->showVerticalScrollBar(true);
params_pane->showHorizontalScrollBar(false);
params_pane->updateAbsolutePosition();
core::recti params_wnd_pos = params_pane->getAbsolutePosition();
core::dimension2di size = params_wnd_pos.getSize();
gui::IGUIStaticText* gravity_st = env->addStaticText(L"Gravity:", core::recti(
core::vector2di(size.Width/6, wnd_size.Height/12),
core::dimension2di(size.Width, wnd_size.Height)
), false, false, params_pane, 3);
s32 cur_height = gravity_st->getTextHeight();
core::recti gravity_st_p = gravity_st->getRelativePosition();
core::dimension2di gravity_st_s = gravity_st_p.getSize();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(gravity_st->getTextWidth()*3, wnd_size.Height/24)
), true, gravity_st, 4);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* original_l_st = env->addStaticText(L"Original Length:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 5);
cur_height += original_l_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(original_l_st->getTextWidth()*2, wnd_size.Height/24)
), true, gravity_st, 6);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* mass_st = env->addStaticText(L"Mass:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 7);
cur_height += mass_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(mass_st->getTextWidth()*3, wnd_size.Height/24)
), true, gravity_st, 8);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* elasticity_st = env->addStaticText(L"Elasticity:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 9);
cur_height += elasticity_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(elasticity_st->getTextWidth()*3, wnd_size.Height/24)
), true, gravity_st, 10);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* air_resist_st = env->addStaticText(L"Air resistance coefficient:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 11);
cur_height += air_resist_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(air_resist_st->getTextWidth()*2, wnd_size.Height/24)
), true, gravity_st, 12);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* string_friction_st = env->addStaticText(L"String friction coefficient:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 13);
cur_height += string_friction_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(string_friction_st->getTextWidth()*2, wnd_size.Height/24)
), true, gravity_st, 13);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* original_start_ang_st = env->addStaticText(L"Original start angle:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 14);
cur_height += original_start_ang_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(original_start_ang_st->getTextWidth()*2, wnd_size.Height/24)
), true, gravity_st, 15);
cur_height += wnd_size.Height/24 + wnd_size.Height/12;
gui::IGUIStaticText* pos_st = env->addStaticText(L"Position:", core::recti(
core::vector2di(0, cur_height),
core::dimension2di(size.Width, wnd_size.Height/24)
), false, false, gravity_st, 16);
cur_height += pos_st->getTextHeight();
env->addEditBox(0, core::recti(
core::vector2di(0, cur_height),
core::dimension2di(original_start_ang_st->getTextWidth()*2, wnd_size.Height/24)
), true, gravity_st, 15);
}