fixed selection on editor

fixed image view and play
This commit is contained in:
Alex Bezdieniezhnykh
2025-07-11 22:46:25 +03:00
parent 938fd36aec
commit fefd054ea0
3 changed files with 19 additions and 19 deletions
+2 -2
View File
@@ -304,7 +304,7 @@ public partial class Annotator
{ {
if (File.Exists(annotation.ImagePath)) if (File.Exists(annotation.ImagePath))
{ {
Editor.SetImageSource(await annotation.ImagePath.OpenImage()); Editor.SetBackground(await annotation.ImagePath.OpenImage());
_formState.BackgroundTime = annotation.Time; _formState.BackgroundTime = annotation.Time;
videoSize = Editor.RenderSize; videoSize = Editor.RenderSize;
} }
@@ -534,7 +534,7 @@ public partial class Annotator
if (LvFiles.SelectedIndex == -1) if (LvFiles.SelectedIndex == -1)
LvFiles.SelectedIndex = 0; LvFiles.SelectedIndex = 0;
Dispatcher.Invoke(() => Editor.ResetBackground()); Dispatcher.Invoke(() => Editor.SetBackground(null));
IsInferenceNow = true; IsInferenceNow = true;
AIDetectBtn.IsEnabled = false; AIDetectBtn.IsEnabled = false;
+3 -3
View File
@@ -143,7 +143,7 @@ public class AnnotatorEventHandler(
if (formState.BackgroundTime.HasValue) if (formState.BackgroundTime.HasValue)
{ {
mainWindow.Editor.ResetBackground(); mainWindow.Editor.SetBackground(null);
formState.BackgroundTime = null; formState.BackgroundTime = null;
} }
break; break;
@@ -226,7 +226,7 @@ public class AnnotatorEventHandler(
if (mainWindow.LvFiles.SelectedItem == null) if (mainWindow.LvFiles.SelectedItem == null)
return; return;
var mediaInfo = (MediaFileInfo)mainWindow.LvFiles.SelectedItem; var mediaInfo = (MediaFileInfo)mainWindow.LvFiles.SelectedItem;
mainWindow.Editor.ResetBackground(); mainWindow.Editor.SetBackground(null);
formState.CurrentMedia = mediaInfo; formState.CurrentMedia = mediaInfo;
mainWindow.Title = $"Azaion Annotator - {mediaInfo.Name}"; mainWindow.Title = $"Azaion Annotator - {mediaInfo.Name}";
@@ -262,7 +262,7 @@ public class AnnotatorEventHandler(
if (formState.BackgroundTime.HasValue) if (formState.BackgroundTime.HasValue)
{ {
//no need to save image, it's already there, just remove background //no need to save image, it's already there, just remove background
mainWindow.Editor.ResetBackground(); mainWindow.Editor.SetBackground(null);
formState.BackgroundTime = null; formState.BackgroundTime = null;
//next item //next item
+14 -14
View File
@@ -124,7 +124,7 @@ public class CanvasEditor : Canvas
MouseWheel += CanvasWheel; MouseWheel += CanvasWheel;
} }
public void SetImageSource(ImageSource? source) public void SetBackground(ImageSource? source)
{ {
SetZoom(); SetZoom();
_backgroundImage.Source = source; _backgroundImage.Source = source;
@@ -228,20 +228,20 @@ public class CanvasEditor : Canvas
_newAnnotationRect.Height = 0; _newAnnotationRect.Height = 0;
var width = Math.Abs(endPos.X - _newAnnotationStartPos.X); var width = Math.Abs(endPos.X - _newAnnotationStartPos.X);
var height = Math.Abs(endPos.Y - _newAnnotationStartPos.Y); var height = Math.Abs(endPos.Y - _newAnnotationStartPos.Y);
if (width < MIN_SIZE || height < MIN_SIZE) if (width >= MIN_SIZE && height >= MIN_SIZE)
return;
var time = GetTimeFunc();
var control = CreateDetectionControl(CurrentAnnClass, time, new CanvasLabel
{ {
Width = width, var time = GetTimeFunc();
Height = height, var control = CreateDetectionControl(CurrentAnnClass, time, new CanvasLabel
X = Math.Min(endPos.X, _newAnnotationStartPos.X), {
Y = Math.Min(endPos.Y, _newAnnotationStartPos.Y), Width = width,
Confidence = 1 Height = height,
}); X = Math.Min(endPos.X, _newAnnotationStartPos.X),
control.UpdateLayout(); Y = Math.Min(endPos.Y, _newAnnotationStartPos.Y),
CheckLabelBoundaries(control); Confidence = 1
});
control.UpdateLayout();
CheckLabelBoundaries(control);
}
} }
else if (SelectionState != SelectionState.PanZoomMoving) else if (SelectionState != SelectionState.PanZoomMoving)
CheckLabelBoundaries(_curAnn); CheckLabelBoundaries(_curAnn);