@SuppressWarnings({ "rawtypes", "unchecked" })
public FieldSet CreateChantierFieldset() {
new Listener<MessageBoxEvent>() {
@Override
public void handleEvent(MessageBoxEvent be) {
Button btn = be.getButtonClicked();
if (btn.getText() == "Yes") {
storeRole.rejectChanges();
}
}
};
LayoutContainer layoutChantier = new LayoutContainer();
List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
GridCellRenderer<UtilisateurGrpModel> deleteBtn = deleteButtonGridRole();
ColumnConfig column = new ColumnConfig("supprimer", "Supprimer", 75);
column.setSortable(false);
column.setMenuDisabled(true);
column.setGroupable(false);
column.setFixed(true);
column.setResizable(false);
column.setRenderer(deleteBtn);
column.setAlignment(HorizontalAlignment.LEFT);
configs.add(column);
column_1 = new ColumnConfig();// id
column_1.setHeader("Utilisateur/Groupe");
column_1.setId("identifiant");
column_1.setSortable(false);
column_1.setMenuDisabled(true);
column_1.setResizable(false);
column_1.setAlignment(HorizontalAlignment.LEFT);
configs.add(column_1);
chkBox1 = new CheckBox();
CellEditor checkboxEditor1 = new CellEditor(chkBox1);
column_2 = new CheckColumnConfig(UtilisateurGrpModel.B_Lecteur, "Lecteur", 100) {
};
column_2.setEditor(checkboxEditor1);
column_2.setAlignment(HorizontalAlignment.LEFT);// id
column_2.setSortable(false);
column_2.setMenuDisabled(true);
column_2.setResizable(false);
configs.add(column_2);
chkBox2 = new CheckBox();
CellEditor checkboxEditor2 = new CellEditor(chkBox2);
column_3 = new CheckColumnConfig(UtilisateurGrpModel.B_Contributeur, "Contributeur", 100) {
};
column_3.setAlignment(HorizontalAlignment.LEFT);
column_3.setEditor(checkboxEditor2);
column_3.setSortable(false);
column_3.setMenuDisabled(true);
column_3.setResizable(false);
configs.add(column_3); // model,header
storeRole = new ListStore<UtilisateurGrpModel>();
ColumnModel cm = new ColumnModel(configs);
gridUserInChantier = new EditorGrid<UtilisateurGrpModel>(storeRole, cm);
gridUserInChantier.setColumnReordering(true);
gridUserInChantier.setColumnLines(true);
gridUserInChantier.setAutoExpandColumn("identifiant");
gridUserInChantier.setAutoExpandMax(500);
gridUserInChantier.setAutoExpandMin(200);
gridUserInChantier.setBorders(true);
gridUserInChantier.setStripeRows(true);
gridUserInChantier.setHeight(345);
gridUserInChantier.addPlugin(column_2);
gridUserInChantier.addPlugin(column_3);
gridUserInChantier.getStore().addStoreListener(new StoreListener<UtilisateurGrpModel>() {
@Override
public void storeDataChanged(StoreEvent<UtilisateurGrpModel> se) {
super.storeDataChanged(se);
}
@Override
public void storeRemove(StoreEvent<UtilisateurGrpModel> se) {
super.storeRemove(se);
isDelete = true;
}
@Override
public void storeUpdate(StoreEvent<UtilisateurGrpModel> se) {
super.storeUpdate(se);
isUpdate = true;
}
});
FieldSet fieldSet = new FieldSet();
fieldSet.setStyleAttribute("backgroundColor", "#EDF5EA");
fieldSet.setHeading("Droits d’accès aux chantiers ");
fieldSet.setHeight(460);
fieldSet.setWidth(RootPanel.get().getOffsetWidth() / 2 - 20);
LayoutContainer layoutContainer = new LayoutContainer();
layoutContainer.setLayout(new ColumnLayout());
layoutContainer.setBorders(false);
layoutContainer.setAutoWidth(true);
LabelField lblfldNouveauxAdministrateur = new LabelField("Nouveaux:");
layoutContainer.add(lblfldNouveauxAdministrateur);
layoutContainer.add(new Html(" "));
txtChantier = new TextField();
com.extjs.gxt.ui.client.widget.layout.ColumnData cd_txtChantier = new com.extjs.gxt.ui.client.widget.layout.ColumnData();
cd_txtChantier.setWidth(0.85);
layoutContainer.add(txtChantier, cd_txtChantier);
txtChantier.setFieldLabel("New TextField");
txtChantier.setWidth("80%");
txtChantier.addKeyListener(new KeyListener() {
@Override
public void componentKeyUp(ComponentEvent event) {
if (txtChantier.getValue() != null && !txtChantier.getValue().trim().isEmpty() && txtChantier.getValue().toLowerCase().matches("\\b.{0,60}\\\\+.{1,60}")) {
btnAdd.setEnabled(true);
} else {
btnAdd.setEnabled(false);
}
}
});
txtChantier.setWidth("35%");
txtChantier.setToolTip("Hint:domain\\loginname");
SelectionListener<ButtonEvent> add = AddButtonEventGridRole();
btnAdd = new Button("Ajouter");
btnAdd.addSelectionListener(add);
btnAdd.setEnabled(false);
layoutContainer.add(new Html(" "));
layoutContainer.add(btnAdd, new com.extjs.gxt.ui.client.widget.layout.ColumnData(100.0));