From f378b7f5869d69fb1460f207c076088e5884f69a Mon Sep 17 00:00:00 2001 From: "John B. Matthews" Date: Sun, 24 Aug 2008 10:00:21 +0000 Subject: [PATCH] Improve file/volume name editing in create wizard. --- .../ui/swt/wizard/diskimage/DiskImageNamePane.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/com/webcodepro/applecommander/ui/swt/wizard/diskimage/DiskImageNamePane.java b/src/com/webcodepro/applecommander/ui/swt/wizard/diskimage/DiskImageNamePane.java index 49d1fa6..5681259 100644 --- a/src/com/webcodepro/applecommander/ui/swt/wizard/diskimage/DiskImageNamePane.java +++ b/src/com/webcodepro/applecommander/ui/swt/wizard/diskimage/DiskImageNamePane.java @@ -92,7 +92,7 @@ public class DiskImageNamePane extends WizardPane { public void handleEvent(Event e) { String s = edit(fileName.getText(), e); wizard.setFileName(s); - setButtonStatus(); + setButtonStatus(); } }); if (wizard.isFormatProdos() || wizard.isFormatPascal()) { @@ -113,7 +113,7 @@ public class DiskImageNamePane extends WizardPane { e.text = e.text.toUpperCase(); String s = edit(volumeName.getText(), e); wizard.setVolumeName(s); - setButtonStatus(); + setButtonStatus(); } }); } @@ -125,8 +125,13 @@ public class DiskImageNamePane extends WizardPane { * @return the modified name */ private String edit(String name, Event e) { - if (e.character != '\b') return name + e.text; - else return name.substring(0, name.length() - 1); + if (e.character == '\b') { + return name.substring(0, e.start) + + name.substring(e.end); + } else { + return name.substring(0, e.start) + + e.text + name.substring(e.end); + } } /** * Enable the Next button when data has been entered into all fields.