void StrandLayer::InitFromModel(Model &model) { int nc = model.GetStrandLength(strand); SetName(model.GetStrandName(strand)); for (int x = 0; x < mNodeLayers.size(); x++) { mNodeLayers[x]->SetName(model.GetNodeName(x)); } while (mNodeLayers.size() < nc) { NodeLayer *nl = new NodeLayer(GetParentElement(), model.GetNodeName(mNodeLayers.size())); mNodeLayers.push_back(nl); } }
void LMSImportChannelMapDialog::AddModel(Model &cls) { ChannelMapGrid->BeginBatch(); int i = ChannelMapGrid->GetNumberRows(); ChannelMapGrid->AppendRows(cls.GetNumStrands() + 1); ChannelMapGrid->SetCellValue(i, 0, cls.name); i++; for (int s = 0; s < cls.GetNumStrands(); s++) { ChannelMapGrid->SetCellValue(i, 0, cls.name); wxString sn = cls.GetStrandName(s); if ("" == sn) { sn = wxString::Format("Strand %d", s + 1); } ChannelMapGrid->SetCellValue(i, 1, sn); i++; if (!MapByStrand->GetValue()) { ChannelMapGrid->AppendRows(cls.GetStrandLength(s)); for (int n = 0; n < cls.GetStrandLength(s); n++) { ChannelMapGrid->SetCellValue(i, 0, cls.name); ChannelMapGrid->SetCellValue(i, 1, sn); wxString nn = cls.GetNodeName(cls.MapToNodeIndex(s, n)); if ("" == nn) { nn = wxString::Format("Node %d", n + 1); } ChannelMapGrid->SetCellValue(i, 2, nn); i++; } } } ChannelMapGrid->EndBatch(); }