Ignore:
Timestamp:
11/08/19 13:23:37 (5 years ago)
Author:
bnemhaus
Message:

Changed Label::progressSurrogate mode so that a null return values signifies that asking for surrogate mode makes no sense because there are no labels in play.

Fixed bug with DisplayController::toggleSurrogateMode. It was printing incorrect messages to the message bay when the user was supposed to be exiting surrogate mode. This was fixed by querying Label::isInSurrogateMode.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/gui/DisplayController.java

    r1431 r1443  
    12381238                ItemsList primaryBodyCopy = new ItemsList(primaryBody);
    12391239                List<String> accessibleLabelsNames = Label.progressSurrogateMode(primaryBodyCopy);
    1240                 if (accessibleLabelsNames.isEmpty()) {
    1241                         MessageBay.displayMessage("Surrogate Mode currently accepts no labels. (Unprivileged view)");
     1240                if (Label.isInSurrogateMode()) {
     1241                        if (accessibleLabelsNames == null) {
     1242                                MessageBay.displayMessage("Unable to enter surrogate mode as there are no encryption labels on the current Frame");
     1243                        } else if (accessibleLabelsNames.isEmpty()) {
     1244                                MessageBay.displayMessage("Surrogate Mode currently accepts no labels. (Unprivileged view)");
     1245                        } else {
     1246                                StringBuilder sb = new StringBuilder("Surrogate Mode currently accepts labels: ");
     1247                                for (String acceessibleLabel: accessibleLabelsNames) {
     1248                                        sb.append(acceessibleLabel + ", ");
     1249                                }
     1250                                String message = sb.substring(0, sb.length() - 2);
     1251                                MessageBay.displayMessage(message);
     1252                        }
    12421253                } else {
    1243                         StringBuilder sb = new StringBuilder("Surrogate Mode currently accepts labels: ");
    1244                         for (String acceessibleLabel: accessibleLabelsNames) {
    1245                                 sb.append(acceessibleLabel + ", ");
    1246                         }
    1247                         String message = sb.substring(0, sb.length() - 2);
    1248                         MessageBay.displayMessage(message);
    1249                 }
    1250                
     1254                        if (accessibleLabelsNames == null) {
     1255                                MessageBay.displayMessage("Unable to enter surrogate mode as there are no encryption labels on the current Frame");
     1256                        } else {
     1257                                MessageBay.displayMessage("No longer in surrogate mode.");
     1258                        }
     1259                }
     1260                               
    12511261                getCurrentFrame().parse();
    12521262                getCurrentFrame().refreshSize();
Note: See TracChangeset for help on using the changeset viewer.