Index: /trunk/quest-plugin-jfc-test/src/test/resources/corrected_trace.xml
===================================================================
--- /trunk/quest-plugin-jfc-test/src/test/resources/corrected_trace.xml	(revision 838)
+++ /trunk/quest-plugin-jfc-test/src/test/resources/corrected_trace.xml	(revision 839)
@@ -194,5 +194,5 @@
    <param name="title" value="FigTextEditor(height 27, alignment 0.0/0.0)" />
    <param name="class" value="org.tigris.gef.presentation.FigTextEditor" />
-   <param name="icon" value="null" />
+   <param name="icon" value="" />
    <param name="index" value="-1" />
    <param name="hash" value="7215a41d" />
@@ -240,5 +240,5 @@
    <param name="title" value="FigTextEditor(height 27, alignment 0.0/0.0)" />
    <param name="class" value="org.tigris.gef.presentation.FigTextEditor" />
-   <param name="icon" value="null" />
+   <param name="icon" value="" />
    <param name="index" value="-1" />
    <param name="hash" value="7215a41d" />
@@ -286,5 +286,5 @@
    <param name="title" value="FigTextEditor(height 27, alignment 0.0/0.0)" />
    <param name="class" value="org.tigris.gef.presentation.FigTextEditor" />
-   <param name="icon" value="null" />
+   <param name="icon" value="" />
    <param name="index" value="-1" />
    <param name="hash" value="7215a41d" />
@@ -292,3 +292,57 @@
  </source>
 </event>
+<event id="1004">
+ <source>
+  <param name="toString" value="org.tigris.gef.graph.presentation.JGraphInternalPane[,0,0,6000x6000,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=296,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=6000,height=6000]]" />
+  <component>
+   <param name="title" value="Pos(2,2)" />
+   <param name="class" value="org.argouml.uml.diagram.ui.DnDJGraph" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2a51e960" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JScrollPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="4391f0" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="org.tigris.gef.graph.presentation.JGraphInternalPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2250d5" />
+  </component>
+ </source>
+</event>
+<event id="402">
+ <param name="KeyCode" value="10" />
+ <param name="Modifiers" value="0" />
+ <source>
+  <param name="toString" value="org.tigris.gef.graph.presentation.JGraphInternalPane[,0,0,6000x6000,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=296,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=6000,height=6000]]" />
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JScrollPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="4391f0" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JViewport" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="12f8a84" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="org.tigris.gef.graph.presentation.JGraphInternalPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2250d5" />
+  </component>
+ </source>
+</event>
 </sessions>
Index: /trunk/quest-plugin-jfc-test/src/test/resources/uncorrected_trace.xml
===================================================================
--- /trunk/quest-plugin-jfc-test/src/test/resources/uncorrected_trace.xml	(revision 838)
+++ /trunk/quest-plugin-jfc-test/src/test/resources/uncorrected_trace.xml	(revision 839)
@@ -1,4 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <sessions>
+
+<!-- assert that this component hierarchy is reused for the next event -->
 <event id="1004">
  <source>
@@ -43,4 +45,8 @@
  </source>
 </event>
+
+
+<!-- assert that this event gets the same component hierarchy as the next event, as it has the same
+     to string value -->
 <event id="501">
  <param name="X" value="87" />
@@ -89,4 +95,7 @@
  </source>
 </event>
+
+<!-- the following events shall get the same component hierarchy as the previous event plus a
+     generated terminal node for the toString parameter specification -->
 <event id="1004">
  <source>
@@ -108,3 +117,61 @@
  </source>
 </event>
+
+<!-- the following events shall not get the same components because the components are different
+     (see hierarchy) but their toString parameter is the same -->
+<event id="1004">
+ <source>
+  <param name="toString" value="org.tigris.gef.graph.presentation.JGraphInternalPane[,0,0,6000x6000,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=296,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=6000,height=6000]]" />
+  <component>
+   <param name="title" value="Pos(2,2)" />
+   <param name="class" value="org.argouml.uml.diagram.ui.DnDJGraph" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2a51e960" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JScrollPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="4391f0" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="org.tigris.gef.graph.presentation.JGraphInternalPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2250d5" />
+  </component>
+ </source>
+</event>
+<event id="402">
+ <param name="KeyCode" value="10" />
+ <param name="Modifiers" value="0" />
+ <source>
+  <param name="toString" value="org.tigris.gef.graph.presentation.JGraphInternalPane[,0,0,6000x6000,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=296,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=6000,height=6000]]" />
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JScrollPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="4391f0" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="javax.swing.JViewport" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="12f8a84" />
+  </component>
+  <component>
+   <param name="title" value="Pos(0,0)" />
+   <param name="class" value="org.tigris.gef.graph.presentation.JGraphInternalPane" />
+   <param name="icon" value="null" />
+   <param name="index" value="0" />
+   <param name="hash" value="2250d5" />
+  </component>
+ </source>
+</event>
+
 </sessions>
