aboutsummaryrefslogtreecommitdiffstats
path: root/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'server/src')
-rw-r--r--server/src/com/vaadin/data/fieldgroup/FieldGroup.java17
-rw-r--r--server/src/com/vaadin/ui/Grid.java44
-rw-r--r--server/src/com/vaadin/ui/TabSheet.java30
3 files changed, 65 insertions, 26 deletions
diff --git a/server/src/com/vaadin/data/fieldgroup/FieldGroup.java b/server/src/com/vaadin/data/fieldgroup/FieldGroup.java
index d370c3906b..aaaae9e4f7 100644
--- a/server/src/com/vaadin/data/fieldgroup/FieldGroup.java
+++ b/server/src/com/vaadin/data/fieldgroup/FieldGroup.java
@@ -258,7 +258,19 @@ public class FieldGroup implements Serializable {
if (itemDataSource == null) {
// Clear any possible existing binding to clear the field
field.setPropertyDataSource(null);
- field.clear();
+ boolean fieldReadOnly = field.isReadOnly();
+ if (!fieldReadOnly) {
+ field.clear();
+ } else {
+ // Temporarily make the field read-write so we can clear the
+ // value. Needed because setPropertyDataSource(null) does not
+ // currently clear the field
+ // (https://dev.vaadin.com/ticket/14733)
+ field.setReadOnly(false);
+ field.clear();
+ field.setReadOnly(true);
+ }
+
// Will be bound when data source is set
return;
}
@@ -1247,4 +1259,5 @@ public class FieldGroup implements Serializable {
}
}
-}
+
+} \ No newline at end of file
diff --git a/server/src/com/vaadin/ui/Grid.java b/server/src/com/vaadin/ui/Grid.java
index 77785c301b..74f58ecf74 100644
--- a/server/src/com/vaadin/ui/Grid.java
+++ b/server/src/com/vaadin/ui/Grid.java
@@ -889,7 +889,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* Marks an item as selected.
*
- * @param itemIds
+ * @param itemId
* the itemId to mark as selected; <code>null</code> for
* deselect
* @return <code>true</code> if the selection state changed.
@@ -2039,7 +2039,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* Removes the row at the given position.
*
- * @param index
+ * @param rowIndex
* the position of the row
*
* @throws IllegalArgumentException
@@ -2536,7 +2536,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
private Converter<?, Object> converter;
/**
- * A check for allowing the {@link #Column(Grid, GridColumnState)
+ * A check for allowing the {@link #Column(Grid, GridColumnState, Object)
* constructor} to call {@link #setConverter(Converter)} with a
* <code>null</code>, even if model and renderer aren't compatible.
*/
@@ -3196,7 +3196,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
*
* @throws IllegalArgumentException
* if there is no column for the provided property id
- * @throws BindException
+ * @throws FieldGroup.BindException
* if no field has been configured and there is a problem
* building or binding
*/
@@ -3367,12 +3367,12 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
}
/**
- * An abstract base class for server-side Grid renderers.
- * {@link com.vaadin.client.widget.grid.Renderer Grid renderers}. This class
- * currently extends the AbstractGridExtension superclass, but this fact
- * should be regarded as an implementation detail and subject to change in a
- * future major or minor Vaadin revision.
- *
+ * An abstract base class for server-side
+ * {@link com.vaadin.ui.renderers.Renderer Grid renderers}. This class
+ * currently extends the AbstractExtension superclass, but this fact should
+ * be regarded as an implementation detail and subject to change in a future
+ * major or minor Vaadin revision.
+ *
* @param <T>
* the type this renderer knows how to present
*/
@@ -3443,7 +3443,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
* is desired. For instance, a {@code Renderer<Date>} could first turn a
* date value into a formatted string and return
* {@code encode(dateString, String.class)}.
- *
+ *
* @param value
* the value to be encoded
* @param type
@@ -3458,7 +3458,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* An abstract base class for server-side Grid extensions.
- *
+ *
* @since 7.5
*/
public static abstract class AbstractGridExtension extends
@@ -3473,7 +3473,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* Constructs a new Grid extension and extends given Grid.
- *
+ *
* @param grid
* a grid instance
*/
@@ -3632,7 +3632,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
* in Grid() constructor, or <code>false</code> if the user has set their
* own Container.
*
- * @see #setContainerDataSource()
+ * @see #setContainerDataSource(Indexed)
* @see #Grid()
*/
private boolean defaultContainer = true;
@@ -4626,7 +4626,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
* @throws IllegalArgumentException
* if {@code rows} is zero or less
* @throws IllegalArgumentException
- * if {@code rows} is {@link Double#isInifinite(double)
+ * if {@code rows} is {@link Double#isInfinite(double)
* infinite}
* @throws IllegalArgumentException
* if {@code rows} is {@link Double#isNaN(double) NaN}
@@ -4872,7 +4872,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
* {@link SelectionModel.Single} and {@link SelectionModel.Multi} are
* supported.
*
- * @param itemIds
+ * @param itemId
* the itemId to mark as selected
* @return <code>true</code> if the selection state changed,
* <code>false</code> if the itemId already was selected
@@ -4965,10 +4965,10 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
* {@link SelectionModel SelectionModels} would be able to inform Grid of
* these events.
*
- * @param addedSelections
- * the selections that were added by this event
- * @param removedSelections
- * the selections that were removed by this event
+ * @param newSelection
+ * the selection that was added by this event
+ * @param oldSelection
+ * the selection that was removed by this event
*/
public void fireSelectionEvent(Collection<Object> oldSelection,
Collection<Object> newSelection) {
@@ -5348,7 +5348,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* Removes the row at the given position from the header section.
*
- * @param index
+ * @param rowIndex
* the position of the row
*
* @throws IllegalArgumentException
@@ -5495,7 +5495,7 @@ public class Grid extends AbstractFocusable implements SelectionNotifier,
/**
* Removes the row at the given position from the footer section.
*
- * @param index
+ * @param rowIndex
* the position of the row
*
* @throws IllegalArgumentException
diff --git a/server/src/com/vaadin/ui/TabSheet.java b/server/src/com/vaadin/ui/TabSheet.java
index 67dfdd4258..592515c560 100644
--- a/server/src/com/vaadin/ui/TabSheet.java
+++ b/server/src/com/vaadin/ui/TabSheet.java
@@ -478,9 +478,11 @@ public class TabSheet extends AbstractComponentContainer implements Focusable,
* Are the tab selection parts ("tabs") hidden.
*
* @return true if the tabs are hidden in the UI
+ * @deprecated as of 7.5, use {@link #isTabsVisible()} instead
*/
+ @Deprecated
public boolean areTabsHidden() {
- return !getState(false).tabsVisible;
+ return !isTabsVisible();
}
/**
@@ -488,9 +490,33 @@ public class TabSheet extends AbstractComponentContainer implements Focusable,
*
* @param tabsHidden
* true if the tabs should be hidden
+ * @deprecated as of 7.5, use {@link #setTabsVisible(boolean)} instead
*/
+ @Deprecated
public void hideTabs(boolean tabsHidden) {
- getState().tabsVisible = !tabsHidden;
+ setTabsVisible(!tabsHidden);
+ }
+
+ /**
+ * Sets whether the tab selection part should be shown in the UI
+ *
+ * @since 7.5
+ * @param tabsVisible
+ * true if the tabs should be shown in the UI, false otherwise
+ */
+ public void setTabsVisible(boolean tabsVisible) {
+ getState().tabsVisible = tabsVisible;
+ }
+
+ /**
+ * Checks if the tab selection part should be shown in the UI
+ *
+ * @return true if the tabs are shown in the UI, false otherwise
+ * @since 7.5
+ */
+ public boolean isTabsVisible() {
+ return getState(false).tabsVisible;
+
}
/**