Ignore:
Timestamp:
08/28/12 10:42:56 (12 years ago)
Author:
sherbold
Message:
  • modified adding of assertions to work with GUI models. As a side effect, it is currently impossible to add assertions to sequences whose event targets are not based on a GUI model
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/quest-ui-swt/src/main/java/de/ugoe/cs/quest/ui/swt/SequencesDialog.java

    r655 r659  
    22 
    33import java.util.Collection; 
    4 import java.util.SortedSet; 
    5 import java.util.TreeSet; 
    64 
    75import org.eclipse.swt.widgets.Dialog; 
     
    1715import de.ugoe.cs.quest.SequenceInstanceOf; 
    1816import de.ugoe.cs.quest.eventcore.Event; 
     17import de.ugoe.cs.quest.eventcore.guimodel.GUIModel; 
    1918import de.ugoe.cs.quest.ui.GlobalDataContainer; 
    2019 
     
    2827    private List sequenceList; 
    2928    private Collection<java.util.List<Event>> sequences; 
    30     private SortedSet<String> targets; 
     29    private GUIModel guiModel; 
    3130 
    3231    protected Shell shell; 
     
    8685                else { 
    8786                    EditSequenceDialog editSequenceDialog = 
    88                         new EditSequenceDialog(shell, SWT.NONE, targets); 
     87                        new EditSequenceDialog(shell, SWT.NONE, guiModel); 
    8988                    int counter = 0; 
    9089                    java.util.List<Event> selectedSequence = null; 
     
    130129            Object targetObject = 
    131130                GlobalDataContainer.getInstance().getData(sequencesName + "_targets"); 
    132             targets = null; 
    133             if (targetObject instanceof SortedSet) { 
    134                 if (!((SortedSet<?>) targetObject).isEmpty()) { 
    135                     if (((SortedSet<?>) targetObject).first() instanceof String) { 
    136                         targets = (SortedSet<String>) targetObject; 
    137                     } 
    138                 } 
     131            guiModel = null; 
     132            if (targetObject instanceof GUIModel) { 
     133                guiModel = (GUIModel) targetObject; 
    139134            } 
    140             if (targets == null) { 
    141                 targets = new TreeSet<String>(); 
    142                 for (java.util.List<Event> sequence : sequences) { 
    143                     for (Event event : sequence) { 
    144                         // TODO check if toString() is sufficient 
    145                         String target = event.getTarget().toString(); 
    146                         if (target != null) { 
    147                             targets.add(target); 
    148                         } 
    149                     } 
    150                 } 
     135            if (guiModel == null) { 
     136                MessageBox messageBox = new MessageBox(shell, SWT.ERROR); 
     137                messageBox.setMessage("Operation not supported!\nOnly works for GUI sequences."); 
     138                messageBox.setText("Error"); 
     139                messageBox.open(); 
    151140            } 
    152141        } 
Note: See TracChangeset for help on using the changeset viewer.