/// <inheritdoc/> protected internal override InspectableState Refresh(bool force) { CharRange newValue = GetValue <CharRange>(); rangeStartField.Value = newValue.start; rangeEndField.Value = newValue.end; return(base.Refresh(force)); }
/// <summary>Initializes the struct with default values.</summary> public static CharRange Default() { CharRange value = new CharRange(); value.start = 0; value.end = 0; return(value); }
/// <inheritdoc/> protected override GUILayoutX CreateGUI(GUILayoutY layout) { GUILayoutX titleLayout = layout.AddLayoutX(); rangeStartField = new GUIIntField(new LocEdString(SeqIndex + ". Start")); rangeEndField = new GUIIntField(new LocEdString("End")); titleLayout.AddElement(rangeStartField); titleLayout.AddElement(rangeEndField); rangeStartField.OnChanged += x => { CharRange range = GetValue <CharRange>(); range.start = x; SetValue(range); MarkAsModified(); }; rangeEndField.OnChanged += x => { CharRange range = GetValue <CharRange>(); range.end = x; SetValue(range); MarkAsModified(); }; rangeStartField.OnFocusLost += ConfirmModify; rangeStartField.OnConfirmed += ConfirmModify; rangeEndField.OnFocusLost += ConfirmModify; rangeEndField.OnConfirmed += ConfirmModify; return(titleLayout); }