diff options
| author | j-p <jp.bruyere@live.be> | 2016-03-16 10:41:22 +0000 |
|---|---|---|
| committer | j-p <jp.bruyere@live.be> | 2016-03-16 10:41:22 +0000 |
| commit | 356bfaaed4f46a727ae033f37f362b062c8c32d9 (patch) | |
| tree | 60d62ce23dbf7c1dc8ec5de4f0dcdb77eb66789c /src/GraphicObjects/TextBox.cs | |
| parent | 6b0d7e5a317f4deb808b59f4393fb8b5d0488587 (diff) | |
| parent | c85cd50c4a6553679ebf92058aa1f609ede56d27 (diff) | |
Merge pull request #5 from jpbruyere/TwoWayBindings
Two way bindings
Diffstat (limited to 'src/GraphicObjects/TextBox.cs')
| -rw-r--r-- | src/GraphicObjects/TextBox.cs | 71 |
1 files changed, 18 insertions, 53 deletions
diff --git a/src/GraphicObjects/TextBox.cs b/src/GraphicObjects/TextBox.cs index 14cc1830..08ec1f69 100644 --- a/src/GraphicObjects/TextBox.cs +++ b/src/GraphicObjects/TextBox.cs @@ -80,9 +80,9 @@ namespace Crow case Key.Back: if (!selectionIsEmpty) { -// Text = Text.Remove(selectionStart, selectionEnd - selectionStart); -// selReleasePos = -1; -// currentCol = selBeginPos; + // Text = Text.Remove(selectionStart, selectionEnd - selectionStart); + // selReleasePos = -1; + // currentCol = selBeginPos; } else this.DeleteChar(); @@ -142,61 +142,26 @@ namespace Crow case Key.RWin: break; case Key.Tab: - this.Insert("\t"); - break; - case Key.KeypadDecimal: - this.Insert ("."); - break; - case Key.Space: - this.Insert(" "); - break; - case Key.KeypadDivide: - case Key.Slash: - this.Insert("/"); - break; - case Key.KeypadMultiply: - this.Insert("*"); - break; - case Key.KeypadMinus: - case Key.Minus: - this.Insert("-"); - break; - case Key.KeypadPlus: - case Key.Plus: - this.Insert("+"); - break; - case Key.ShiftLeft: - case Key.ShiftRight: - case Key.AltLeft: - case Key.AltRight: - break; - case Key.Semicolon: - this.Insert(";"); + this.Insert ("\t"); break; default: - if (!selectionIsEmpty) - { -// Text = Text.Remove(selectionStart, selectionEnd - selectionStart); -// currentCol = selBeginPos; - } - - string k = "?"; - if ((char)key >= 67 && (char)key <= 76) - k = ((int)key - 67).ToString(); - else if ((char)key >= 109 && (char)key <= 118) - k = ((int)key - 109).ToString(); - else if (e.Shift) - k = key.ToString(); - else - k = key.ToString().ToLower(); + break; + } + if (Width < 0) + RegisterForLayouting (LayoutingType.Width); + if (Height < 0) + RegisterForLayouting (LayoutingType.Height); + RegisterForGraphicUpdate(); + } + public override void onKeyPress (object sender, KeyPressEventArgs e) + { + base.onKeyPress (sender, e); - this.Insert (k); + this.Insert (e.KeyChar.ToString()); - SelRelease = -1; - SelBegin = new Point(CurrentColumn, SelBegin.Y); + SelRelease = -1; + SelBegin = new Point(CurrentColumn, SelBegin.Y); - break; - } if (Width < 0) RegisterForLayouting (LayoutingType.Width); if (Height < 0) |