コード例 #1
0
ファイル: EffectLayer.cpp プロジェクト: bagumondigi/xLights
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);
    }
}
コード例 #2
0
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();
}