Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremie Bresson2014-05-20 07:24:07 +0000
committerJeremie Bresson2014-05-20 07:24:07 +0000
commita2331120b178f90367377756b12ff9a9cd98089e (patch)
treede539cccbff80632d1bd031334b2930d1005da1e
parent4269030d399e935fd34c1bcd11353217347f225c (diff)
downloadorg.eclipse.scout.rt-a2331120b178f90367377756b12ff9a9cd98089e.tar.gz
org.eclipse.scout.rt-a2331120b178f90367377756b12ff9a9cd98089e.tar.xz
org.eclipse.scout.rt-a2331120b178f90367377756b12ff9a9cd98089e.zip
Bug 422646: Possibility to add Toolbuttons in Form
- use generics in getToolButtonByClass(..) https://bugs.eclipse.org/bugs/show_bug.cgi?id=422646 Change-Id: I3021f6416ac89bc53b655aebffa8b950fdc5c962
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/form/FormWithToolButtonsFormTest.java3
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/AbstractForm.java6
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/IForm.java2
3 files changed, 8 insertions, 3 deletions
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/form/FormWithToolButtonsFormTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/form/FormWithToolButtonsFormTest.java
index fc6971304b..a7e5767b7a 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/form/FormWithToolButtonsFormTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/form/FormWithToolButtonsFormTest.java
@@ -35,6 +35,9 @@ public class FormWithToolButtonsFormTest {
assertEquals(2, form.getToolButtons().size());
assertEquals(ToolButton01.class.getSimpleName(), form.getToolButtons().get(0).getClass().getSimpleName());
assertEquals(ToolButton02.class.getSimpleName(), form.getToolButtons().get(1).getClass().getSimpleName());
+
+ ToolButton01 toolButton = form.getToolButtonByClass(ToolButton01.class);
+ assertEquals(ToolButton01.class.getSimpleName(), toolButton);
}
public class FormWithToolButtonsForm extends AbstractForm {
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/AbstractForm.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/AbstractForm.java
index f9d01316ff..522342d280 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/AbstractForm.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/AbstractForm.java
@@ -663,10 +663,12 @@ public abstract class AbstractForm extends AbstractPropertyObserver implements I
}
@Override
- public IToolButton getToolButtonByClass(Class<? extends IToolButton> clazz) {
+ public <T extends IToolButton> T getToolButtonByClass(Class<T> clazz) {
for (IToolButton b : m_toolbuttons) {
if (b.getClass() == clazz) {
- return b;
+ @SuppressWarnings("unchecked")
+ T button = (T) b;
+ return button;
}
}
return null;
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/IForm.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/IForm.java
index 8ba8a4afea..2bc9d67b5a 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/IForm.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/form/IForm.java
@@ -547,7 +547,7 @@ public interface IForm extends IPropertyObserver, ITypeWithSettableClassId {
* @return toolbutton
* @since Scout 4.0.0-M7
*/
- IToolButton getToolButtonByClass(Class<? extends IToolButton> clazz);
+ <T extends IToolButton> T getToolButtonByClass(Class<T> clazz);
Object getProperty(String name);

Back to the top