use of com.vaadin.v7.event.ItemClickEvent in project opencms-core by alkacon.
the class CmsRoleTable method init.
/**
* initializes table.
*
* @param roles list of user
*/
private void init(List<CmsRole> roles) {
CmsRole.applySystemRoleOrder(roles);
m_menu = new CmsContextMenu();
m_menu.setAsTableContextMenu(this);
m_container = new IndexedContainer();
for (TableProperty prop : TableProperty.values()) {
m_container.addContainerProperty(prop, prop.getType(), prop.getDefault());
setColumnHeader(prop, prop.getName());
}
setContainerDataSource(m_container);
setItemIconPropertyId(TableProperty.Icon);
setRowHeaderMode(RowHeaderMode.ICON_ONLY);
setColumnWidth(null, 40);
setSelectable(true);
setVisibleColumns(TableProperty.Name, TableProperty.OU);
for (CmsRole role : roles) {
Item item = m_container.addItem(role);
item.getItemProperty(TableProperty.Name).setValue(role.getName(A_CmsUI.get().getLocale()));
item.getItemProperty(TableProperty.Description).setValue(role.getDescription(A_CmsUI.get().getLocale()));
item.getItemProperty(TableProperty.OU).setValue(role.getOuFqn());
}
addItemClickListener(new ItemClickListener() {
private static final long serialVersionUID = 4807195510202231174L;
public void itemClick(ItemClickEvent event) {
setValue(null);
select(event.getItemId());
if (event.getButton().equals(MouseButton.RIGHT) || (event.getPropertyId() == null)) {
m_menu.setEntries(getMenuEntries(), Collections.singleton(((CmsRole) getValue()).getId().getStringValue()));
m_menu.openForTable(event, event.getItemId(), event.getPropertyId(), CmsRoleTable.this);
} else if (event.getButton().equals(MouseButton.LEFT) && event.getPropertyId().equals(TableProperty.Name)) {
updateApp((CmsRole) getValue());
}
}
});
setCellStyleGenerator(new CellStyleGenerator() {
private static final long serialVersionUID = 1L;
public String getStyle(Table source, Object itemId, Object propertyId) {
if (TableProperty.Name.equals(propertyId)) {
return " " + OpenCmsTheme.HOVER_COLUMN;
}
return "";
}
});
setVisibleColumns(TableProperty.Name, TableProperty.Description, TableProperty.OU);
}
use of com.vaadin.v7.event.ItemClickEvent in project opencms-core by alkacon.
the class CmsProjectsTable method onItemClick.
/**
* Handles the table item clicks.<p>
*
* @param event the click event
*/
@SuppressWarnings("unchecked")
void onItemClick(ItemClickEvent event) {
if (!event.isCtrlKey() && !event.isShiftKey()) {
// don't interfere with multi-selection using control key
if (event.getButton().equals(MouseButton.RIGHT) || (event.getPropertyId() == null)) {
CmsUUID itemId = (CmsUUID) event.getItemId();
Set<CmsUUID> value = (Set<CmsUUID>) getValue();
if (value == null) {
select(itemId);
} else if (!value.contains(itemId)) {
setValue(null);
select(itemId);
}
m_menu.setEntries(getMenuEntries(), (Set<CmsUUID>) getValue());
m_menu.openForTable(event, this);
} else if (event.getButton().equals(MouseButton.LEFT) && PROP_NAME.equals(event.getPropertyId())) {
Item item = event.getItem();
CmsUUID id = (CmsUUID) item.getItemProperty(PROP_ID).getValue();
m_manager.openSubView(A_CmsWorkplaceApp.addParamToState(CmsProjectManager.PATH_NAME_FILES, "projectId", id.toString()), true);
} else if (event.getButton().equals(MouseButton.LEFT) && PROP_RESOURCES.equals(event.getPropertyId())) {
Item item = event.getItem();
showProjectResources(item);
}
}
}
use of com.vaadin.v7.event.ItemClickEvent in project SORMAS-Project by hzi-braunschweig.
the class AbstractTableField method createEditColumn.
protected void createEditColumn(Table table) {
ColumnGenerator editColumnGenerator = new ColumnGenerator() {
@Override
public Object generateCell(Table source, Object itemId, Object columnId) {
return generateEditCell(itemId);
}
};
table.addGeneratedColumn(EDIT_COLUMN_ID, editColumnGenerator);
table.setColumnWidth(EDIT_COLUMN_ID, 20);
table.setColumnHeader(EDIT_COLUMN_ID, "");
table.addItemClickListener(new ItemClickListener() {
@SuppressWarnings("unchecked")
@Override
public void itemClick(ItemClickEvent event) {
if (event.isDoubleClick() || EDIT_COLUMN_ID.equals(event.getPropertyId())) {
final E entry = (E) event.getItemId();
if (entry != null) {
editEntry(entry, false, result -> onEntryChanged(result));
}
}
}
});
}
use of com.vaadin.v7.event.ItemClickEvent in project opencms-core by alkacon.
the class CmsPropertyTable method init.
/**
* Fills table with items.<p>
*/
public void init() {
try {
List<CmsPropertyDefinition> properties = A_CmsUI.getCmsObject().readAllPropertyDefinitions();
m_container = new IndexedContainer();
for (TableColumn col : TableColumn.values()) {
m_container.addContainerProperty(col, col.getType(), col.getDefaultValue());
}
setContainerDataSource(m_container);
setItemIconPropertyId(TableColumn.Icon);
setRowHeaderMode(RowHeaderMode.ICON_ONLY);
setVisibleColumns(TableColumn.Name);
for (CmsPropertyDefinition prop : properties) {
Item item = m_container.addItem(prop);
item.getItemProperty(TableColumn.Name).setValue(prop.getName());
}
addItemClickListener(new ItemClickListener() {
private static final long serialVersionUID = 4807195510202231174L;
public void itemClick(ItemClickEvent event) {
setValue(null);
select(event.getItemId());
if (event.getButton().equals(MouseButton.RIGHT) || (event.getPropertyId() == null)) {
m_menu.setEntries(getMenuEntries(), Collections.singleton(((CmsPropertyDefinition) getValue()).getName()));
m_menu.openForTable(event, event.getItemId(), event.getPropertyId(), CmsPropertyTable.this);
} else if (TableColumn.Name.equals(event.getPropertyId())) {
showResources(((CmsPropertyDefinition) getValue()).getName());
}
}
});
setCellStyleGenerator(new CellStyleGenerator() {
private static final long serialVersionUID = 1L;
public String getStyle(Table source, Object itemId, Object propertyId) {
if (TableColumn.Name.equals(propertyId)) {
return " " + OpenCmsTheme.HOVER_COLUMN;
}
return null;
}
});
} catch (CmsException e) {
//
}
}
use of com.vaadin.v7.event.ItemClickEvent in project opencms-core by alkacon.
the class CmsGroupTable method init.
/**
* Initializes the table.<p>
*
* @param ou name
*/
protected void init(String ou) {
m_menu = new CmsContextMenu();
m_menu.setAsTableContextMenu(this);
m_container = new IndexedContainer();
for (TableProperty prop : TableProperty.values()) {
m_container.addContainerProperty(prop, prop.getType(), prop.getDefault());
setColumnHeader(prop, prop.getName());
}
m_app.addGroupContainerProperties(m_container);
setContainerDataSource(m_container);
setItemIconPropertyId(TableProperty.Icon);
setRowHeaderMode(RowHeaderMode.ICON_ONLY);
setColumnWidth(null, 40);
setSelectable(true);
setMultiSelect(true);
for (CmsGroup group : m_groups) {
Item item = m_container.addItem(group);
m_app.fillGroupItem(item, group, m_indirects);
}
addItemClickListener(new ItemClickListener() {
private static final long serialVersionUID = 4807195510202231174L;
@SuppressWarnings("unchecked")
public void itemClick(ItemClickEvent event) {
changeValueIfNotMultiSelect(event.getItemId());
if (event.getButton().equals(MouseButton.RIGHT) || (event.getPropertyId() == null)) {
Set<String> groupIds = new HashSet<String>();
for (CmsGroup group : (Set<CmsGroup>) getValue()) {
groupIds.add(group.getId().getStringValue());
}
m_menu.setEntries(getMenuEntries(), groupIds);
m_menu.openForTable(event, event.getItemId(), event.getPropertyId(), CmsGroupTable.this);
return;
}
if (event.getButton().equals(MouseButton.LEFT) && event.getPropertyId().equals(TableProperty.Name)) {
updateApp((((Set<CmsGroup>) getValue()).iterator().next()).getId().getStringValue());
}
}
});
setCellStyleGenerator(new CellStyleGenerator() {
private static final long serialVersionUID = 1L;
public String getStyle(Table source, Object itemId, Object propertyId) {
String css = "";
if (((Boolean) source.getItem(itemId).getItemProperty(TableProperty.INDIRECT).getValue()).booleanValue()) {
css += " " + OpenCmsTheme.TABLE_CELL_DISABLED + " " + OpenCmsTheme.EXPIRED;
}
if (TableProperty.Name.equals(propertyId)) {
css += " " + OpenCmsTheme.HOVER_COLUMN;
}
return css;
}
});
setVisibleColumns(TableProperty.Name, TableProperty.Description, TableProperty.OU);
}
Aggregations