diff --git a/Source/Processors/FileReader/FileReaderEditor.cpp b/Source/Processors/FileReader/FileReaderEditor.cpp index 07111a940d75f990c9d7aa6edb293ef50427c15e..ce2d57c7cb2f223b6fbc6199d7c59e3f5970347e 100644 --- a/Source/Processors/FileReader/FileReaderEditor.cpp +++ b/Source/Processors/FileReader/FileReaderEditor.cpp @@ -145,7 +145,6 @@ void FileReaderEditor::setTotalTime(unsigned int ms) void FileReaderEditor::setCurrentTime(unsigned int ms) { - MessageManagerLock mml; currentTime->setTimeMilliseconds(0,ms); } @@ -296,10 +295,21 @@ void DualTimeComponent::setTimeMilliseconds(unsigned int index, unsigned int tim time /= 60; hourFrac = time; - String text = String(hourFrac).paddedLeft('0',2) + ":" + String(minFrac).paddedLeft('0',2) + ":" + + labelText[index] = String(hourFrac).paddedLeft('0',2) + ":" + String(minFrac).paddedLeft('0',2) + ":" + String(secFrac).paddedLeft('0',2) + "." + String(msFrac).paddedLeft('0',3); + if (editor->acquisitionIsActive) + { + triggerAsyncUpdate(); + } + else + { + timeLabel[index]->setText(labelText[index],dontSendNotification); + } +} - timeLabel[index]->setText(text,dontSendNotification); +void DualTimeComponent::handleAsyncUpdate() +{ + timeLabel[0]->setText(labelText[0],dontSendNotification); } unsigned int DualTimeComponent::getTimeMilliseconds(unsigned int index) diff --git a/Source/Processors/FileReader/FileReaderEditor.h b/Source/Processors/FileReader/FileReaderEditor.h index a94106a380b5001a291dcaf974da5a3502231de5..aa365bf460d7eb6fb303701ab0a257fcc4a53c13 100644 --- a/Source/Processors/FileReader/FileReaderEditor.h +++ b/Source/Processors/FileReader/FileReaderEditor.h @@ -87,7 +87,7 @@ private: }; class DualTimeComponent : public Component, - public Label::Listener + public Label::Listener, public AsyncUpdater { public: DualTimeComponent(FileReaderEditor* e, bool isEditable); @@ -97,12 +97,14 @@ public: void paint(Graphics& g); void labelTextChanged(Label* label); void setEnable(bool enable); + void handleAsyncUpdate(); private: ScopedPointer<Label> timeLabel[2]; unsigned int msTime[2]; FileReaderEditor* editor; bool editable; + String labelText[2]; };