Ignore:
Timestamp:
05/19/17 11:31:29 (7 years ago)
Author:
pharms
Message:
  • refactored GUI model so that hierarchical event target structures can also be used and created by plugins not being strictly for GUIs
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/autoquest-core-events-test/src/test/java/de/ugoe/cs/autoquest/eventcore/guimodel/GUIModelTest.java

    r1876 r2146  
    2323import org.junit.Test; 
    2424 
     25import de.ugoe.cs.autoquest.eventcore.EventTargetModelConfigurationException; 
     26import de.ugoe.cs.autoquest.eventcore.HierarchicalEventTargetModel; 
     27import de.ugoe.cs.autoquest.eventcore.IEventTargetFactory; 
     28import de.ugoe.cs.autoquest.eventcore.IEventTargetSpec; 
     29import de.ugoe.cs.autoquest.eventcore.IHierarchicalEventTarget; 
     30import de.ugoe.cs.autoquest.eventcore.IHierarchicalEventTargetModel; 
     31 
    2532/** 
    2633 * 
     
    3239     *  
    3340     */ 
    34     private IGUIElementFactory guiElementFactory = new TestGUIElementFactory(); 
     41    private IEventTargetFactory guiElementFactory = new TestGUIElementFactory(); 
    3542 
    3643    /** 
     
    399406        IGUIElement guiElem9 = model.getChildren(guiElem1).get(1); 
    400407         
    401         model.groupGUIElements(Arrays.asList(guiElem2, guiElem9), "newGroup"); 
     408        model.groupEventTargets(Arrays.asList(guiElem2, guiElem9), "newGroup", guiElementFactory); 
    402409         
    403410        assertEquals(1, model.getChildren(guiElem1).size()); 
     
    475482        IGUIElement guiElem5 = model.getChildren(guiElem2).get(1); 
    476483         
    477         model.groupGUIElements(Arrays.asList(guiElem3, guiElem5), "newGroup"); 
     484        model.groupEventTargets(Arrays.asList(guiElem3, guiElem5), "newGroup", guiElementFactory); 
    478485         
    479486        assertEquals(1, model.getChildren(guiElem2).size()); 
     
    551558        IGUIElement guiElem4 = model.getChildren(guiElem3).get(0); 
    552559         
    553         model.groupGUIElements(Arrays.asList(guiElem4), "newGroup"); 
     560        model.groupEventTargets(Arrays.asList(guiElem4), "newGroup", guiElementFactory); 
    554561         
    555562        assertEquals(1, model.getChildren(guiElem3).size()); 
     
    629636        IGUIElement guiElem6 = model.getChildren(guiElem5).get(0); 
    630637 
    631         model.groupGUIElements(Arrays.asList(guiElem4, guiElem6), "newGroup"); 
     638        model.groupEventTargets(Arrays.asList(guiElem4, guiElem6), "newGroup", guiElementFactory); 
    632639    } 
    633640 
     
    685692        //         \-- guiElem10 
    686693         
    687         GUIModel.Traverser traverser = model.getTraverser(); 
     694        IHierarchicalEventTargetModel.Traverser<IGUIElement> traverser = model.getTraverser(); 
    688695        assertNotNull(traverser); 
    689696        assertTrue(traverser.hasFirstChild()); 
     
    890897        //         \-- guiElem10 
    891898         
    892         GUIModel.Traverser traverser = model.getTraverser(target); 
     899        IHierarchicalEventTargetModel.Traverser<IGUIElement> traverser = model.getTraverser(target); 
    893900        assertNotNull(traverser); 
    894901        assertFalse(traverser.hasFirstChild()); 
     
    985992     * @author Patrick Harms 
    986993     */ 
    987     private class TestGUIElementFactory implements IGUIElementFactory { 
     994    private class TestGUIElementFactory implements IEventTargetFactory { 
    988995 
    989996        /* (non-Javadoc) 
    990997         * @see IGUIElementFactory#instantiateGUIElement(IGUIElementSpec, IGUIElement) 
    991998         */ 
     999        @SuppressWarnings("unchecked") 
    9921000        @Override 
    993         public IGUIElement instantiateGUIElement(IGUIElementSpec specification, IGUIElement parent) 
    994             throws GUIModelConfigurationException 
     1001        public <T extends IHierarchicalEventTarget> T instantiateEventTarget(IEventTargetSpec specification, 
     1002                                                                             T                parent) 
     1003            throws EventTargetModelConfigurationException 
    9951004        { 
    9961005            assertTrue(specification instanceof TestGUIElementSpec); 
    9971006             
    998             return new TestGUIElement((TestGUIElementSpec) specification, parent); 
     1007            return (T) new TestGUIElement((TestGUIElementSpec) specification, (IGUIElement) parent); 
     1008        } 
     1009 
     1010        /* (non-Javadoc) 
     1011         * @see IEventTargetFactory#instantiateGroup(String, IHierarchicalEventTarget, HierarchicalEventTargetModel) 
     1012         */ 
     1013        @SuppressWarnings("unchecked") 
     1014        @Override 
     1015        public <T extends IHierarchicalEventTarget> T instantiateGroup(String                          groupName, 
     1016                                                                       T                               parent, 
     1017                                                                       HierarchicalEventTargetModel<T> hierarchicalEventTargetModel) 
     1018        { 
     1019            return (T) new GUIElementGroup(groupName, (IGUIElement) parent, (GUIModel) hierarchicalEventTargetModel); 
    9991020        } 
    10001021 
     
    10531074         */ 
    10541075        @Override 
    1055         public boolean getSimilarity(IGUIElementSpec other) { 
     1076        public boolean getSimilarity(IEventTargetSpec other) { 
    10561077            return (other instanceof TestGUIElementSpec ? 
    10571078                ((TestGUIElementSpec) other).similarityId.equals(similarityId) : false); 
     
    11051126         */ 
    11061127        @Override 
    1107         public void updateSpecification(IGUIElementSpec furtherSpec) { 
     1128        public void updateSpecification(IEventTargetSpec furtherSpec) { 
    11081129            // do nothing 
    11091130        } 
Note: See TracChangeset for help on using the changeset viewer.