From 6ca8e6b3eaf172f5065ee5317fb19928b26bc6ce Mon Sep 17 00:00:00 2001 From: WarmUpTill Date: Sat, 4 Feb 2023 22:14:27 +0100 Subject: [PATCH] Fix preview not showing matches This can happen if a new video condition was created and the condition type was cahnged to one which supports displaying matches without changing any parameters. --- .../opencv/macro-condition-video.cpp | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/macro-external/opencv/macro-condition-video.cpp b/src/macro-external/opencv/macro-condition-video.cpp index 97576a84..95e91a31 100644 --- a/src/macro-external/opencv/macro-condition-video.cpp +++ b/src/macro-external/opencv/macro-condition-video.cpp @@ -586,6 +586,8 @@ void MacroConditionVideoEdit::ConditionChanged(int cond) _entryData->_objMatchParameters.cascade = initObjectCascade(path); } + + SetupPreviewDialogParams(); } void MacroConditionVideoEdit::ImagePathChanged(const QString &text) @@ -982,6 +984,18 @@ void MacroConditionVideoEdit::SetWidgetVisibility() adjustSize(); } +void MacroConditionVideoEdit::SetupPreviewDialogParams() +{ + _previewDialog.PatternMatchParamtersChanged( + _entryData->_patternMatchParameters); + _previewDialog.ObjDetectParamtersChanged( + _entryData->_objMatchParameters); + _previewDialog.VideoSelectionChanged(_entryData->_video); + _previewDialog.AreaParamtersChanged(_entryData->_areaParameters); + _previewDialog.ConditionChanged( + static_cast(_entryData->_condition)); +} + void MacroConditionVideoEdit::UpdateEntryData() { if (!_entryData) { @@ -1015,14 +1029,4 @@ void MacroConditionVideoEdit::UpdateEntryData() _checkArea->SetArea(_entryData->_areaParameters.area); UpdatePreviewTooltip(); SetWidgetVisibility(); - - // Prepare previewDialog - _previewDialog.PatternMatchParamtersChanged( - _entryData->_patternMatchParameters); - _previewDialog.ObjDetectParamtersChanged( - _entryData->_objMatchParameters); - _previewDialog.VideoSelectionChanged(_entryData->_video); - _previewDialog.AreaParamtersChanged(_entryData->_areaParameters); - _previewDialog.ConditionChanged( - static_cast(_entryData->_condition)); }