void TerrainLayerDlg::notifyEdit(MyGUI::Widget * _sender) { Terrain * tn = Environment::Instance()->GetTerrain(); if (tn == NULL) return ; size_t isel = mLayerList->getIndexSelected(); if (isel == MyGUI::ITEM_NONE) return ; int layerId = mLayerIds[isel]; const Terrain::Layer * layer = tn->GetLayer(layerId); ShowLayerInfo(layer); }
void TerrainLayerDlg::_AfterLoadScene(Event * sender) { mLayerList->removeAllItems(); mLayerIds.Clear(); Terrain * terrain = Environment::Instance()->GetTerrain(); if (!terrain) return ; int index = 0; for (int i = 0; i < Terrain::kMaxLayers; ++i) { const Terrain::Layer * layer = terrain->GetLayer(i); if (layer->detail != "") { mLayerList->insertItemAt(index++, layer->detail.c_str()); mLayerIds.PushBack(i); } } }