com.vaadin.ui.components.grid.GridSelectionModel Maven / Gradle / Ivy
/*
* Copyright (C) 2000-2024 Vaadin Ltd
*
* This program is available under Vaadin Commercial License and Service Terms.
*
* See for the full
* license.
*/
package com.vaadin.ui.components.grid;
import com.vaadin.data.SelectionModel;
import com.vaadin.server.Extension;
import com.vaadin.ui.Grid.AbstractGridExtension;
/**
* The server-side interface that controls Grid's selection state.
* SelectionModel should extend {@link AbstractGridExtension}.
*
* @author Vaadin Ltd
* @since 8.0
*
* @param
* the grid bean type
* @see AbstractSelectionModel
* @see SingleSelectionModel
* @see MultiSelectionModel
*/
public interface GridSelectionModel extends SelectionModel, Extension {
/**
* Removes this selection model from the grid.
*
* Must call super {@link Extension#remove()} to detach the extension, and
* fire an selection change event for the selection model (with an empty
* selection).
*/
@Override
public void remove();
/**
* Sets whether the user is allowed to change the selection.
*
* The check is done only for the client side actions. It doesn't affect
* selection requests sent from the server side.
*
* @param allowed
* true
if the user is allowed to change the
* selection, false
otherwise
*/
public void setUserSelectionAllowed(boolean allowed);
/**
* Checks if the user is allowed to change the selection.
*
* The check is done only for the client side actions. It doesn't affect
* selection requests sent from the server side.
*
* @return true
if the user is allowed to change the selection,
* false
otherwise
*/
public boolean isUserSelectionAllowed();
}