From 6f357a0f24ca80e218f258be5ad4e234d3a5a7ff Mon Sep 17 00:00:00 2001
From: Nils Christian Ehmke <nie@informatik.uni-kiel.de>
Date: Sun, 22 Jul 2012 13:52:41 +0200
Subject: [PATCH] Made sure that rows are selected correctly in the project
 overview.

---
 .../beans/view/CurrentProjectOverviewBean.java       | 12 ++++++++++++
 Kieker.WebGUI/src/main/webapp/ProjectOverview.xhtml  |  3 +++
 2 files changed, 15 insertions(+)

diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java
index 3819230b..13885168 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java
@@ -31,6 +31,8 @@ import javax.faces.context.FacesContext;
 
 import kieker.webgui.beans.application.ProjectsBean;
 
+import org.primefaces.event.SelectEvent;
+
 /**
  * This bean is used in the context of the project overview page.
  * 
@@ -76,6 +78,16 @@ public class CurrentProjectOverviewBean {
 		this.projectName = projectName;
 	}
 
+	/**
+	 * This is the event listener used to select a row instantaneously.
+	 * 
+	 * @param event
+	 *            The select event.
+	 */
+	public void onRowSelect(final SelectEvent event) {
+		this.setProjectName((String) event.getObject());
+	}
+
 	/**
 	 * This method should only be called automatically by the JVM to update the projects list.
 	 */
diff --git a/Kieker.WebGUI/src/main/webapp/ProjectOverview.xhtml b/Kieker.WebGUI/src/main/webapp/ProjectOverview.xhtml
index e8756edd..79b6afaf 100644
--- a/Kieker.WebGUI/src/main/webapp/ProjectOverview.xhtml
+++ b/Kieker.WebGUI/src/main/webapp/ProjectOverview.xhtml
@@ -55,6 +55,9 @@
             <p:layoutUnit position="center">
                 <h:form id="projectsListForm"> 
                     <p:dataTable rows="15" paginator="true" paginatorPosition="both" var="project" rowsPerPageTemplate="5,10,15,25,50" value="#{currentProjectOverviewBean.projects}" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" selection="#{currentProjectOverviewBean.projectName}" rowKey="#{project}" selectionMode="single">  
+                         <!-- Makes sure that rows are selected instantaneously. -->
+                        <p:ajax event="rowSelect" listener="#{currentProjectOverviewBean.onRowSelect}" />
+                        
                         <p:column headerText="Project Name" id="modelHeader" sortBy="#{project}">  
                             <p:commandLink id="dynaButton" value="#{project}"/>
 
-- 
GitLab