From 95d39d8b0518c036aeae22c25a3c370d5be2e688 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Thu, 4 Jan 2018 21:05:13 +0100
Subject: [PATCH] OO-3228: add some listenTo

---
 .../olat/ims/qti/editor/ItemNodeTabbedFormController.java | 6 +++++-
 .../org/olat/ims/qti/qpool/QTIQPoolServiceProvider.java   | 8 ++------
 .../qti21/ui/editor/AssessmentItemEditorController.java   | 4 ++--
 .../modules/qpool/ui/metadata/MetadatasController.java    | 2 ++
 4 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/olat/ims/qti/editor/ItemNodeTabbedFormController.java b/src/main/java/org/olat/ims/qti/editor/ItemNodeTabbedFormController.java
index c7804c4b9bb..1bc3e26fab5 100644
--- a/src/main/java/org/olat/ims/qti/editor/ItemNodeTabbedFormController.java
+++ b/src/main/java/org/olat/ims/qti/editor/ItemNodeTabbedFormController.java
@@ -87,6 +87,9 @@ public class ItemNodeTabbedFormController extends TabbableDefaultController {
 				itemCtrl = new EssayItemController(ureq, getWindowControl(), item, qtiPackage, getTranslator(), restrictedEdit);
 				break;
 		}
+		if(itemCtrl != null) {
+			listenTo(itemCtrl);
+		}
 	}
 
 	/**
@@ -151,11 +154,12 @@ public class ItemNodeTabbedFormController extends TabbableDefaultController {
 			int questionType = item.getQuestion().getType();
 			
 			tabbedPane.addTab(translate("tab.question"), itemCtrl.getInitialComponent());			
-			listenTo(itemCtrl);
+			
 			if (!isSurvey && questionType != Question.TYPE_ESSAY) {
 				tabbedPane.addTab(translate("tab.feedback"), feedbackPanel);
 			}
 			Controller itemPreviewController = new ItemPreviewController(getWindowControl(), item, qtiPackage, getTranslator());
+			listenTo(itemPreviewController);
 			tabbedPane.addTab(translate("tab.preview"), itemPreviewController.getInitialComponent());
 			tabbedPane.addListener(itemPreviewController);
 		}
diff --git a/src/main/java/org/olat/ims/qti/qpool/QTIQPoolServiceProvider.java b/src/main/java/org/olat/ims/qti/qpool/QTIQPoolServiceProvider.java
index a2c0d19048c..d0dc7e2ebbe 100644
--- a/src/main/java/org/olat/ims/qti/qpool/QTIQPoolServiceProvider.java
+++ b/src/main/java/org/olat/ims/qti/qpool/QTIQPoolServiceProvider.java
@@ -361,8 +361,7 @@ public class QTIQPoolServiceProvider implements QPoolSPI {
 
 	@Override
 	public Controller getPreviewController(UserRequest ureq, WindowControl wControl, QuestionItem item, boolean summary) {
-		QTI12PreviewController previewCtrl = new QTI12PreviewController(ureq, wControl, item, summary);
-		return previewCtrl;
+		return new QTI12PreviewController(ureq, wControl, item, summary);
 	}
 
 	@Override
@@ -372,9 +371,6 @@ public class QTIQPoolServiceProvider implements QPoolSPI {
 
 	@Override
 	public Controller getEditableController(UserRequest ureq, WindowControl wControl, QuestionItem item) {
-		QTI12EditorController previewCtrl = new QTI12EditorController(ureq, wControl, item);
-		return previewCtrl;
+		return new QTI12EditorController(ureq, wControl, item);
 	}
-	
-
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
index c3372ffd688..31632355f02 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
@@ -139,7 +139,7 @@ public class AssessmentItemEditorController extends BasicController {
 			displayTabPosition = tabbedPane.addTab(translate("preview"), displayCtrl);
 		
 			solutionCtrl = new AssessmentItemPreviewSolutionController(ureq, getWindowControl(), resolvedAssessmentItem, rootDirectory, itemFile);
-			listenTo(displayCtrl);
+			listenTo(solutionCtrl);
 			solutionTabPosition = tabbedPane.addTab(translate("preview.solution"), solutionCtrl);
 		}
 		
@@ -181,7 +181,7 @@ public class AssessmentItemEditorController extends BasicController {
 			displayTabPosition = tabbedPane.addTab(translate("preview"), displayCtrl);
 
 			solutionCtrl = new AssessmentItemPreviewSolutionController(ureq, getWindowControl(), resolvedAssessmentItem, rootDirectory, itemFile);
-			listenTo(displayCtrl);
+			listenTo(solutionCtrl);
 			solutionTabPosition = tabbedPane.addTab(translate("preview.solution"), solutionCtrl);
 		}
 
diff --git a/src/main/java/org/olat/modules/qpool/ui/metadata/MetadatasController.java b/src/main/java/org/olat/modules/qpool/ui/metadata/MetadatasController.java
index 69e978b5997..8d61a4532ff 100644
--- a/src/main/java/org/olat/modules/qpool/ui/metadata/MetadatasController.java
+++ b/src/main/java/org/olat/modules/qpool/ui/metadata/MetadatasController.java
@@ -85,11 +85,13 @@ public class MetadatasController extends BasicController {
 
 		if (qpoolModule.isPoolsEnabled()) {
 			poolsCtrl = new PoolsMetadataController(ureq, wControl, item);
+			listenTo(poolsCtrl);
 			mainVC.put("details_pools", poolsCtrl.getInitialComponent());
 		}
 		
 		if (qpoolModule.isSharesEnabled()) {
 			sharesController = new SharesMetadataController(ureq, wControl, item);
+			listenTo(sharesController);
 			mainVC.put("details_shares", sharesController.getInitialComponent());
 		}
 
-- 
GitLab