Compare commits

...

3 Commits

Author SHA1 Message Date
a6de537e4a ScaleRange change 2020-11-16 15:44:40 -08:00
33b0307aa2 Lower text decal default size 2020-11-16 15:39:41 -08:00
121428414c Add input locks for text entry 2020-11-16 15:34:10 -08:00
5 changed files with 29 additions and 5 deletions

View File

@ -62,6 +62,7 @@ PART
useBaseNormal = true useBaseNormal = true
scaleMode = MINIMUM scaleMode = MINIMUM
defaultScale = 0.2
defaultDepth = 0.2 defaultDepth = 0.2
defaultCutoff = 0.5 defaultCutoff = 0.5
} }

View File

@ -31,7 +31,7 @@ namespace ConformalDecals {
[KSPField] public bool scaleAdjustable = true; [KSPField] public bool scaleAdjustable = true;
[KSPField] public float defaultScale = 1; [KSPField] public float defaultScale = 1;
[KSPField] public Vector2 scaleRange = new Vector2(0, 10); [KSPField] public Vector2 scaleRange = new Vector2(0, 5);
[KSPField] public DecalScaleMode scaleMode = DecalScaleMode.HEIGHT; [KSPField] public DecalScaleMode scaleMode = DecalScaleMode.HEIGHT;

View File

@ -11,7 +11,6 @@ namespace ConformalDecals.UI {
[Serializable] [Serializable]
public delegate void TextUpdateDelegate(string newText, DecalFont newFont, FontStyles style, bool vertical, float linespacing, float charspacing); public delegate void TextUpdateDelegate(string newText, DecalFont newFont, FontStyles style, bool vertical, float linespacing, float charspacing);
[SerializeField] private Selectable _textBox; [SerializeField] private Selectable _textBox;
[SerializeField] private Button _fontButton; [SerializeField] private Button _fontButton;
@ -40,7 +39,10 @@ namespace ConformalDecals.UI {
private FontMenuController _fontMenu; private FontMenuController _fontMenu;
private bool _ignoreUpdates; private bool _ignoreUpdates;
private bool _isLocked;
private string _lockString;
private static int _lockCounter;
public static TextEntryController Create( public static TextEntryController Create(
string text, DecalFont font, FontStyles style, bool vertical, float linespacing, float charspacing, string text, DecalFont font, FontStyles style, bool vertical, float linespacing, float charspacing,
@ -70,6 +72,18 @@ namespace ConformalDecals.UI {
Destroy(gameObject); Destroy(gameObject);
} }
public void SetControlLock(string value = null) {
if (_isLocked) return;
InputLockManager.SetControlLock(_lockString);
_isLocked = true;
}
public void RemoveControlLock(string value = null) {
if (!_isLocked) return;
InputLockManager.RemoveControlLock(_lockString);
_isLocked = false;
}
public void OnTextUpdate(string newText) { public void OnTextUpdate(string newText) {
this._text = newText; this._text = newText;
@ -195,12 +209,15 @@ namespace ConformalDecals.UI {
OnValueChanged(); OnValueChanged();
} }
private void Start() { private void Start() {
_lockString = $"ConformalDecals_TextEditor_{_lockCounter++}";
_textBoxTMP = ((TMP_InputField) _textBox); _textBoxTMP = ((TMP_InputField) _textBox);
_textBoxTMP.text = _text; _textBoxTMP.text = _text;
_textBoxTMP.textComponent.fontStyle = _style | _font.FontStyle & ~_font.FontStyleMask; _textBoxTMP.textComponent.fontStyle = _style | _font.FontStyle & ~_font.FontStyleMask;
_textBoxTMP.fontAsset = _font.FontAsset; _textBoxTMP.fontAsset = _font.FontAsset;
_textBoxTMP.onSelect.AddListener(SetControlLock);
_textBoxTMP.onDeselect.AddListener(RemoveControlLock);
_font.SetupSample(_fontButton.GetComponentInChildren<TextMeshProUGUI>()); _font.SetupSample(_fontButton.GetComponentInChildren<TextMeshProUGUI>());
@ -209,6 +226,10 @@ namespace ConformalDecals.UI {
UpdateCharSpacing(); UpdateCharSpacing();
} }
private void OnDestroy() {
RemoveControlLock();
}
private void OnValueChanged() { private void OnValueChanged() {
_onValueChanged(_text, _font, _style, _vertical, _lineSpacing, _charSpacing); _onValueChanged(_text, _font, _style, _vertical, _lineSpacing, _charSpacing);
} }

View File

@ -1,10 +1,12 @@
v0.2.4 v0.2.4
------
- Fixes: - Fixes:
- Fixed red text appearing on planets due to KSP bug by clearing render textures afterwards. - Fixed red text appearing on planets due to KSP bug by clearing render textures afterwards.
- Fixed fonts not saving correctly. - Fixed fonts not saving correctly.
- Changes: - Changes:
- Lowered step size for decal size and depth to 1cm. - Lowered step size for decal size and depth to 1cm.
- Changed default max size to 10m. - Changed default max size to 5m.
- Changed default text decal size to 0.2m
- Text decals now show as a circle if they contain only whitespace. - Text decals now show as a circle if they contain only whitespace.
v0.2.3 v0.2.3