Esempio n. 1
0
void xLightsFrame::LoadEffectsFile()
{
    wxStopWatch sw; // start a stopwatch timer
    wxString filename=LoadEffectsFileNoCheck();
    // check version, do we need to convert?
    wxString version=EffectsNode->GetAttribute("version", "0000");
    if (version < XLIGHTS_RGBEFFECTS_VERSION)
    {
        // fix tags
        xLightsXmlFile::FixVersionDifferences(filename);

        // load converted file
        LoadEffectsFileNoCheck();

        // fix effect presets
        xLightsXmlFile::FixEffectPresets(EffectsNode);

        // update version
        EffectsNode->DeleteAttribute("version");
        EffectsNode->AddAttribute("version", XLIGHTS_RGBEFFECTS_VERSION);

        UnsavedRgbEffectsChanges = true;
    }

    UpdateModelsList();
    displayElementsPanel->SetSequenceElementsModelsViews(&SeqData, &mSequenceElements,ModelsNode, ModelGroupsNode, ViewsNode);
    CheckForAndCreateDefaultPerpective();
    perspectivePanel->SetPerspectives(PerspectivesNode);
    float elapsedTime = sw.Time()/1000.0; //msec => sec
    StatusBar1->SetStatusText(wxString::Format(_("'%s' loaded in %4.3f sec."), filename, elapsedTime));
}
Esempio n. 2
0
void xLightsFrame::ShowModelsDialog()
{
    ModelListDialog dialog(this);
    wxString name;
    wxXmlNode* e;
    for(e=ModelsNode->GetChildren(); e!=NULL; e=e->GetNext() )
    {
        if (e->GetName() == "model")
        {
            name=e->GetAttribute("name");
            if (!name.IsEmpty())
            {
                dialog.AddModel(name, e);
            }
        }
    }
    dialog.HtmlEasyPrint=HtmlEasyPrint;
    dialog.SetSequenceElements(&mSequenceElements);
    dialog.SetNetInfo(&NetInfo);
    dialog.SetModelGroupsNode(ModelGroupsNode);
    dialog.ShowModal();

    // append any new models to the main xml structure
    for(size_t i=0; i<dialog.ListBox1->GetCount(); i++)
    {
        e=(wxXmlNode*)dialog.GetXMLForModel(dialog.ListBox1->GetString(i));
        if (e == nullptr) {
            wxMessageBox("Could not find XML for " + dialog.ListBox1->GetString(i), _("ERROR"));
        } else if (!e->GetParent()) {
            ModelsNode->AddChild(e);
        }
    }
    UnsavedRgbEffectsChanges=true;
    UpdateModelsList();
    EnableSequenceControls(true);
}
ModelsDataSource::ModelsDataSource( void ) :
	Rocket::Controls::DataSource( MODELS_SOURCE )
{
	UpdateModelsList();
}