1 21 22 package org.armedbear.j; 23 24 public final class CloseBufferConfirmationDialog extends ConfirmDialog 25 { 26 private final Editor editor; 27 private final Buffer buffer; 28 29 private boolean confirmed; 30 31 public static boolean confirmClose(Editor editor, Buffer buffer) 32 { 33 CloseBufferConfirmationDialog d = 34 new CloseBufferConfirmationDialog(editor, buffer); 35 d.show(); 36 return d.confirmed(); 37 } 38 39 private CloseBufferConfirmationDialog(Editor editor, Buffer buffer) 40 { 41 super(editor); 42 this.editor = editor; 43 this.buffer = buffer; 44 cancel = true; 46 FastStringBuffer sb = new FastStringBuffer(buffer.getFile().getName()); 47 sb.append(" is modified. Do you want to save your changes before closing the buffer?"); 48 initialize(Utilities.wrap(sb.toString(), 65, 8), "Close Buffer"); 49 editor.setDefaultCursor(); 50 centerDialog(); 51 } 52 53 private boolean confirmed() 54 { 55 return confirmed; 56 } 57 58 protected void yes() 60 { 61 setVisible(false); 62 editor.save(buffer); 63 if (!buffer.isModified()) { 64 confirmed = true; 65 dispose(); 66 return; 67 } 68 setVisible(true); 70 } 71 72 protected void no() 74 { 75 confirmed = true; 76 dispose(); 77 } 78 79 protected void cancel() 80 { 81 cancelled = true; 82 dispose(); 83 } 84 } 85 | Popular Tags |