Index: /trunk/autoquest-core-events/src/main/java/de/ugoe/cs/autoquest/eventcore/guimodel/GUIElementTree.java
===================================================================
--- /trunk/autoquest-core-events/src/main/java/de/ugoe/cs/autoquest/eventcore/guimodel/GUIElementTree.java	(revision 1003)
+++ /trunk/autoquest-core-events/src/main/java/de/ugoe/cs/autoquest/eventcore/guimodel/GUIElementTree.java	(revision 1004)
@@ -39,5 +39,5 @@
  */
 public class GUIElementTree {
-	/* Note that in the current version the id of a GUI element is assumed to be an Integer. For future
+	/* Note that in the current version the id of a GUI element is assumed to be a long. For future
 	versions it might be more suitable to change to some generic id type. */
 	
@@ -45,32 +45,32 @@
      * <p>
      * Map of all GUI elements that are part of the tree for efficient searching. The keys of the
-     * map are the hash values of the GUI elements.
-     * </p>
-     */
-    private Map<Integer, IGUIElement> guiElements;
+     * map are the ids of the GUI elements.
+     * </p>
+     */
+    private Map<Long, IGUIElement> guiElements;
 
     /**
      * <p>
      * Map of all GUI element specifications that are part of the tree for efficient searching. The
-     * keys of the map are the hash values of the GUI elements.
-     * </p>
-     */
-    private Map<Integer, IGUIElementSpec> guiElementSpecs;
+     * keys of the map are the ids of the GUI elements.
+     * </p>
+     */
+    private Map<Long, IGUIElementSpec> guiElementSpecs;
 
     /**
      * <p>
      * Map of all children of GUI elements that are part of the tree. The keys of the map are the
-     * hash values of the parent GUI elements.
-     * </p>
-     */
-    private Map<Integer, List<Integer>> childRelations;
+     * ids of the parent GUI elements.
+     * </p>
+     */
+    private Map<Long, List<Long>> childRelations;
 
     /**
      * <p>
      * Map of all parents of GUI elements that are part of the tree. The keys of the map are the
-     * hash values of the child GUI elements.
-     * </p>
-     */
-    private Map<Integer, Integer> parentRelations;
+     * ids of the child GUI elements.
+     * </p>
+     */
+    private Map<Long, Long> parentRelations;
 
     /**
@@ -96,8 +96,8 @@
      */
     public GUIElementTree() {
-        guiElementSpecs = new HashMap<Integer, IGUIElementSpec>();
-        childRelations = new HashMap<Integer, List<Integer>>();
-        parentRelations = new HashMap<Integer, Integer>();
-        guiElements = new HashMap<Integer, IGUIElement>();
+        guiElementSpecs = new HashMap<Long, IGUIElementSpec>();
+        childRelations = new HashMap<Long, List<Long>>();
+        parentRelations = new HashMap<Long, Long>();
+        guiElements = new HashMap<Long, IGUIElement>();
         guiModel = new GUIModel();
     }
@@ -110,8 +110,8 @@
      */
     public GUIElementTree(GUIModel guiModel){
-        guiElementSpecs = new HashMap<Integer, IGUIElementSpec>();
-        childRelations = new HashMap<Integer, List<Integer>>();
-        parentRelations = new HashMap<Integer, Integer>();
-        guiElements = new HashMap<Integer, IGUIElement>();
+        guiElementSpecs = new HashMap<Long, IGUIElementSpec>();
+        childRelations = new HashMap<Long, List<Long>>();
+        parentRelations = new HashMap<Long, Long>();
+        guiElements = new HashMap<Long, IGUIElement>();
         this.guiModel = guiModel;
     }
@@ -129,6 +129,6 @@
      * 			  the GUI element specification
      */
-    public void add(Integer guiElementID,
-    				Integer parentID,
+    public void add(Long guiElementID,
+    				Long parentID,
                     IGUIElementSpec guiElementSpec)
     {
@@ -138,8 +138,8 @@
         	IGUIElementSpec parent = guiElementSpecs.get(parentID);
             if (parent != null) {
-                List<Integer> otherChildren = childRelations.get(parentID);
+                List<Long> otherChildren = childRelations.get(parentID);
 
                 if (otherChildren == null) {
-                    otherChildren = new ArrayList<Integer>();
+                    otherChildren = new ArrayList<Long>();
                     childRelations.put(parentID, otherChildren);
                 }
@@ -153,5 +153,5 @@
             List<IGUIElementSpec> guiElementPath = new ArrayList<IGUIElementSpec>();
 
-            Integer currentElementID = guiElementID;
+            Long currentElementID = guiElementID;
             while (guiElementSpec != null) {
                 guiElementPath.add(0, guiElementSpec);
@@ -180,5 +180,5 @@
      * @return {@link IGUIElementSpec} of the GUI element with the given id if found, null otherwise
      */
-    public IGUIElement find(int id) {
+    public IGUIElement find(long id) {
         IGUIElement guiElement = guiElements.get(id);
         if (guiElement == null) {
@@ -191,5 +191,5 @@
             }
 
-            Integer currentElementID = id;
+            Long currentElementID = id;
             while (elementSpec != null) {
                 guiElementPath.add(0, elementSpec);
@@ -219,16 +219,16 @@
      * @return number of GUI elements that were removed
      */
-    public int remove(int id) {
+    public int remove(long id) {
         IGUIElementSpec node = guiElementSpecs.remove(id);
         int removedCounter = 1;
 
         if (node != null) {
-            List<Integer> nodesToBeRemoved = childRelations.remove(id);
+            List<Long> nodesToBeRemoved = childRelations.remove(id);
 
             // remove all children and sub-children, if any
             if (nodesToBeRemoved != null) {
                 for (int i = 0; i < nodesToBeRemoved.size(); i++) {
-                    Integer nodeToBeRemoved = nodesToBeRemoved.get(i);
-                    List<Integer> children =
+                    Long nodeToBeRemoved = nodesToBeRemoved.get(i);
+                    List<Long> children =
                         childRelations.remove(nodeToBeRemoved);
 
@@ -245,7 +245,7 @@
             /* the node may be a child node of a parent. So search for it in the child relations
             of the parent and remove it */
-            Integer parent = parentRelations.remove(id);
+            Long parent = parentRelations.remove(id);
             if (parent != null) {
-                List<Integer> children = childRelations.get(parent);
+                List<Long> children = childRelations.get(parent);
 
                 if (children != null) {
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/JFCSimplifiedLogParser.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/JFCSimplifiedLogParser.java	(revision 1003)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/JFCSimplifiedLogParser.java	(revision 1004)
@@ -79,5 +79,5 @@
      * </p>
      */
-    private Integer currentComponentHash;
+    private Long currentComponentHash;
     
     /**
@@ -87,5 +87,5 @@
      * </p>
      */
-    private Integer currentParentHash;
+    private Long currentParentHash;
     
     /**
@@ -94,5 +94,5 @@
      * </p>
      */
-    private Integer currentEventSource;
+    private Long currentEventSource;
     
     /**
@@ -319,5 +319,5 @@
         }
         else if (qName.equals("component")) {
-        	currentComponentHash = (int) Long.parseLong(atts.getValue("hash"), 16);
+        	currentComponentHash = Long.parseLong(atts.getValue("hash"), 16);
         	currentGuiElementSpec = new JFCGUIElementSpec();
         	currentGuiElementSpec.setElementHash((int) currentComponentHash.longValue());
@@ -341,5 +341,5 @@
         	if (currentEventId != null){
         		if ("source".equals(atts.getValue("name"))){
-        			currentEventSource = (int) Long.parseLong(atts.getValue("value"), 16);
+        			currentEventSource = Long.parseLong(atts.getValue("value"), 16);
         		}
         		if ("timestamp".equals(atts.getValue("name"))){
@@ -361,5 +361,5 @@
         		}
         		else if ("parent".equals(atts.getValue("name"))) {
-        			currentParentHash = (int) Long.parseLong(atts.getValue("value"), 16);
+        			currentParentHash = Long.parseLong(atts.getValue("value"), 16);
         		}
             }
