menu.setDebugId("menu");\r
mainMenu = menu.addItem("Component", null);\r
settingsMenu = menu.addItem("Settings", null);\r
- createSettingsMenu();\r
+ populateSettingsMenu(settingsMenu);\r
\r
return menu;\r
}\r
\r
- private void createSettingsMenu() {\r
+ /**\r
+ * Override to add items to the "settings" menu.\r
+ * \r
+ * NOTE, Call super class first to preserve current order. If you override\r
+ * this in a class and another class overrides it you might break tests\r
+ * because the wrong items will be selected.\r
+ * \r
+ * @param settingsMenu\r
+ */\r
+ protected void populateSettingsMenu(MenuItem settingsMenu) {\r
+\r
MenuItem showEventLog = settingsMenu.addItem("Show event log",\r
new MenuBar.Command() {\r
\r
import java.util.List;\r
import java.util.Locale;\r
\r
+import com.vaadin.data.Property;\r
import com.vaadin.data.Property.ReadOnlyStatusChangeEvent;\r
import com.vaadin.data.Property.ReadOnlyStatusChangeListener;\r
import com.vaadin.data.Property.ValueChangeListener;\r
import com.vaadin.event.FieldEvents.FocusNotifier;\r
import com.vaadin.tests.components.AbstractComponentTest;\r
import com.vaadin.ui.AbstractField;\r
+import com.vaadin.ui.MenuBar;\r
+import com.vaadin.ui.MenuBar.MenuItem;\r
\r
public abstract class AbstractFieldTest<T extends AbstractField> extends\r
AbstractComponentTest<T> implements ValueChangeListener,\r
\r
}\r
\r
+ @Override\r
+ protected void populateSettingsMenu(MenuItem settingsMenu) {\r
+ super.populateSettingsMenu(settingsMenu);\r
+\r
+ if (AbstractField.class.isAssignableFrom(getTestClass())) {\r
+ MenuItem abstractField = settingsMenu\r
+ .addItem("AbstractField", null);\r
+ abstractField.addItem("Show value", new MenuBar.Command() {\r
+\r
+ public void menuSelected(MenuItem selectedItem) {\r
+ for (T a : getTestComponents()) {\r
+ log(a.getClass().getSimpleName() + " value: "\r
+ + getValue(a));\r
+ }\r
+ }\r
+ });\r
+ }\r
+ }\r
+\r
private void createRequiredErrorSelect(String category) {\r
LinkedHashMap<String, String> options = new LinkedHashMap<String, String>();\r
options.put("-", null);\r
}\r
};\r
\r
- @SuppressWarnings({ "rawtypes", "unchecked" })\r
public void valueChange(com.vaadin.data.Property.ValueChangeEvent event) {\r
- Object o = event.getProperty().getValue();\r
+ log(event.getClass().getSimpleName() + ", new value: "\r
+ + getValue(event.getProperty()));\r
+ };\r
+\r
+ @SuppressWarnings({ "rawtypes", "unchecked" })\r
+ private String getValue(Property property) {\r
+ Object o = property.getValue();\r
if (o instanceof Collection) {\r
// Sort collections to avoid problems with values printed in\r
// different order\r
}\r
}\r
\r
- log(event.getClass().getSimpleName() + ", new value: " + value);\r
- };\r
+ return value;\r
+\r
+ }\r
\r
public void readOnlyStatusChange(ReadOnlyStatusChangeEvent event) {\r
log(event.getClass().getSimpleName());\r