Omaha #5225 Fix mixed case issue with multiple text editors

Change-Id: I7f5b3eb7bc82bfe5da906c6d6e870f8a1ed8ccf4

Former-commit-id: 438ecd50ac2bac2ffd190660e973953fd95324c0
This commit is contained in:
Ron Anderson 2016-01-06 16:13:52 -06:00
parent 9f4f17e2c2
commit db6bbf673b

View file

@ -357,6 +357,8 @@ import com.raytheon.viz.ui.simulatedtime.SimulatedTimeOperations;
* 19Nov2015 5141 randerso Replace commas with ellipses if product not enabled for
* mixed case transmission
* 10Dec2015 5206 randerso Replace commas with ellipses only in WarnGen products
* 06Jan2016 5225 randerso Fix problem with mixed case not getting converted to upper case
* when multiple text editors are open on the same product.
*
* </pre>
*
@ -5096,7 +5098,7 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
try {
updateTextEditor(body);
if ((inEditMode || resend)
&& saveEditedProduct(false, resend, true)) {
&& saveEditedProduct(prod, false, resend, true)) {
inEditMode = false;
}
if (!resend) {
@ -5148,9 +5150,7 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
updateTextEditor(copyEtn(prod.getProduct(), body));
}
String product = TextDisplayModel.getInstance().getProduct(
token);
String product = prod.getProduct();
OUPRequest req = createOUPRequest(prod, product);
if (notify != null) {
@ -5180,7 +5180,7 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
}
updateTextEditor(body);
if ((inEditMode || resend)
&& saveEditedProduct(false, resend, false)) {
&& saveEditedProduct(prod, false, resend, false)) {
inEditMode = false;
}
SendPracticeProductRequest req = new SendPracticeProductRequest();
@ -5342,7 +5342,7 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
userInformation("This product MUST be edited in GFE! \n Please exit and return to GFE. \n Action Aborted!");
return;
}
boolean successful = saveEditedProduct(false, false, false);
boolean successful = saveEditedProduct(product, false, false, false);
if (successful) {
// reset the editor status flags
saved = true;
@ -5357,17 +5357,19 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
/**
* Saves the edited product.
*
* @param product
* StdTextProduct to be saved
* @param isAutoSave
* true if auto save operation
* @param resend
* true if product is to be resent
* @param isOperationalSend
* true if operational send
*
* @return true is the save was successful
*/
synchronized private boolean saveEditedProduct(boolean isAutoSave,
boolean resend, boolean isOperationalSend) {
StdTextProduct product = TextDisplayModel.getInstance()
.getStdTextProduct(token);
synchronized private boolean saveEditedProduct(StdTextProduct product,
boolean isAutoSave, boolean resend, boolean isOperationalSend) {
if ((product != null)
&& gfeForbidden(product.getCccid(), product.getNnnid())) {
// Pop up forbidden window.
@ -7562,7 +7564,11 @@ public class TextEditorDialog extends CaveSWTDialog implements VerifyListener,
public void run() {
if (!shell.isDisposed()) {
if (autoSave == AutoSaveTask.this) {
saveEditedProduct(true, false, false);
StdTextProduct product = TextDisplayModel
.getInstance().getStdTextProduct(
token);
saveEditedProduct(product, true, false,
false);
}
}
}