Brainview::Brainview() { critterselection = Critterselection::Instance(); brain_maxfiringthreshold = settings->getCVarPtr("brain_maxfiringthreshold"); active = false; isMovable = true; rowlength = 37; v_radius = 2; v_diam = 2*v_radius; spacing = 3; int brainview_width = 20 + ((v_diam+spacing) * settings->getCVar("critter_retinasize") * 4); if ( brainview_width < 400 ) brainview_width = 400; int brainview_height = 20 + ((v_diam+spacing) * 40); if ( brainview_height < 400 ) brainview_height = 400; v_width = 20 + brainview_width; v_height = 80 + brainview_height; int buttons_starty = v_height - brainview_height - 10; int brainview_starty = buttons_starty; position.x = 10; position.y = 50; currentCritter = 0; // view widgets // viewbutton = addWidgetButton( "bv_view", Vector2i(0+v_width-60, 35), Vector2i(50, 50), "", Vector2i(0, 0), cmd.gen(""), 0, 0, 0 ); brainview = addWidgetButton( "bv_bview", Vector2i(10, brainview_starty), Vector2i(brainview_width, brainview_height), "", Vector2i(0, 0), cmd.gen(""), 0, 0, 0 ); children["bv_bview"]->isTransparant = false; addWidgetButton( "bv_close", Vector2i(v_width-25, 10), Vector2i(15, 15), "x", cmd.gen("gui_togglepanel", "brainview"), 0, 0, 0 ); settings->registerLocalCVar("attract neurons", 100, 0, 1000000, false, "attract neurons"); addSettingmutator("attract neurons", 10, 10); settings->registerLocalCVar("repel neurons", 100, 0, 1000000, false, "repel neurons"); addSettingmutator("repel neurons", 10, 22); settings->registerLocalCVar("attract neuron inputs", 100, 0, 1000000, false, "attract neuron<>inputs"); addSettingmutator("attract neuron inputs", 10, 36); settings->registerLocalCVar("repel neuron inputs", 100, 0, 1000000, false, "repel neuron<>inputs"); addSettingmutator("repel neuron inputs", 10, 48); attractor1 = settings->getCVarPtr("attract neurons"); attractor2 = settings->getCVarPtr("attract neuron inputs"); attractor3 = settings->getCVarPtr("repel neurons"); attractor4 = settings->getCVarPtr("repel neuron inputs"); }
void Settingspanel::addSettingmutator( const std::string& name, unsigned int posx, unsigned int posy ) { std::string str(name); std::string strval = str; std::string strdec = str; std::string strinc = str; strval.append("val"); strdec.append("dec"); strinc.append("inc"); addWidget(str, Vector2i(posx+col1+m_margin, posy+row+9), BeWidgetTextPtr(new BeWidgetText(name))); // addWidgetText( str, posx+col1, posy+row+9, name ); addWidget(strval, Vector2i(posx+col2+m_margin, posy+row+9), BeWidgetTextCVARuintPtr(new BeWidgetTextCVARuint(settings->getCVarPtr(name)))); // addWidgetText( strval, posx+col2, posy+row+9, settings->getCVarPtr(name) ); addWidgetButton( strdec, Vector2i(posx+col3+m_margin, posy+row), Vector2i(11, 10), "-", Vector2i(3, 8), BeCommand("settings_decrease", name), EVENT_REPEAT, m_time_interval ); addWidgetButton( strinc, Vector2i(posx+col3+m_button_margin+m_margin, posy+row), Vector2i(11, 10), "+", Vector2i(1, 8), BeCommand("settings_increase", name), EVENT_REPEAT, m_time_interval ); row += rowspacer; }
Enginesettingspanel::Enginesettingspanel() { isMovable = true; rowspacer = 15; col2 = 150; col3 = 200; m_localposition.set(2, 24); // FIXME camera sensitivity is missing #if defined(HAVE_OPENMP) addSettingmutator("threads", 0, 0); #endif addSettingmutator("fsX", 0, 0); addSettingmutator("fsY", 0, 0); addSettingmutator("fpslimit_frames", 0, 0); addSettingcheckbox("fpslimit", 0, 0); addSettingcheckbox("drawscene", 0, 0); addSettingcheckbox("glsl", 0, 0); addSettingcheckbox("hdr", 0, 0); // addSettingcheckbox("drawshadows", 0, 0); addSettingcheckbox("window_fullscreen", 0, 0); addSettingmutator("camerasensitivity_move", 0, 0); addSettingmutator("camerasensitivity_look", 0, 0); addSettingmutator("camera_smoothfactor", 0, 0); // addSettingcheckbox("sound", 0, 0); m_dimensions.set(col3 + 50,row-rowspacer+10+10); BeWidgetPtr w = addWidgetButton( "enginesettingspanel_close", Vector2i(2, 2), Vector2i(11, 11), "x", BeCommand("gui_togglepanel", "enginesettingspanel"), EVENT_NOREPEAT, 0 ); w->isAlignedRight = true; }
Settingslightpanel::Settingslightpanel() { isMovable = true; m_localposition.set(2, 24); col2 = 200; col3 = 250; addSettingmutator("light_ambient_modelR", 0, 0); addSettingmutator("light_ambient_modelG", 0, 0); addSettingmutator("light_ambient_modelB", 0, 0); row+=8; addSettingmutator("light_ambientR", 0, 0); addSettingmutator("light_ambientG", 0, 0); addSettingmutator("light_ambientB", 0, 0); row+=8; addSettingmutator("light_diffuseR", 0, 0); addSettingmutator("light_diffuseG", 0, 0); addSettingmutator("light_diffuseB", 0, 0); row+=8; addSettingmutator("light_specularR", 0, 0); addSettingmutator("light_specularG", 0, 0); addSettingmutator("light_specularB", 0, 0); row+=8; addSettingmutator("light_attenuation_constant", 0, 0); addSettingmutator("light_attenuation_linear", 0, 0); addSettingmutator("light_attenuation_quadratic", 0, 0); m_dimensions.set(col3 + 50, row-rowspacer+10+10); // 10 = height of 1 line, 10 = horizontal margin BeWidgetPtr w = addWidgetButton( "settingslightpanel_close", Vector2i(2, 2), Vector2i(12, 12), "x", BeCommand("gui_togglepanel", "settingslightpanel"), EVENT_NOREPEAT, 0 ); w->isAlignedRight = true; }