public override void InitializeOnStart() { base.InitializeOnStart(); view = GetComponent <MarkerView>(); usecase = new MarkerUseCases(compositeDisposables); view.Initialize(); view.OnAnchored .Where(_ => usecase.CurrentChapter == Model.Engine.Scenario.Chapter.MarkerTracking) .Do(p => { usecase.SetReferencePoint(p); usecase.TransitScenario(); }) .Subscribe() .AddTo(this); usecase.OnAfterTransitScenario .Do(_ => { MessageView.Instance.WriteMessage("マーカーをタップしてください"); view.Enable(); }) .Subscribe() .AddTo(this); usecase.OnBeforeTransitScenario .Do(_ => view.Disable()) .Subscribe() .AddTo(this); }
public void ConstructorSetsMarkerPropertyForValidMarker() { var marker = DomainEntities.Marker1; var markerView = new MarkerView(marker); Assert.AreEqual(marker, markerView.Marker); }
public void AddMarker(int frame, bool editText = false) { if (editText) { var i = new InputPrompt { Text = $"Marker for frame {frame}", TextInputType = InputPrompt.InputType.Text, Message = "Enter a message", InitialValue = Markers.IsMarker(frame) ? Markers.PreviousOrCurrent(frame).Message : "" }; var point = Cursor.Position; point.Offset(i.Width / -2, i.Height / -2); var result = i.ShowHawkDialog(position: point); if (result.IsOk()) { Markers.Add(new TasMovieMarker(frame, i.PromptText)); UpdateTextColumnWidth(); UpdateValues(); } } else { Markers.Add(new TasMovieMarker(frame)); UpdateValues(); } MarkerView.ScrollToIndex(Markers.Count - 1); Tastudio.RefreshDialog(); }
public override View GetSelectedView(GeoElement p0) { ImageView imageView = (ImageView)MarkerView.FindViewById(Resource.Id.image); imageView.SetImageResource(Resource.Drawable.map_marker_dark_green); imageView.Invalidate(); return(MarkerView); }
public void UpdateValues() { if (MarkerView != null && Tastudio?.CurrentTasMovie != null && Markers != null) { MarkerView.RowCount = Markers.Count; } MarkerView.Refresh(); }
public override View GetView(GeoElement p0) { ImageView imageView = (ImageView)MarkerView.FindViewById(Resource.Id.image); var o = RecognitionPageRenderer.Objects.FirstOrDefault(x => x.Data.Id.ToString() == p0.Id); var bitmap = BitmapFactory.DecodeByteArray(o.ImageBytes, 0, o.ImageBytes.Length); imageView.SetImageBitmap(bitmap); imageView.Invalidate(); return(MarkerView); }
// feos: not the same as InputRoll.TruncateSelection(), since multiple selection of markers is forbidden // moreover, when the last marker is removed, we need its selection to move to the previous marker // still iterate, so things don't break if multiple selection is allowed someday public void ShrinkSelection() { if (MarkerView.AnyRowsSelected) { while (MarkerView.SelectedRows.Last() > Markers.Count - 1) { MarkerView.SelectRow(Markers.Count, false); MarkerView.SelectRow(Markers.Count - 1, true); } } }
public void UpdateTextColumnWidth() { if (Markers.Any()) { var longestBranchText = Markers .OrderBy(b => b.Message?.Length ?? 0) .Last() .Message; MarkerView.ExpandColumnToFitText("LabelColumn", longestBranchText); } }
public void AddMarker(int frame, bool editText = false) { TasMovieMarker marker; if (editText) { var i = new InputPrompt { Text = $"Marker for frame {frame}", TextInputType = InputPrompt.InputType.Text, Message = "Enter a message", InitialValue = Markers.IsMarker(frame) ? Markers.PreviousOrCurrent(frame).Message : "" }; var point = Cursor.Position; point.Offset(i.Width / -2, i.Height / -2); i.StartPosition = FormStartPosition.Manual; i.Location = point; if (!this.ShowDialogWithTempMute(i).IsOk()) { return; } UpdateTextColumnWidth(); marker = new TasMovieMarker(frame, i.PromptText); } else { marker = new TasMovieMarker(frame); } UpdateValues(); Markers.Add(marker); var index = Markers.IndexOf(marker); MarkerView.MakeIndexVisible(index); Tastudio.RefreshDialog(); }
public void AddMarker(bool editText = false, int?frame = null) { // feos: we specify the selected frame if we call this from TasView, otherwise marker should be added to the emulated frame var markerFrame = frame ?? Tastudio.Emulator.Frame; if (editText) { var i = new InputPrompt { Text = $"Marker for frame {markerFrame}", TextInputType = InputPrompt.InputType.Text, Message = "Enter a message", InitialValue = Markers.IsMarker(markerFrame) ? Markers.PreviousOrCurrent(markerFrame).Message : "" }; var point = Cursor.Position; point.Offset(i.Width / -2, i.Height / -2); var result = i.ShowHawkDialog(position: point); if (result == DialogResult.OK) { Markers.Add(new TasMovieMarker(markerFrame, i.PromptText)); UpdateTextColumnWidth(); UpdateValues(); } } else { Markers.Add(new TasMovieMarker(markerFrame)); UpdateValues(); } MarkerView.ScrollToIndex(Markers.Count - 1); Tastudio.RefreshDialog(); }
public void Restart() { SetupColumns(); MarkerView.RowCount = Markers.Count; MarkerView.Refresh(); }
public void Restart() { MarkerView.DeselectAll(); UpdateValues(); }
public void ConstructorThrowsValidationExceptionForInvalidMarker() { var markerView = new MarkerView(DomainEntities.InvalidMarker); }
public void ConstructorThrowsArgumentNullExceptionForNullMarker() { var markerView = new MarkerView(null); }