public void build(String headerText, Fact fact) { if (fact instanceof FactData) { FactData factData = (FactData) fact; widget.setWidget(0, ++col, new SmallLabel("[" + factData.getName() + "]")); } else { col++; } widget.setWidget(0, 0, new ClickableLabel(headerText, createAddFieldButton(fact))); // Sets row name and delete button. for (final Field field : fact.getFieldData()) { // Avoid duplicate field rows, only one for each name. if (rowIndexByFieldName.doesNotContain(field.getName())) { newRow(fact, field.getName()); } // Sets row data int fieldRowIndex = rowIndexByFieldName.getRowIndex(field.getName()); widget.setWidget(fieldRowIndex, col, editableCell(field, fact, fact.getType())); } if (fact instanceof FactData) { DeleteFactColumnButton deleteFactColumnButton = new DeleteFactColumnButton((FactData) fact); widget.setWidget(rowIndexByFieldName.amountOrRows() + 1, col, deleteFactColumnButton); } }
private void doLayout() { layout.clear(); for (int i = 0; i < model.fieldValues.length; i++) { ActionFieldValue val = model.fieldValues[i]; layout.setWidget(i, 0, getSetterLabel()); layout.setWidget(i, 1, fieldSelector(val)); layout.setWidget(i, 2, valueEditor(val)); final int idx = i; Image remove = DroolsGuvnorImages.INSTANCE.DeleteItemSmall(); remove.addClickHandler( new ClickHandler() { public void onClick(ClickEvent event) { if (Window.confirm(Constants.INSTANCE.RemoveThisItem())) { model.removeField(idx); setModified(true); getModeller().refreshWidget(); // Signal possible change in Template variables TemplateVariablesChangedEvent tvce = new TemplateVariablesChangedEvent(getModeller().getModel()); getEventBus().fireEventFromSource(tvce, getModeller().getModel()); } } }); if (!this.readOnly) { layout.setWidget(i, 3, remove); } } if (model.fieldValues.length == 0) { HorizontalPanel h = new HorizontalPanel(); h.add(getSetterLabel()); if (!this.readOnly) { Image image = GuvnorImages.INSTANCE.Edit(); image.setAltText(Constants.INSTANCE.AddFirstNewField()); image.setTitle(Constants.INSTANCE.AddFirstNewField()); image.addClickHandler( new ClickHandler() { public void onClick(ClickEvent sender) { showAddFieldPopup(sender); } }); h.add(image); } layout.setWidget(0, 0, h); } // layout.setWidget( 0, 1, inner ); }
private void newRow(final Fact fact, final String fieldName) { rowIndexByFieldName.addRow(fieldName); int rowIndex = rowIndexByFieldName.getRowIndex(fieldName); widget.setWidget(rowIndex, 0, createFieldNameWidget(fieldName)); widget.setWidget( rowIndex, definitionList.size() + 1, new DeleteFieldRowButton(fact, fieldName)); widget .getCellFormatter() .setHorizontalAlignment(rowIndex, 0, HasHorizontalAlignment.ALIGN_RIGHT); }
private void doLayout() { layout.clear(); layout.setWidget(0, 0, getSetterLabel()); DirtyableFlexTable inner = new DirtyableFlexTable(); for (int i = 0; i < model.fieldValues.length; i++) { ActionFieldFunction val = model.getFieldValue(i); inner.setWidget(i, 0, fieldSelector(val)); inner.setWidget(i, 1, valueEditor(val)); } layout.setWidget(0, 1, inner); }
private void doLayout() { layout.clear(); for (int i = 0; i < model.fieldValues.length; i++) { ActionFieldValue val = model.fieldValues[i]; layout.setWidget(i, 0, getSetterLabel()); layout.setWidget(i, 1, fieldSelector(val)); layout.setWidget(i, 2, valueEditor(val)); final int idx = i; Image remove = new ImageButton(images.deleteItemSmall()); remove.addClickHandler( new ClickHandler() { public void onClick(ClickEvent event) { if (Window.confirm(constants.RemoveThisItem())) { model.removeField(idx); setModified(true); getModeller().refreshWidget(); } } }); if (!this.readOnly) { layout.setWidget(i, 3, remove); } } if (model.fieldValues.length == 0) { HorizontalPanel h = new HorizontalPanel(); h.add(getSetterLabel()); if (!this.readOnly) { h.add( new ImageButton( images.editTiny(), constants.AddFirstNewField(), new ClickHandler() { public void onClick(ClickEvent sender) { showAddFieldPopup(sender); } })); } layout.setWidget(0, 0, h); } // layout.setWidget( 0, 1, inner ); }
private void resetBox() { list = new FlexTable(); list.setStyleName("rule-List"); layout.setWidget(0, 0, list); loadData(list); makeDirty(); }
/** * @param d The meta data. * @param readOnly If it is to be non editable. */ public AssetCategoryEditor(MetaData d, boolean readOnly) { this.data = d; list = new FlexTable(); this.readOnly = readOnly; loadData(list); list.setStyleName("rule-List"); layout.setWidget(0, 0, list); if (!readOnly) { doActions(); } initWidget(layout); }
private void doActions() { VerticalPanel actions = new VerticalPanel(); Image add = GuvnorImages.INSTANCE.NewItem(); add.setAltText(ConstantsCore.INSTANCE.AssetCategoryEditorAddNewCategory()); add.setTitle(constants.AddANewCategory()); add.addClickHandler( new ClickHandler() { public void onClick(ClickEvent event) { doOKClick(); } }); actions.add(add); layout.setWidget(0, 1, actions); }