From c95bfdf95fe69d6d1cbd9366e71ebff0cdc26686 Mon Sep 17 00:00:00 2001 From: haru-s Date: Sat, 30 Mar 2024 23:45:05 +0900 Subject: [PATCH] PrintPreviewDialog is brushed up. --- source/dfl/printing.d | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/source/dfl/printing.d b/source/dfl/printing.d index 93d2b10..e1fee0a 100644 --- a/source/dfl/printing.d +++ b/source/dfl/printing.d @@ -2378,23 +2378,28 @@ class PrintPreviewDialog : Form _fromPage = new TextBox(); _fromPage.width = 50; _fromPage.dock = DockStyle.LEFT; + _fromPage.gotFocus ~= (Control c, EventArgs e) + { + _fromPage.selectAll(); + }; _fromPage.keyPress ~= (Control c, KeyEventArgs e) { if (e.keyCode == Keys.ENTER) { int oldPage = _previewControl.startPage; int newPage; + e.handled = true; // Disallow beep. try { newPage = to!int(_fromPage.text) - 1; } catch (Exception e) { - newPage = oldPage; // undo + newPage = oldPage; // Undo. } if (newPage < 0) - newPage = oldPage; // undo + newPage = oldPage; // Undo. _previewControl.startPage = newPage; _fromPage.text = to!string(newPage + 1); @@ -2404,6 +2409,8 @@ class PrintPreviewDialog : Form _previewControl.invalidatePreview(); _previewControl.invalidate(); } + + _fromPage.selectAll(); } }; _fromPage.parent = _pageSelectPanel;