MCPcopy Create free account
hub / github.com/OGRECave/ogre / setupControls

Method setupControls

Samples/Simple/src/MeshLod.cpp:69–129  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

67}
68
69void Sample_MeshLod::setupControls( int uimode /*= 0*/ )
70{
71 cleanupControls();
72
73 SelectMenu* models = mTrayMgr->createLongSelectMenu(TL_TOPLEFT, "cmbModels", "Model:", 150, 8);
74 models->addItem("Sinbad.mesh");
75 models->addItem("ogrehead.mesh");
76 models->addItem("knot.mesh");
77 models->addItem("fish.mesh");
78 models->addItem("penguin.mesh");
79 models->addItem("ninja.mesh");
80 models->addItem("dragon.mesh");
81 models->addItem("athene.mesh");
82 models->addItem("sibenik.mesh");
83
84 // Add all meshes from popular:
85 StringVectorPtr meshes = ResourceGroupManager::getSingleton().findResourceNames("General", "*.mesh");
86 StringVector::iterator it, itEnd;
87 it = meshes->begin();
88 itEnd = meshes->end();
89 for(; it != itEnd; it++){
90 models->addItem(*it);
91 }
92
93
94 // Basic options:
95 mWireframe = mTrayMgr->createCheckBox(TL_TOPLEFT, "chkShowWireframe", "Show wireframe", 200);
96 mUseVertexNormals = mTrayMgr->createCheckBox(TL_TOPLEFT, "chkUseVertexNormals", "Use vertex normals", 200);
97 mOutsideWeightSlider = mTrayMgr->createThickSlider(TL_TOPLEFT, "sldOutsideWeight", "Weighten outside", 200, 50, 0, 100, 101);
98 mOutsideWalkAngle = mTrayMgr->createThickSlider(TL_TOPLEFT, "sldOutsideWalkAngle", "Outside angle", 200, 50, -1, 1, 201);
99 mManualMeshes = mTrayMgr->createLongSelectMenu(TL_TOPLEFT, "cmbManualMesh", "Manual LOD:", 100, 8);
100 mManualMeshes->copyItemsFrom(models);
101 mManualMeshes->insertItem(0,"");
102 mReductionSlider = mTrayMgr->createThickSlider(TL_TOPLEFT, "sldReductionValue", "Reduced vertices", 200, 50, 0, 100, 101);
103 mTrayMgr->createButton(TL_TOPLEFT, "btnReduceMore","Reduce More");
104 mTrayMgr->createButton(TL_TOPLEFT, "btnReduceLess","Reduce Less");
105
106 // Level options:
107 mDistanceLabel = mTrayMgr->createLabel(TL_TOPRIGHT, "lblDistance", "Distance: ", 250);
108 mLodLevelList = mTrayMgr->createLongSelectMenu(TL_TOPRIGHT, "cmbLodLevels", "Lod level:", 150, 4);
109 mTrayMgr->createButton(TL_TOPRIGHT, "btnAddLodLevel","Add level", 220);
110 mTrayMgr->createButton(TL_TOPRIGHT, "btnRemoveSelectedLodLevel","Remove level", 220);
111 mTrayMgr->createButton(TL_TOPRIGHT, "btnRemoveInitialLodLevel","Remove level #0", 220);
112
113 // Serializer options:
114 mTrayMgr->createButton(TL_TOPRIGHT, "btnShowAll", "Show all levels", 220);
115 mTrayMgr->createButton(TL_TOPRIGHT, "btnAutoconfigure", "Show autoconfigured LODs", 220);
116 mTrayMgr->createButton(TL_TOPRIGHT, "btnShowMesh", "Show LODs stored in mesh", 220);
117 mTrayMgr->createButton(TL_TOPRIGHT, "btnSaveMesh", "Save mesh", 220);
118 mTrayMgr->createButton(TL_TOPRIGHT, "btnRestoreMesh", "Restore original mesh", 220);
119
120 // Profile options
121 mProfileList = mTrayMgr->createLongSelectMenu(TL_TOPRIGHT, "cmbProfiledVertices", "Profile:", 180, 4);
122 mTrayMgr->createButton(TL_TOPRIGHT, "btnRemoveFromProfile","Remove from profile", 220.0);
123 mTrayMgr->createButton(TL_TOPRIGHT, "btnAddToProfile","Add to profile", 220.0);
124
125 //mTrayMgr->createTextBox(TL_TOPRIGHT, "Help","Help", 200, 200)
126 // ->setText("The last reduced vertex is the selected vertex. Use the slider to select the vertex, then decide to keep or remove it. You can export the Lod buffers into the .mesh file after configuration.");

Callers

nothing calls this directly

Calls 11

createLongSelectMenuMethod · 0.80
addItemMethod · 0.80
findResourceNamesMethod · 0.80
createCheckBoxMethod · 0.80
createThickSliderMethod · 0.80
copyItemsFromMethod · 0.80
createButtonMethod · 0.80
createLabelMethod · 0.80
showCursorMethod · 0.80
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected