Mercurial > hg > dmlib
diff edmain.cpp @ 397:9993873ff655
More work towards editor.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 19 Oct 2012 07:22:09 +0300 |
parents | 412082d5babc |
children | 8660c6005032 |
line wrap: on
line diff
--- a/edmain.cpp Fri Oct 19 07:21:54 2012 +0300 +++ b/edmain.cpp Fri Oct 19 07:22:09 2012 +0300 @@ -99,10 +99,10 @@ resize(1024, 768); setWindowTitle(QCoreApplication::applicationName()); + memset(&engine, 0, sizeof(engine)); changed = FALSE; initSDL = FALSE; currTimeline = NULL; - memset(&engine, 0, sizeof(engine)); // Pre-initialization if ((err = demoPreInit(&engine)) != DMERR_OK) @@ -208,6 +208,10 @@ // Setup GUI elements createMainGUI(); createNewFile(); + DMTimelineTrack *tr = NULL; + dmTimelineAddTrack(currTimeline->tl, &tr, "Penis"); + + timelineView->setTimeline(currTimeline); settingsRestore(); @@ -224,7 +228,6 @@ settingsSave(); delete demoView; - delete tl; historyReset(); if (engine.screen) @@ -263,16 +266,17 @@ { demoView->setEngineData(&engine); - timelineAudioTrack->setWaveform( - engine.audioRes->rdata, engine.audioRes->rdataSize, - engine.optAfmt.format, engine.optAfmt.channels, - engine.optAfmt.freq); + if (engine.audioRes != NULL) + { + timelineAudioTrack->setWaveform( + engine.audioRes->rdata, engine.audioRes->rdataSize, + engine.optAfmt.format, engine.optAfmt.channels, + engine.optAfmt.freq); + } timelineAudioTrack->setOffset(currViewOffset); timelineAudioTrack->setScale(currViewScale); - if (currTimeline != NULL) - timelineView->setTrack(currTimeline->tl); timelineView->setTime(currFrameTime); timelineView->setOffset(currViewOffset); @@ -304,6 +308,13 @@ } +void DemoEditor::actionTimelineChanged() +{ + updateMenuStates(); + update(); +} + + int DemoEditor::initEffectsAndResources() { int err; @@ -355,7 +366,7 @@ void DemoEditor::shutdownEffectsAndResources() { - dmFreeTimeline(engine.tl); + delete currTimeline; dmFreePreparedTimelineData(engine.ptl); engineShutdownEffects(&engine); dmres_close(engine.resources); @@ -388,8 +399,8 @@ } else { - delete tl; - tl = tmp; + delete currTimeline; + currTimeline = tmp; update(); historyReset(); @@ -401,7 +412,7 @@ void DemoEditor::saveToFile(QString filename) { - int ret = tl->save(filename); + int ret = currTimeline->save(filename); if (ret != DMERR_OK) { showFileErrorDialog("Saving demo blob file "+ filename, ret);