Revision: 76122ca72451 Branch: default Author: Brandon Roller <brandon.r.roller@xxxxxxxxx> Date: Fri Jul 11 17:01:11 2014 UTCLog: Fixed bug with save on exit that occurred when cancel button was added
http://code.google.com/p/brailleblaster/source/detail?r=76122ca72451 Modified: /src/main/org/brailleblaster/perspectives/braille/Manager.java /src/main/org/brailleblaster/perspectives/braille/ui/BrailleMenu.java/src/main/org/brailleblaster/perspectives/imageDescriber/ImageDescriberController.java /src/main/org/brailleblaster/perspectives/imageDescriber/UIComponents/ImageDescriberMenu.java
/src/main/org/brailleblaster/wordprocessor/BBMenu.java =======================================--- /src/main/org/brailleblaster/perspectives/braille/Manager.java Thu Jul 10 18:51:36 2014 UTC +++ /src/main/org/brailleblaster/perspectives/braille/Manager.java Fri Jul 11 17:01:11 2014 UTC
@@ -76,6 +76,7 @@ import org.brailleblaster.printers.PrintersManager; import org.brailleblaster.util.Notify; import org.brailleblaster.util.PropertyFileManager; +import org.brailleblaster.util.YesNoChoice; import org.brailleblaster.wordprocessor.BBFileDialog; import org.brailleblaster.wordprocessor.BBStatusBar; import org.brailleblaster.wordprocessor.FontManager; @@ -877,11 +878,25 @@ @Override public void close() { - dispose(); - item.dispose(); - fontManager.disposeFonts(); - if(arch.getOrigDocPath() == null & docCount > 0) - docCount--; + boolean cancel = false; + if (!BBIni.debugging() && documentHasBeenEdited()) { + YesNoChoice ync = new YesNoChoice(lh.localValue("hasChanged"), true); + if (ync.result == SWT.YES) { + fileSave(); + } + else if(ync.result == SWT.CANCEL) + cancel = true; + } + + if(!cancel){ + dispose(); + item.dispose(); + fontManager.disposeFonts(); + if(arch.getOrigDocPath() == null & docCount > 0) + docCount--; + + wp.removeController(this); + } } public void nextElement(){ =======================================--- /src/main/org/brailleblaster/perspectives/braille/ui/BrailleMenu.java Wed Jun 25 13:24:35 2014 UTC +++ /src/main/org/brailleblaster/perspectives/braille/ui/BrailleMenu.java Fri Jul 11 17:01:11 2014 UTC
@@ -117,8 +117,11 @@ if(index == -1){ wp.addDocumentManager(null); ((Manager)wp.getList().getFirst()).fileOpenDialog(); - if(((Manager)wp.getList().getFirst()).getWorkingPath() == null) - ((Manager)wp.getList().getFirst()).close();+ if(((Manager)wp.getList().getFirst()).getArchiver().getOrigDocPath() == null){
+ ((Manager)wp.getList().getFirst()).close(); + if(wp.getList().size() == 0) + setCurrent(null); + } } else { currentEditor.fileOpenDialog(); @@ -248,29 +251,15 @@ closeItem.setAccelerator(SWT.MOD1 + 'W'); closeItem.addSelectionListener(new SelectionAdapter() { @Override - public void widgetSelected(SelectionEvent e) { - boolean cancel = false; - if (!BBIni.debugging() && currentEditor.documentHasBeenEdited()) { - YesNoChoice ync = new YesNoChoice(lh.localValue("hasChanged"), true); - if (ync.result == SWT.YES) { - currentEditor.fileSave(); - } - else if(ync.result == SWT.CANCEL) - cancel = true; - } - - if(!cancel){ - int count = wp.getFolder().getItemCount(); - - Controller temp = currentEditor; - wp.removeController(temp); - - if(count > 0) - temp.close(); + public void widgetSelected(SelectionEvent e) { + int count = wp.getFolder().getItemCount(); + Controller temp = currentEditor; + + if(count > 0) + temp.close(); - if(wp.getList().size() == 0) - setCurrent(null); - } + if(wp.getList().size() == 0) + setCurrent(null); } }); =======================================--- /src/main/org/brailleblaster/perspectives/imageDescriber/ImageDescriberController.java Thu Jul 3 15:55:25 2014 UTC +++ /src/main/org/brailleblaster/perspectives/imageDescriber/ImageDescriberController.java Fri Jul 11 17:01:11 2014 UTC
@@ -44,6 +44,7 @@import org.brailleblaster.perspectives.imageDescriber.document.ImageDescriber; import org.brailleblaster.perspectives.imageDescriber.views.ImageDescriberView;
import org.brailleblaster.util.ImageHelper; +import org.brailleblaster.util.YesNoChoice; import org.brailleblaster.wordprocessor.BBFileDialog; import org.brailleblaster.wordprocessor.BBStatusBar; import org.brailleblaster.wordprocessor.WPManager; @@ -141,7 +142,8 @@ //////////////// // Recent Files. - addRecentFileEntry(fileName); + if(fileName != null) + addRecentFileEntry(fileName);return imgDesc.startDocument(arch.getWorkingFilePath(), arch.getCurrentConfig(), null);
} @@ -228,8 +230,20 @@ @Override public void close() { - dispose(); - item.dispose(); + boolean cancel = false; + if(documentHasBeenEdited()){ + YesNoChoice ync = new YesNoChoice(lh.localValue("hasChanged"), true); + if (ync.result == SWT.YES) + save(); + else if(ync.result == SWT.CANCEL) + cancel =true; + } + + if(!cancel){ + dispose(); + item.dispose(); + wp.removeController(this); + } } // =======================================--- /src/main/org/brailleblaster/perspectives/imageDescriber/UIComponents/ImageDescriberMenu.java Thu Jul 3 19:15:15 2014 UTC +++ /src/main/org/brailleblaster/perspectives/imageDescriber/UIComponents/ImageDescriberMenu.java Fri Jul 11 17:01:11 2014 UTC
@@ -58,10 +58,10 @@ wp.addDocumentManager(null);currentController = (ImageDescriberController) wp.getList().getFirst();
currentController.fileOpenDialog(); - if(currentController.getWorkingPath() == null){ + if(currentController.getArchiver().getOrigDocPath() == null){ currentController.close(); - wp.removeController(currentController); - currentController = null; + if(wp.getList().size() == 0) + currentController = null; } } else { @@ -112,29 +112,14 @@ } @Override - public void widgetSelected(SelectionEvent e) { - boolean cancel = false; - if(currentController.documentHasBeenEdited()){ - YesNoChoice ync = new YesNoChoice(lh.localValue("hasChanged"), true); - if (ync.result == SWT.YES) { - currentController.save(); - } - else if(ync.result == SWT.CANCEL) - cancel =true; - } - - if(!cancel){ - int count = wp.getFolder().getItemCount(); - Controller temp = currentController; + public void widgetSelected(SelectionEvent e) { + int count = wp.getFolder().getItemCount(); - if(count > 0) - currentController.close(); - - wp.removeController(temp); + if(count > 0) + currentController.close(); - if(wp.getList().size() == 0) - setCurrent(null); - } + if(wp.getList().size() == 0) + setCurrent(null); } }); =======================================--- /src/main/org/brailleblaster/wordprocessor/BBMenu.java Tue Jul 1 19:31:52 2014 UTC +++ /src/main/org/brailleblaster/wordprocessor/BBMenu.java Fri Jul 11 17:01:11 2014 UTC
@@ -146,13 +146,17 @@ exitItem.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { - while(wp.getList().size() > 0){ - Controller temp = wp.getList().getFirst(); - wp.removeController(temp); + int i = 0; + while(wp.getList().size() > 0 && i < wp.getList().size()){ + int size = wp.getList().size(); + Controller temp = wp.getList().get(i); temp.close(); + if(size == wp.getList().size()) + i++; } - wp.getShell().dispose(); + if(wp.getList().size() == 0) + wp.getShell().dispose(); } }); }