List of usage examples for com.google.gwt.user.client.ui FlexTable FlexTable
public FlexTable()
From source file:com.ikon.frontend.client.widget.dashboard.keymap.KeywordWidget.java
License:Open Source License
/** * KeywordWidget/*from w ww . j av a 2 s .c o m*/ */ public KeywordWidget(String text) { status = new Status(); status.setStyleName("okm-StatusPopup"); vPanel = new VerticalPanel(); header = new Header(true, text); table = new FlexTable(); table.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { int row = table.getCellForEvent(event).getRowIndex(); String keyword = table.getHTML(row, 0); if (selectedMap.keySet().contains(keyword)) { styleRow(row, false); selectedMap.remove(keyword); Main.get().mainPanel.dashboard.keyMapDashboard.removeKey(keyword); } else { selectedMap.put(keyword, "" + row); styleRow(row, true); Main.get().mainPanel.dashboard.keyMapDashboard.selectKey(keyword); } } }); table.setCellPadding(0); table.setCellSpacing(0); table.setWidth("100%"); vPanel.add(header); vPanel.add(table); header.setSize("100%", "30"); vPanel.setWidth("100%"); vPanel.setCellHeight(header, "30"); header.setStyleName("okm-KeywordWidget-Header"); initWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.dashboard.workflow.WorkflowFormPanel.java
License:Open Source License
/** * WorkflowFormPanel/*from ww w .ja va2s .c o m*/ */ public WorkflowFormPanel() { vPanel = new VerticalPanel(); table = new FlexTable(); manager = new FormManager(this); parameterTable = new FlexTable(); newNotePanel = new VerticalPanel(); tableNotes = new FlexTable(); textArea = new TextArea(); addComment = new HTML("<b>" + Main.i18n("dashboard.workflow.add.comment") + "</b>"); textArea.setSize("500px", "100px"); textArea.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent arg0) { if (!textArea.getText().equals("")) { add.setEnabled(true); } else { add.setEnabled(false); } } }); add = new Button(Main.i18n("button.add"), new ClickHandler() { @Override public void onClick(ClickEvent event) { addComment(); } }); add.setEnabled(false); submitForm = new Button(Main.i18n("button.accept"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (manager.getValidationProcessor().validate()) { setTaskInstanceValues(taskInstance.getId(), null); submitForm.setEnabled(false); } } }); HTML space = new HTML(""); newNotePanel.add(space); newNotePanel.add(addComment); newNotePanel.add(textArea); HTML space2 = new HTML(""); newNotePanel.add(space2); newNotePanel.add(add); newNotePanel.setCellHeight(space, "40px"); newNotePanel.setCellHeight(space2, "10px"); newNotePanel.setCellHorizontalAlignment(addComment, HasAlignment.ALIGN_CENTER); newNotePanel.setCellHorizontalAlignment(add, HasAlignment.ALIGN_CENTER); int[] taskRow = { 1, 2, 3, 4, 5, 6 }; int[] processInstanceRow = { 8, 9, 10 }; int[] processDefinitionRow = { 12, 13, 14, 15 }; int[] dataTitle = { 17 }; int[] commentTitle = { 19 }; int[] formTitle = {}; taskTitle = new TitleWidget(Main.i18n("dashboard.workflow.task"), taskRow); processInstanceTitle = new TitleWidget(Main.i18n("dashboard.workflow.task.process.instance"), processInstanceRow); processDefinitionTitle = new TitleWidget(Main.i18n("dashboard.workflow.task.process.definition"), processDefinitionRow); parametersTitle = new TitleWidget(Main.i18n("dashboard.workflow.task.process.data"), dataTitle); commentsTitle = new TitleWidget(Main.i18n("dashboard.workflow.comments"), commentTitle); formsTitle = new TitleWidget(Main.i18n("dashboard.workflow.task.process.forms"), formTitle); taskTitle.setWidth("100%"); processInstanceTitle.setWidth("100%"); processDefinitionTitle.setWidth("100%"); parametersTitle.setWidth("100%"); commentsTitle.setWidth("100%"); formsTitle.setWidth("100%"); table.setWidget(0, 0, taskTitle); table.setHTML(1, 0, "<b>" + Main.i18n("dashboard.workflow.task.id") + "</b>"); table.setHTML(2, 0, "<b>" + Main.i18n("dashboard.workflow.task.name") + "</b>"); table.setHTML(3, 0, "<b>" + Main.i18n("dashboard.workflow.task.created") + "</b>"); table.setHTML(4, 0, "<b>" + Main.i18n("dashboard.workflow.task.start") + "</b>"); table.setHTML(5, 0, "<b>" + Main.i18n("dashboard.workflow.task.duedate") + "</b>"); //table.setHTML(6, 0, "<b>"+ Main.i18n("dashboard.workflow.task.end") + "</b>"); table.setHTML(6, 0, "<b>" + Main.i18n("dashboard.workflow.task.description") + "</b>"); table.setWidget(7, 0, processInstanceTitle); table.setHTML(8, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.id") + "</b>"); table.setHTML(9, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.version") + "</b>"); table.setHTML(10, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.path") + "</b>"); table.setWidget(11, 0, processDefinitionTitle); table.setHTML(12, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.id") + "</b>"); table.setHTML(13, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.name") + "</b>"); table.setHTML(14, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.version") + "</b>"); table.setHTML(15, 0, "<b>" + Main.i18n("dashboard.workflow.task.process.description") + "</b>"); table.setWidget(16, 0, parametersTitle); table.setWidget(17, 0, parameterTable); table.setWidget(18, 0, commentsTitle); table.setWidget(19, 0, tableNotes); table.setWidget(20, 0, formsTitle); table.setWidget(21, 0, manager.getTable()); table.setHTML(1, 2, ""); table.setHTML(2, 2, ""); table.setHTML(3, 2, ""); table.setHTML(4, 2, ""); table.setHTML(5, 2, ""); table.setHTML(8, 2, ""); table.setHTML(9, 2, ""); table.setHTML(10, 2, ""); table.setHTML(12, 2, ""); table.setHTML(13, 2, ""); table.setHTML(14, 2, ""); // Setting visibleRows taskTitle.setVisibleRows(false); processInstanceTitle.setVisibleRows(false); processDefinitionTitle.setVisibleRows(false); parametersTitle.setVisibleRows(true); commentsTitle.setVisibleRows(false); formsTitle.setVisibleRows(true); table.getCellFormatter().setWidth(1, 2, "100%"); table.getCellFormatter().setWidth(8, 2, "100%"); table.getCellFormatter().setWidth(12, 2, "100%"); table.getFlexCellFormatter().setColSpan(0, 0, 3); table.getFlexCellFormatter().setColSpan(7, 0, 3); table.getFlexCellFormatter().setColSpan(11, 0, 3); table.getFlexCellFormatter().setColSpan(16, 0, 3); table.getFlexCellFormatter().setColSpan(17, 0, 3); table.getFlexCellFormatter().setColSpan(18, 0, 3); table.getFlexCellFormatter().setColSpan(19, 0, 3); table.getFlexCellFormatter().setColSpan(20, 0, 3); table.getFlexCellFormatter().setColSpan(21, 0, 3); table.getCellFormatter().setStyleName(0, 0, "okm-WorkflowFormPanel-Title"); table.getCellFormatter().setStyleName(7, 0, "okm-WorkflowFormPanel-Title"); table.getCellFormatter().setStyleName(11, 0, "okm-WorkflowFormPanel-Title"); table.getCellFormatter().setStyleName(16, 0, "okm-WorkflowFormPanel-Title"); table.getCellFormatter().setStyleName(18, 0, "okm-WorkflowFormPanel-Title"); table.getCellFormatter().setStyleName(20, 0, "okm-WorkflowFormPanel-Title"); vPanel.add(table); table.setStyleName("okm-NoWrap"); vPanel.setStyleName("okm-WorkflowFormPanel"); submitForm.setStyleName("okm-YesButton"); add.setStyleName("okm-AddButton"); textArea.setStyleName("okm-TextArea"); tableNotes.setStyleName("okm-DisableSelect"); tableNotes.setWidth("100%"); table.setWidth("100%"); vPanel.setHeight("100%"); initWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.dashboard.workflow.WorkflowWidget.java
License:Open Source License
/** * WorkflowWidget//from ww w. ja v a 2 s . co m */ public WorkflowWidget(String headerTextKey, String iconUrl, boolean zoom) { status = new Status(); status.setStyleName("okm-StatusPopup"); spTop = new SimplePanel(); spLeft = new SimplePanel(); spRight = new SimplePanel(); panelData = new SimplePanel(); table = new FlexTable(); vCenterPanel = new VerticalPanel(); hPanel = new HorizontalPanel(); header = new Header(iconUrl, zoom); vPanel = new VerticalPanel(); this.headerTextKey = headerTextKey; // Sets or unsets visible table table.setVisible(zoom); header.setHeaderText(Main.i18n(headerTextKey)); panelData.add(table); vCenterPanel.add(header); vCenterPanel.add(panelData); hPanel.add(spLeft); hPanel.add(vCenterPanel); hPanel.add(spRight); vPanel.add(spTop); vPanel.add(hPanel); spTop.setHeight("" + SEPARATOR_HEIGHT); spLeft.setWidth("" + SEPARATOR_WIDTH); spRight.setWidth("" + SEPARATOR_WIDTH); vPanel.setStyleName("okm-DashboardWidget "); panelData.setStyleName("data"); table.setStyleName("okm-NoWrap"); panelData.setWidth("99.6%"); header.setWidth("100%"); table.setCellPadding(0); table.setCellSpacing(0); vPanel.addStyleName("okm-DisableSelect"); initWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.finddocument.FindDocumentSelectPopup.java
License:Open Source License
/** * FindDocumentSelectPopup/*from w w w . j av a 2 s .c o m*/ */ public FindDocumentSelectPopup() { // Establishes auto-close when click outside super(false, true); status = new Status(); status.setStyleName("okm-StatusPopup"); vPanel = new VerticalPanel(); vPanel.setWidth("700"); vPanel.setHeight("350"); hPanel = new HorizontalPanel(); scrollDocumentPanel = new ScrollPanel(); scrollDocumentPanel.setStyleName("okm-Popup-text"); cancelButton = new Button(Main.i18n("button.close"), new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); actionButton = new Button(Main.i18n("search.result.menu.go.document"), new ClickHandler() { @Override public void onClick(ClickEvent event) { String docPath = documentTable.getText(selectedRow, 1); String path = docPath.substring(0, docPath.lastIndexOf("/")); CommonUI.openPath(path, docPath); hide(); } }); keyword = new TextBox(); keyword.setWidth("692"); keyword.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if (keyword.getText().length() >= 3) { GWTQueryParams gwtParams = new GWTQueryParams(); int actualView = Main.get().mainPanel.desktop.navigator.stackPanel.getStackIndex(); switch (actualView) { case UIDesktopConstants.NAVIGATOR_TAXONOMY: gwtParams.setPath(Main.get().taxonomyRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_TEMPLATES: gwtParams.setPath(Main.get().templatesRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_PERSONAL: gwtParams.setPath(Main.get().personalRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_MAIL: gwtParams.setPath(Main.get().mailRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_TRASH: gwtParams.setPath(Main.get().trashRootFolder.getPath()); break; } gwtParams.setMimeType(""); gwtParams.setKeywords(""); gwtParams.setMimeType(""); gwtParams.setName(keyword.getText() + "*"); // add wildcard at ends gwtParams.setAuthor(""); gwtParams.setMailFrom(""); gwtParams.setMailTo(""); gwtParams.setMailSubject(""); gwtParams.setOperator(GWTQueryParams.OPERATOR_AND); gwtParams.setLastModifiedFrom(null); gwtParams.setLastModifiedTo(null); gwtParams.setDomain(GWTQueryParams.DOCUMENT); gwtParams.setProperties(new HashMap<String, GWTPropertyParams>()); find(gwtParams); } else { removeAllRows(); } } }); documentTable = new FlexTable(); documentTable.setWidth("100%"); documentTable.setCellPadding(2); documentTable.setCellSpacing(0); documentTable.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { markSelectedRow(documentTable.getCellForEvent(event).getRowIndex()); evaluateEnableAction(); } }); documentTable.addDoubleClickHandler(new DoubleClickHandler() { @Override public void onDoubleClick(DoubleClickEvent event) { String docPath = documentTable.getText(selectedRow, 1); String path = docPath.substring(0, docPath.lastIndexOf("/")); CommonUI.openPath(path, docPath); hide(); } }); scrollDocumentPanel.add(documentTable); scrollDocumentPanel.setPixelSize(690, 300); vPanel.add(keyword); vPanel.add(scrollDocumentPanel); vPanel.add(new HTML("<br>")); hPanel.add(cancelButton); HTML space = new HTML(); space.setWidth("50"); hPanel.add(space); hPanel.add(actionButton); vPanel.add(hPanel); vPanel.add(new HTML("<br>")); vPanel.setCellHorizontalAlignment(keyword, HasAlignment.ALIGN_CENTER); vPanel.setCellVerticalAlignment(keyword, HasAlignment.ALIGN_MIDDLE); vPanel.setCellHorizontalAlignment(scrollDocumentPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHeight(keyword, "25"); vPanel.setCellHeight(scrollDocumentPanel, "300"); cancelButton.setStyleName("okm-NoButton"); actionButton.setStyleName("okm-YesButton"); documentTable.setStyleName("okm-NoWrap"); documentTable.addStyleName("okm-Table-Row"); keyword.setStyleName("okm-Input"); super.hide(); setWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.findfolder.FindFolderSelectPopup.java
License:Open Source License
public FindFolderSelectPopup() { // Establishes auto-close when click outside super(false, true); status = new Status(); status.setStyleName("okm-StatusPopup"); vPanel = new VerticalPanel(); vPanel.setWidth("700"); vPanel.setHeight("350"); hPanel = new HorizontalPanel(); scrollFolderPanel = new ScrollPanel(); scrollFolderPanel.setStyleName("okm-Popup-text"); cancelButton = new Button(Main.i18n("button.close"), new ClickHandler() { @Override/*from w ww.j av a 2s .c o m*/ public void onClick(ClickEvent event) { hide(); } }); actionButton = new Button(Main.i18n("search.result.menu.go.folder"), new ClickHandler() { @Override public void onClick(ClickEvent event) { CommonUI.openPath(folderTable.getText(selectedRow, 1), ""); hide(); } }); keyword = new TextBox(); keyword.setWidth("692"); keyword.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if (keyword.getText().length() >= 3) { GWTQueryParams gwtParams = new GWTQueryParams(); int actualView = Main.get().mainPanel.desktop.navigator.stackPanel.getStackIndex(); switch (actualView) { case UIDesktopConstants.NAVIGATOR_TAXONOMY: gwtParams.setPath(Main.get().taxonomyRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_TEMPLATES: gwtParams.setPath(Main.get().templatesRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_PERSONAL: gwtParams.setPath(Main.get().personalRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_MAIL: gwtParams.setPath(Main.get().mailRootFolder.getPath()); break; case UIDesktopConstants.NAVIGATOR_TRASH: gwtParams.setPath(Main.get().trashRootFolder.getPath()); break; } gwtParams.setMimeType(""); gwtParams.setKeywords(""); gwtParams.setMimeType(""); gwtParams.setName(keyword.getText() + "*"); // add wildcard at ends gwtParams.setAuthor(""); gwtParams.setMailFrom(""); gwtParams.setMailTo(""); gwtParams.setMailSubject(""); gwtParams.setOperator(GWTQueryParams.OPERATOR_AND); gwtParams.setLastModifiedFrom(null); gwtParams.setLastModifiedTo(null); gwtParams.setDomain(GWTQueryParams.FOLDER); gwtParams.setProperties(new HashMap<String, GWTPropertyParams>()); find(gwtParams); } else { removeAllRows(); } } }); folderTable = new FlexTable(); folderTable.setWidth("100%"); folderTable.setCellPadding(2); folderTable.setCellSpacing(0); folderTable.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { markSelectedRow(folderTable.getCellForEvent(event).getRowIndex()); evaluateEnableAction(); } }); folderTable.addDoubleClickHandler(new DoubleClickHandler() { @Override public void onDoubleClick(DoubleClickEvent event) { CommonUI.openPath(folderTable.getText(selectedRow, 1), ""); hide(); } }); scrollFolderPanel.add(folderTable); scrollFolderPanel.setPixelSize(690, 300); vPanel.add(keyword); vPanel.add(scrollFolderPanel); vPanel.add(new HTML("<br>")); hPanel.add(cancelButton); HTML space = new HTML(); space.setWidth("50"); hPanel.add(space); hPanel.add(actionButton); vPanel.add(hPanel); vPanel.add(new HTML("<br>")); vPanel.setCellHorizontalAlignment(keyword, HasAlignment.ALIGN_CENTER); vPanel.setCellVerticalAlignment(keyword, HasAlignment.ALIGN_MIDDLE); vPanel.setCellHorizontalAlignment(scrollFolderPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHeight(keyword, "25"); vPanel.setCellHeight(scrollFolderPanel, "300"); cancelButton.setStyleName("okm-NoButton"); actionButton.setStyleName("okm-YesButton"); folderTable.setStyleName("okm-NoWrap"); folderTable.addStyleName("okm-Table-Row"); keyword.setStyleName("okm-Input"); super.hide(); setWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.form.DatabaseRecordSelectPopup.java
License:Open Source License
/** * DatabaseRecordSelectPopup/*from w w w. ja v a 2 s. co m*/ */ public DatabaseRecordSelectPopup(final GWTSuggestBox suggestBox, final HasDatabaseRecord databaseRecord, final HasSearch search) { // Establishes auto-close when click outside super(false, true); this.suggestBox = suggestBox; tables = new ArrayList<String>(); if (suggestBox.getTable() != null) { tables.add(suggestBox.getTable()); } setText(suggestBox.getDialogTitle()); vPanel = new VerticalPanel(); vPanel.setWidth("300"); vPanel.setHeight("200"); record = new TextBox(); record.setWidth("292"); record.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if (record.getText().length() >= suggestBox.getFilterMinLen()) { findFilteredDatabaseRecords(); } else { removeAllRows(); } } }); record.setStyleName("okm-Input"); recordTabla = new FlexTable(); recordTabla.setWidth("100%"); recordTabla.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { markSelectedRow(recordTabla.getCellForEvent(event).getRowIndex()); acceptButton.setEnabled(true); } }); scrollDatabaseRecordPanel = new ScrollPanel(recordTabla); scrollDatabaseRecordPanel.setPixelSize(290, 150); scrollDatabaseRecordPanel.setStyleName("okm-Popup-text"); cancelButton = new Button(Main.i18n("button.cancel"), new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); cancelButton.setStyleName("okm-NoButton"); acceptButton = new Button(Main.i18n("button.accept"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (selectedRow >= 0) { databaseRecord.setKeyValue(rowKeyValueMap.get(selectedRow)); // Updating suggestbox values ( for when value will be update ) suggestBox.setValue(rowKeyValueMap.get(selectedRow).getKey()); suggestBox.setText(rowKeyValueMap.get(selectedRow).getValue()); if (search != null) { search.metadataValueChanged(); } } hide(); } }); acceptButton.setEnabled(false); acceptButton.setStyleName("okm-YesButton"); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(cancelButton); hPanel.add(new HTML(" ")); hPanel.add(acceptButton); if (suggestBox.getFilterMinLen() > 0) { HorizontalPanel hInfoPanel = new HorizontalPanel(); HTML filterInfo = new HTML(MessageFormat.format(Main.i18n("form.manager.suggestbox.min.filter"), suggestBox.getFilterMinLen())); HTML space = Util.hSpace("5"); hInfoPanel.add(filterInfo); hInfoPanel.add(space); vPanel.add(hInfoPanel); vPanel.setCellHorizontalAlignment(hInfoPanel, HasAlignment.ALIGN_RIGHT); } vPanel.add(record); vPanel.add(scrollDatabaseRecordPanel); vPanel.add(hPanel); vPanel.setCellHeight(record, "25"); vPanel.setCellHeight(hPanel, "25"); vPanel.setCellVerticalAlignment(record, HasAlignment.ALIGN_MIDDLE); vPanel.setCellVerticalAlignment(hPanel, HasAlignment.ALIGN_MIDDLE); vPanel.setCellHorizontalAlignment(record, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(scrollDatabaseRecordPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HasAlignment.ALIGN_CENTER); status = new Status(this); status.setStyleName("okm-StatusPopup"); super.hide(); setWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.form.FormManager.java
License:Open Source License
/** * init/*ww w .j av a 2 s.co m*/ */ private void init() { table = new FlexTable(); table.setWidth("100%"); table.setStyleName("okm-NoWrap"); folderSelectPopup = new FolderSelectPopup(); folderSelectPopup.setStyleName("okm-Popup"); folderSelectPopup.addStyleName("okm-DisableSelect"); submitButtonPanel = new HorizontalPanel(); buttonControlList = new ArrayList<Button>(); }
From source file:com.ikon.frontend.client.widget.form.FormManager.java
License:Open Source License
/** * drawFormElement/*from w w w . ja v a2 s .c om*/ */ private void drawFormElement(int row, final GWTFormElement gwtFormElement, boolean readOnly, boolean searchView) { final String propertyName = gwtFormElement.getName(); if (gwtFormElement instanceof GWTButton) { final GWTButton gWTButton = (GWTButton) gwtFormElement; if (submitForm != null) { submitForm.setVisible(false); // Always set form hidden because there's new buttons } Button transButton = new Button(gWTButton.getLabel()); String style = Character.toUpperCase(gWTButton.getStyle().charAt(0)) + gWTButton.getStyle().substring(1); transButton.setStyleName("okm-" + style + "Button"); HTML space = new HTML(" "); submitButtonPanel.add(transButton); submitButtonPanel.add(space); submitButtonPanel.setCellWidth(space, "5px"); // Setting submit button transButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (gWTButton.getConfirmation() != null && !gWTButton.getConfirmation().equals("")) { Main.get().confirmPopup.setConfirm(ConfirmPopup.CONFIRM_WORKFLOW_ACTION); Main.get().confirmPopup.setConfirmationText(gWTButton.getConfirmation()); ValidationButton validationButton = new ValidationButton(gWTButton, singleton); Main.get().confirmPopup.setValue(validationButton); Main.get().confirmPopup.center(); } else { if (gWTButton.isValidate()) { if (validationProcessor.validate()) { if (gWTButton.getTransition().equals("")) { workflow.setTaskInstanceValues(taskInstance.getId(), null); } else { workflow.setTaskInstanceValues(taskInstance.getId(), gWTButton.getTransition()); } disableAllButtonList(); } } else { if (gWTButton.getTransition().equals("")) { workflow.setTaskInstanceValues(taskInstance.getId(), null); } else { workflow.setTaskInstanceValues(taskInstance.getId(), gWTButton.getTransition()); } disableAllButtonList(); } } } }); // Adding button to control list if (!buttonControlList.contains(transButton)) { buttonControlList.add(transButton); } } else if (gwtFormElement instanceof GWTTextArea) { HorizontalPanel hPanel = new HorizontalPanel(); TextArea textArea = new TextArea(); textArea.setEnabled((!readOnly && !((GWTTextArea) gwtFormElement).isReadonly()) || isSearchView); // read only hPanel.add(textArea); textArea.setStyleName("okm-TextArea"); textArea.setText(((GWTTextArea) gwtFormElement).getValue()); textArea.setSize(gwtFormElement.getWidth(), gwtFormElement.getHeight()); HTML text = new HTML(); // Create a widget for this property text.setHTML(((GWTTextArea) gwtFormElement).getValue().replaceAll("\n", "<br>")); hWidgetProperties.put(propertyName, hPanel); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setWidget(row, 1, text); table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); if (searchView) { final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (search != null) { textArea.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { search.metadataValueChanged(); } }); } setRowWordWarp(row, 3, true); } else { setRowWordWarp(row, 2, true); } } else if (gwtFormElement instanceof GWTInput) { final HorizontalPanel hPanel = new HorizontalPanel(); final TextBox textBox = new TextBox(); // Create a widget for this property textBox.setEnabled((!readOnly && !((GWTInput) gwtFormElement).isReadonly()) || isSearchView); // read only hPanel.add(textBox); String value = ""; if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_TEXT) || ((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_LINK) || ((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_FOLDER)) { textBox.setText(((GWTInput) gwtFormElement).getValue()); value = ((GWTInput) gwtFormElement).getValue(); } else if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_DATE)) { if (((GWTInput) gwtFormElement).getDate() != null) { DateTimeFormat dtf = DateTimeFormat.getFormat(Main.i18n("general.day.pattern")); textBox.setText(dtf.format(((GWTInput) gwtFormElement).getDate())); value = dtf.format(((GWTInput) gwtFormElement).getDate()); } } textBox.setWidth(gwtFormElement.getWidth()); textBox.setStyleName("okm-Input"); hWidgetProperties.put(propertyName, hPanel); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setHTML(row, 1, value); if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_DATE)) { final PopupPanel calendarPopup = new PopupPanel(true); final CalendarWidget calendar = new CalendarWidget(); calendar.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { calendarPopup.hide(); DateTimeFormat dtf = DateTimeFormat.getFormat(Main.i18n("general.day.pattern")); textBox.setText(dtf.format(calendar.getDate())); ((GWTInput) gwtFormElement).setDate(calendar.getDate()); if (search != null) { search.metadataValueChanged(); } } }); calendarPopup.add(calendar); final Image calendarIcon = new Image(OKMBundleResources.INSTANCE.calendar()); if (readOnly || ((GWTInput) gwtFormElement).isReadonly()) { // read only calendarIcon.setResource(OKMBundleResources.INSTANCE.calendarDisabled()); } else { calendarIcon.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { calendarPopup.setPopupPosition(calendarIcon.getAbsoluteLeft(), calendarIcon.getAbsoluteTop() - 2); if (calendar.getDate() != null) { calendar.setNow((Date) calendar.getDate().clone()); } else { calendar.setNow(null); } calendarPopup.show(); } }); } calendarIcon.setStyleName("okm-Hyperlink"); hPanel.add(Util.hSpace("5")); hPanel.add(calendarIcon); textBox.setEnabled(false); } else if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_LINK)) { if (!value.equals("")) { HorizontalPanel hLinkPanel = new HorizontalPanel(); Anchor anchor = new Anchor(value, true); final String url = value; anchor.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Window.open(url, url, ""); } }); anchor.setStyleName("okm-Hyperlink"); String containerName = ((GWTInput) gwtFormElement).getName() + "ContainerName"; hLinkPanel.add(new HTML("<div id=\"" + containerName + "\"></div>\n")); HTML space = new HTML(""); hLinkPanel.add(space); hLinkPanel.add(anchor); hLinkPanel.setCellWidth(space, "5px"); table.setWidget(row, 1, hLinkPanel); Util.createLinkClipboardButton(url, containerName); } else { table.setHTML(row, 1, ""); } } else if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_FOLDER)) { if (!value.equals("")) { Anchor anchor = new Anchor(); final GWTFolder folder = ((GWTInput) gwtFormElement).getFolder(); // remove first ocurrence String path = value.substring(value.indexOf("/", 1) + 1); // Looks if must change icon on parent if now has no childs and properties with user security // atention if (folder.isHasChildren()) { anchor.setHTML(Util.imageItemHTML("img/menuitem_childs.gif", path, "top")); } else { anchor.setHTML(Util.imageItemHTML("img/menuitem_empty.gif", path, "top")); } anchor.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent arg0) { CommonUI.openPath(folder.getPath(), null); } }); anchor.setStyleName("okm-KeyMap-ImageHover"); table.setWidget(row, 1, anchor); } else { table.setHTML(row, 1, ""); } Image pathExplorer = new Image(OKMBundleResources.INSTANCE.folderExplorer()); pathExplorer.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // when any changes is done is fired search.metadataValueChanged(); folderSelectPopup.show(textBox, search); } }); pathExplorer.setStyleName("okm-KeyMap-ImageHover"); hPanel.add(Util.hSpace("5")); hPanel.add(pathExplorer); hPanel.setCellVerticalAlignment(pathExplorer, HasAlignment.ALIGN_MIDDLE); pathExplorer.setVisible((!readOnly && !((GWTInput) gwtFormElement).isReadonly()) || isSearchView); // read only textBox.setEnabled(false); } table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); if (searchView) { // Second date input if (((GWTInput) gwtFormElement).getType().equals(GWTInput.TYPE_DATE)) { final TextBox textBoxTo = new TextBox(); textBoxTo.setWidth(gwtFormElement.getWidth()); textBoxTo.setStyleName("okm-Input"); hPanel.add(new HTML(" ↔ ")); hPanel.add(textBoxTo); if (((GWTInput) gwtFormElement).getDateTo() != null) { DateTimeFormat dtf = DateTimeFormat.getFormat(Main.i18n("general.day.pattern")); textBoxTo.setText(dtf.format(((GWTInput) gwtFormElement).getDateTo())); } final PopupPanel calendarPopup = new PopupPanel(true); final CalendarWidget calendar = new CalendarWidget(); calendar.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { calendarPopup.hide(); DateTimeFormat dtf = DateTimeFormat.getFormat(Main.i18n("general.day.pattern")); textBoxTo.setText(dtf.format(calendar.getDate())); ((GWTInput) gwtFormElement).setDateTo(calendar.getDate()); if (search != null) { search.metadataValueChanged(); } } }); calendarPopup.add(calendar); final Image calendarIcon = new Image(OKMBundleResources.INSTANCE.calendar()); calendarIcon.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { calendarPopup.setPopupPosition(calendarIcon.getAbsoluteLeft(), calendarIcon.getAbsoluteTop() - 2); calendarPopup.show(); } }); calendarIcon.setStyleName("okm-Hyperlink"); hPanel.add(Util.hSpace("5")); hPanel.add(calendarIcon); textBoxTo.setEnabled(false); // Clean final Image cleanIcon = new Image(OKMBundleResources.INSTANCE.cleanIcon()); cleanIcon.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { TextBox textBox = (TextBox) hPanel.getWidget(0); textBox.setText(""); textBoxTo.setText(""); ((GWTInput) gwtFormElement).setDate(null); ((GWTInput) gwtFormElement).setDateTo(null); } }); cleanIcon.setStyleName("okm-Hyperlink"); hPanel.add(Util.hSpace("5")); hPanel.add(cleanIcon); } // Delete final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (search != null) { textBox.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { search.metadataValueChanged(); } }); } setRowWordWarp(row, 3, true); } else { // Clean icon ( case is not readonly ) final Image cleanIcon = new Image(OKMBundleResources.INSTANCE.cleanIcon()); cleanIcon.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { TextBox textBox = (TextBox) hPanel.getWidget(0); textBox.setText(""); ((GWTInput) gwtFormElement).setDate(null); ((GWTInput) gwtFormElement).setFolder(new GWTFolder()); } }); cleanIcon.setStyleName("okm-Hyperlink"); hPanel.add(Util.hSpace("5")); hPanel.add(cleanIcon); cleanIcon.setVisible((!readOnly && !((GWTInput) gwtFormElement).isReadonly())); // read only setRowWordWarp(row, 2, true); } } else if (gwtFormElement instanceof GWTSuggestBox) { HorizontalPanel hPanel = new HorizontalPanel(); final GWTSuggestBox suggestBox = (GWTSuggestBox) gwtFormElement; final TextBox textBox = new TextBox(); // Create a widget for this property textBox.setWidth(gwtFormElement.getWidth()); textBox.setStyleName("okm-Input"); textBox.setReadOnly(true); textBox.setEnabled((!readOnly && !suggestBox.isReadonly()) || isSearchView); // read only final HTML hiddenKey = new HTML(""); hiddenKey.setVisible(false); if (suggestBox.getValue() != null) { hiddenKey.setHTML(suggestBox.getValue()); } hPanel.add(textBox); hPanel.add(hiddenKey); final HTML value = new HTML(""); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setWidget(row, 1, value); table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); if (textBox.isEnabled()) { final Image databaseRecordImage = new Image(OKMBundleResources.INSTANCE.databaseRecord()); databaseRecordImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { List<String> tables = new ArrayList<String>(); if (suggestBox.getTable() != null) { tables.add(suggestBox.getTable()); } DatabaseRecord databaseRecord = new DatabaseRecord(hiddenKey, textBox); // when any changes is done is fired search.metadataValueChanged(); DatabaseRecordSelectPopup drsPopup = new DatabaseRecordSelectPopup(suggestBox, databaseRecord, search); drsPopup.setWidth("300"); drsPopup.setHeight("220"); drsPopup.setStyleName("okm-Popup"); drsPopup.setPopupPosition(databaseRecordImage.getAbsoluteLeft(), databaseRecordImage.getAbsoluteTop() - 2); drsPopup.show(); } }); databaseRecordImage.setStyleName("okm-Hyperlink"); hPanel.add(new HTML(" ")); hPanel.add(databaseRecordImage); } hWidgetProperties.put(propertyName, hPanel); if (!suggestBox.getValue().equals("")) { textBox.setValue(suggestBox.getText()); value.setHTML(suggestBox.getText()); hiddenKey.setHTML(suggestBox.getValue()); /*List<String> tables = new ArrayList<String>(); if (suggestBox.getTable() != null) { tables.add(suggestBox.getTable()); } String formatedQuery = MessageFormat.format(suggestBox.getValueQuery(), suggestBox.getValue()); keyValueService.getKeyValues(tables, formatedQuery, new AsyncCallback<List<GWTKeyValue>>() { @Override public void onSuccess(List<GWTKeyValue> result) { if (!result.isEmpty()) { GWTKeyValue keyValue = result.get(0); textBox.setValue(keyValue.getValue()); value.setHTML(keyValue.getValue()); hiddenKey.setHTML(keyValue.getKey()); } } @Override public void onFailure(Throwable caught) { Main.get().showError("getKeyValues", caught); } }); */ } if (searchView) { final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); textBox.addKeyUpHandler( Main.get().mainPanel.search.searchBrowser.searchIn.searchControl.keyUpHandler); setRowWordWarp(row, 3, true); } else { setRowWordWarp(row, 2, true); } } else if (gwtFormElement instanceof GWTCheckBox) { CheckBox checkBox = new CheckBox(); checkBox.setEnabled((!readOnly && !((GWTCheckBox) gwtFormElement).isReadonly()) || isSearchView); // read only checkBox.setValue(((GWTCheckBox) gwtFormElement).getValue()); hWidgetProperties.put(propertyName, checkBox); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); if (checkBox.getValue()) { table.setWidget(row, 1, new Image(OKMBundleResources.INSTANCE.yes())); } else { table.setWidget(row, 1, new Image(OKMBundleResources.INSTANCE.no())); } table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); if (searchView) { final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (search != null) { checkBox.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { search.metadataValueChanged(); } }); } setRowWordWarp(row, 3, true); } else { setRowWordWarp(row, 2, true); } } else if (gwtFormElement instanceof GWTSelect) { final GWTSelect gwtSelect = (GWTSelect) gwtFormElement; if (!gwtSelect.getOptionsData().equals("") && workflowVarMap.keySet().contains(gwtSelect.getOptionsData())) { gwtSelect.setOptions(getOptionsFromVariable(workflowVarMap.get(gwtSelect.getOptionsData()))); } if (gwtSelect.getType().equals(GWTSelect.TYPE_SIMPLE)) { String selectedLabel = ""; HorizontalPanel hPanel = new HorizontalPanel(); ListBox listBox = new ListBox(); listBox.setEnabled((!readOnly && !gwtSelect.isReadonly()) || isSearchView); // read only hPanel.add(listBox); listBox.setStyleName("okm-Select"); listBox.addItem("", ""); // Always we set and empty value for (GWTOption option : gwtSelect.getOptions()) { listBox.addItem(option.getLabel(), option.getValue()); if (option.isSelected()) { listBox.setItemSelected(listBox.getItemCount() - 1, true); selectedLabel = option.getLabel(); } } hWidgetProperties.put(propertyName, hPanel); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setHTML(row, 1, selectedLabel); table.getCellFormatter().setWidth(row, 1, "100%"); if (searchView) { final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (search != null) { listBox.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { search.metadataValueChanged(); } }); } setRowWordWarp(row, 3, true); } else { setRowWordWarp(row, 2, true); } } else if (gwtSelect.getType().equals(GWTSelect.TYPE_MULTIPLE)) { final HorizontalPanel hPanel = new HorizontalPanel(); ListBox listMulti = new ListBox(); listMulti.setEnabled((!readOnly && !gwtSelect.isReadonly()) || isSearchView); // read only listMulti.setStyleName("okm-Select"); listMulti.addItem("", ""); // Always we set and empty value // Table for values FlexTable tableMulti = new FlexTable(); Button addButton = new Button(Main.i18n("button.add"), new ClickHandler() { @Override public void onClick(ClickEvent event) { HorizontalPanel hPanel = (HorizontalPanel) hWidgetProperties.get(propertyName); FlexTable tableMulti = (FlexTable) hPanel.getWidget(0); ListBox listMulti = (ListBox) hPanel.getWidget(2); Button addButton = (Button) hPanel.getWidget(4); if (listMulti.getSelectedIndex() > 0) { final HTML htmlValue = new HTML(listMulti.getValue(listMulti.getSelectedIndex())); int rowTableMulti = tableMulti.getRowCount(); Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Widget sender = (Widget) event.getSource(); HorizontalPanel hPanel = (HorizontalPanel) hWidgetProperties.get(propertyName); FlexTable tableMulti = (FlexTable) hPanel.getWidget(0); ListBox listMulti = (ListBox) hPanel.getWidget(2); Button addButton = (Button) hPanel.getWidget(4); String value = htmlValue.getText(); String optionLabel = ""; for (Iterator<GWTOption> itOptions = gwtSelect.getOptions() .iterator(); itOptions.hasNext();) { GWTOption option = itOptions.next(); if (option.getValue().equals(htmlValue.getText())) { optionLabel = option.getLabel(); break; } } listMulti.addItem(optionLabel, value); listMulti.setVisible(true); addButton.setVisible(true); // Looking for row to delete for (int i = 0; i < tableMulti.getRowCount(); i++) { if (tableMulti.getWidget(i, 1).equals(sender)) { tableMulti.removeRow(i); } } if (search != null) { search.metadataValueChanged(); } } }); removeImage.setStyleName("okm-Hyperlink"); tableMulti.setWidget(rowTableMulti, 0, htmlValue); tableMulti.setWidget(rowTableMulti, 1, removeImage); tableMulti.setHTML(rowTableMulti, 2, listMulti.getItemText(listMulti.getSelectedIndex())); setRowWordWarp(tableMulti, rowTableMulti, 2, true); listMulti.removeItem(listMulti.getSelectedIndex()); htmlValue.setVisible(false); if (listMulti.getItemCount() <= 1) { listMulti.setVisible(false); addButton.setVisible(false); } if (search != null) { search.metadataValueChanged(); } } } }); addButton.setEnabled((!readOnly && !gwtSelect.isReadonly()) || isSearchView); // read only addButton.setStyleName("okm-AddButton"); hPanel.add(tableMulti); hPanel.add(new HTML(" ")); hPanel.add(listMulti); hPanel.add(new HTML(" ")); hPanel.add(addButton); hPanel.setVisible(true); listMulti.setVisible(false); addButton.setVisible(false); hPanel.setCellVerticalAlignment(tableMulti, VerticalPanel.ALIGN_TOP); hPanel.setCellVerticalAlignment(listMulti, VerticalPanel.ALIGN_TOP); hPanel.setCellVerticalAlignment(addButton, VerticalPanel.ALIGN_TOP); hPanel.setHeight("100%"); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setWidget(row, 1, hPanel); table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setVerticalAlignment(row, 1, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); for (Iterator<GWTOption> itData = gwtSelect.getOptions().iterator(); itData.hasNext();) { final GWTOption option = itData.next(); // Looks if there's some selected value if (option.isSelected()) { int rowTableMulti = tableMulti.getRowCount(); HTML htmlValue = new HTML(option.getValue()); Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); // read only for this element goes at edit() logic removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Widget sender = (Widget) event.getSource(); HorizontalPanel hPanel = (HorizontalPanel) hWidgetProperties.get(propertyName); FlexTable tableMulti = (FlexTable) hPanel.getWidget(0); ListBox listMulti = (ListBox) hPanel.getWidget(2); Button addButton = (Button) hPanel.getWidget(4); listMulti.addItem(option.getLabel(), option.getValue()); listMulti.setVisible(true); addButton.setVisible(true); // Looking for row to delete for (int i = 0; i < tableMulti.getRowCount(); i++) { if (tableMulti.getWidget(i, 1).equals(sender)) { tableMulti.removeRow(i); } } if (search != null) { search.metadataValueChanged(); } } }); removeImage.setStyleName("okm-Hyperlink"); tableMulti.setWidget(rowTableMulti, 0, htmlValue); tableMulti.setWidget(rowTableMulti, 1, removeImage); tableMulti.setHTML(rowTableMulti, 2, option.getLabel()); setRowWordWarp(tableMulti, rowTableMulti, 2, true); htmlValue.setVisible(false); removeImage.setVisible(false); } else { listMulti.addItem(option.getLabel(), option.getValue()); } } // Save panel hWidgetProperties.put(propertyName, hPanel); if (searchView) { final Image removeImage = new Image(OKMBundleResources.INSTANCE.deleteIcon()); removeImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { for (int row = 0; row < table.getRowCount(); row++) { if (table.getWidget(row, 2).equals(removeImage)) { table.removeRow(row); break; } } hWidgetProperties.remove(propertyName); hPropertyParams.remove(propertyName); formElementList.remove(gwtFormElement); search.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); // not implemented // textBox.addKeyUpHandler(Main.get().mainPanel.search.searchBrowser.searchIn.searchControl.keyUpHandler); setRowWordWarp(row, 3, true); } else { setRowWordWarp(row, 2, true); } } } else if (gwtFormElement instanceof GWTUpload) { final GWTUpload upload = (GWTUpload) gwtFormElement; HorizontalPanel hPanel = new HorizontalPanel(); FileUpload fileUpload = new FileUpload(); fileUpload.setStyleName("okm-Input"); fileUpload.getElement().setAttribute("size", "" + upload.getWidth()); final Anchor documentLink = new Anchor(); // Setting document link by uuid if (upload.getDocumentUuid() != null && !upload.getDocumentUuid().equals("")) { repositoryService.getPathByUUID(upload.getDocumentUuid(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { documentService.get(result, new AsyncCallback<GWTDocument>() { @Override public void onSuccess(GWTDocument result) { final String docPath = result.getPath(); documentLink.setText(result.getName()); documentLink.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { String path = docPath.substring(0, docPath.lastIndexOf("/")); CommonUI.openPath(path, docPath); } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getDocument", caught); } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getPathByUUID", caught); } }); } documentLink.setStyleName("okm-Hyperlink"); hPanel.add(documentLink); hPanel.add(fileUpload); hWidgetProperties.put(propertyName, hPanel); table.setHTML(row, 0, "<b>" + gwtFormElement.getLabel() + "</b>"); table.setWidget(row, 1, new HTML("")); table.getCellFormatter().setVerticalAlignment(row, 0, VerticalPanel.ALIGN_TOP); table.getCellFormatter().setWidth(row, 1, "100%"); setRowWordWarp(row, 2, true); // If folderPath is null must initialize value if (upload.getFolderPath() == null || upload.getFolderPath().equals("") && upload.getFolderUuid() != null && !upload.getFolderUuid().equals("")) { repositoryService.getPathByUUID(upload.getFolderUuid(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { upload.setFolderPath(result); } @Override public void onFailure(Throwable caught) { Main.get().showError("getPathByUUID", caught); } }); } } else if (gwtFormElement instanceof GWTText) { HorizontalPanel hPanel = new HorizontalPanel(); HTML title = new HTML(" " + ((GWTText) gwtFormElement).getLabel() + " "); title.setStyleName("okm-NoWrap"); hPanel.add(Util.hSpace("10")); hPanel.add(title); hPanel.setCellWidth(title, ((GWTText) gwtFormElement).getWidth()); hWidgetProperties.put(propertyName, hPanel); table.setWidget(row, 0, hPanel); table.getFlexCellFormatter().setColSpan(row, 0, 2); } else if (gwtFormElement instanceof GWTSeparator) { HorizontalPanel hPanel = new HorizontalPanel(); Image horizontalLine = new Image("img/transparent_pixel.gif"); horizontalLine.setStyleName("okm-TopPanel-Line-Border"); horizontalLine.setSize("10", "2px"); Image horizontalLine2 = new Image("img/transparent_pixel.gif"); horizontalLine2.setStyleName("okm-TopPanel-Line-Border"); horizontalLine2.setSize("100%", "2px"); HTML title = new HTML(" " + ((GWTSeparator) gwtFormElement).getLabel() + " "); title.setStyleName("okm-NoWrap"); hPanel.add(horizontalLine); hPanel.add(title); hPanel.add(horizontalLine2); hPanel.setCellVerticalAlignment(horizontalLine, HasAlignment.ALIGN_MIDDLE); hPanel.setCellVerticalAlignment(horizontalLine2, HasAlignment.ALIGN_MIDDLE); hPanel.setCellWidth(horizontalLine2, ((GWTSeparator) gwtFormElement).getWidth()); hWidgetProperties.put(propertyName, hPanel); table.setWidget(row, 0, hPanel); table.getFlexCellFormatter().setColSpan(row, 0, 2); } else if (gwtFormElement instanceof GWTDownload) { HorizontalPanel hPanel = new HorizontalPanel(); hWidgetProperties.put(propertyName, hPanel); table.setWidget(row, 0, hPanel); table.getFlexCellFormatter().setColSpan(row, 0, 2); GWTDownload download = (GWTDownload) gwtFormElement; FlexTable downloadTable = new FlexTable(); HTML description = new HTML("<b>" + gwtFormElement.getLabel() + "</b>"); downloadTable.setWidget(0, 0, description); downloadTable.getFlexCellFormatter().setColSpan(0, 0, 2); for (final GWTNode node : download.getNodes()) { int downloadTableRow = downloadTable.getRowCount(); final Anchor anchor = new Anchor("<b>" + node.getLabel() + "</b>", true); if (!node.getUuid().equals("")) { repositoryService.getPathByUUID(node.getUuid(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { folderService.isValid(result, new AsyncCallback<Boolean>() { @Override public void onSuccess(Boolean result) { final boolean isFolder = result; anchor.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (isFolder) { Util.downloadFileByUUID(node.getUuid(), "export"); } else { Util.downloadFileByUUID(node.getUuid(), ""); } } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getPathByUUID", caught); } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getPathByUUID", caught); } }); } else if (!node.getPath().equals("")) { repositoryService.getUUIDByPath(node.getPath(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { final String uuid = result; folderService.isValid(node.getPath(), new AsyncCallback<Boolean>() { @Override public void onSuccess(Boolean result) { final boolean isFolder = result; anchor.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (isFolder) { Util.downloadFileByUUID(uuid, "export"); } else { Util.downloadFileByUUID(uuid, ""); } } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getPathByUUID", caught); } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getUUIDByPath", caught); } }); } anchor.setStyleName("okm-Hyperlink"); downloadTable.setWidget(downloadTableRow, 0, new HTML(" ")); downloadTable.setWidget(downloadTableRow, 1, anchor); } hPanel.add(downloadTable); } else if (gwtFormElement instanceof GWTPrint) { HorizontalPanel hPanel = new HorizontalPanel(); hWidgetProperties.put(propertyName, hPanel); table.setWidget(row, 0, hPanel); table.getFlexCellFormatter().setColSpan(row, 0, 2); GWTPrint print = (GWTPrint) gwtFormElement; FlexTable printTable = new FlexTable(); HTML description = new HTML("<b>" + gwtFormElement.getLabel() + "</b>"); printTable.setWidget(0, 0, description); printTable.getFlexCellFormatter().setColSpan(0, 0, 2); for (final GWTNode node : print.getNodes()) { int downloadTableRow = printTable.getRowCount(); final Button downloadButton = new Button(Main.i18n("button.print")); if (!node.getUuid().equals("")) { downloadButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Window.alert("Not available"); } }); } else if (!node.getPath().equals("")) { repositoryService.getUUIDByPath(node.getPath(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { //final String uuid = result; downloadButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Window.alert("Not available"); } }); } @Override public void onFailure(Throwable caught) { Main.get().showError("getUUIDByPath", caught); } }); } downloadButton.setStyleName("okm-DownloadButton"); printTable.setWidget(downloadTableRow, 0, new HTML(" " + node.getLabel() + " ")); printTable.setWidget(downloadTableRow, 1, downloadButton); } hPanel.add(printTable); } }
From source file:com.ikon.frontend.client.widget.mainmenu.ManageBookmarkPopup.java
License:Open Source License
/** * ManageBookmarkPopup/* w ww .java 2 s . c om*/ */ public ManageBookmarkPopup() { // Establishes auto-close when click outside super(false, true); vPanel = new VerticalPanel(); textBox = new TextBox(); textBox.setStyleName("okm-Input"); textBox.setVisibleLength(40); textBox.setMaxLength(90); textBox.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if ((char) KeyCodes.KEY_ENTER == event.getNativeKeyCode()) { if (textBox.getText().length() > 0) { rename(Integer.parseInt(table.getText(selectedRow, 2)), textBox.getText()); } } else if ((char) KeyCodes.KEY_ESCAPE == event.getNativeKeyCode()) { tableBookmark.setHTML(0, 1, table.getText(selectedRow, 1)); deleteButton.setEnabled(true); updateButton.setEnabled(true); } } }); cancelButton = new Button(Main.i18n("button.close"), new ClickHandler() { @Override public void onClick(ClickEvent event) { Main.get().mainPanel.topPanel.mainMenu.bookmark.getAll(); // Refreshing menu after edit bookmarks hide(); } }); cancelButton.setStyleName("okm-NoButton"); deleteButton = new Button(Main.i18n("button.delete"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (selectedRow >= 0) { remove(Integer.parseInt(table.getText(selectedRow, 2))); } } }); deleteButton.setStyleName("okm-DeleteButton"); deleteButton.setEnabled(false); updateButton = new Button(Main.i18n("button.update"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (selectedRow >= 0) { textBox.setText(table.getHTML(selectedRow, 1)); tableBookmark.setWidget(0, 1, textBox); updateButton.setEnabled(false); deleteButton.setEnabled(false); textBox.setFocus(true); } } }); updateButton.setStyleName("okm-YesButton"); updateButton.setEnabled(false); table = new FlexTable(); table.setBorderWidth(0); table.setCellSpacing(0); table.setCellSpacing(0); table.setWidth("100%"); table.addStyleName("okm-DisableSelect"); table.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // Mark selected row or orders rows if header row (0) is clicked // And row must be other than the selected one int row = table.getCellForEvent(event).getRowIndex(); if (row != selectedRow) { styleRow(selectedRow, false); styleRow(row, true); selectedRow = row; if (bookmarkMap.containsKey(table.getText(row, 2))) { GWTBookmark bookmark = (GWTBookmark) bookmarkMap.get(table.getText(row, 2)); tableBookmark.setHTML(0, 1, bookmark.getName()); tableBookmark.setHTML(0, 2, table.getText(row, 2)); tableBookmark.getFlexCellFormatter().setVisible(0, 2, false); tableBookmark.setHTML(1, 1, bookmark.getPath()); if (bookmark.getType().equals(Bookmark.BOOKMARK_DOCUMENT)) { tableBookmark.setHTML(2, 1, Main.i18n("bookmark.type.document")); } else if (bookmark.getType().equals(Bookmark.BOOKMARK_FOLDER)) { tableBookmark.setHTML(2, 1, Main.i18n("bookmark.type.folder")); } } deleteButton.setEnabled(true); updateButton.setEnabled(true); } } }); scrollPanel = new ScrollPanel(table); scrollPanel.setSize("380", "150"); scrollPanel.setStyleName("okm-Bookmark-Panel"); // Selected Bookmark data tableBookmark = new FlexTable(); tableBookmark.setBorderWidth(0); tableBookmark.setCellSpacing(0); tableBookmark.setCellSpacing(0); tableBookmark.setWidth("100%"); tableBookmark.setHTML(0, 0, "<b>" + Main.i18n("bookmark.name") + "</b>"); tableBookmark.setHTML(0, 1, ""); tableBookmark.setHTML(1, 0, "<b>" + Main.i18n("bookmark.path") + "</b>"); tableBookmark.setHTML(1, 1, ""); tableBookmark.setHTML(2, 0, "<b>" + Main.i18n("bookmark.type") + "</b>"); tableBookmark.setHTML(2, 1, ""); tableBookmark.getCellFormatter().setWidth(0, 0, "15%"); tableBookmark.getCellFormatter().setWidth(0, 1, "15%"); tableBookmark.getCellFormatter().setWidth(0, 2, "70%"); // Set no wrap CellFormatter cellFormatter = tableBookmark.getCellFormatter(); for (int i = 0; i < columns; i++) { cellFormatter.setWordWrap(0, i, false); cellFormatter.setWordWrap(1, i, false); cellFormatter.setWordWrap(2, i, false); } scrollPanelBookmark = new ScrollPanel(tableBookmark); scrollPanelBookmark.setWidth("380"); scrollPanelBookmark.setStyleName("okm-Bookmark-Panel"); scrollPanelBookmark.setAlwaysShowScrollBars(false); hPanel = new HorizontalPanel(); hPanel.add(deleteButton); hPanel.add(new HTML(" ")); hPanel.add(updateButton); vPanel.add(new HTML("<br>")); vPanel.add(scrollPanelBookmark); vPanel.add(new HTML("<br>")); vPanel.add(hPanel); vPanel.add(new HTML("<br>")); vPanel.add(scrollPanel); vPanel.add(new HTML("<br>")); vPanel.add(cancelButton); vPanel.add(new HTML("<br>")); vPanel.setCellHorizontalAlignment(scrollPanelBookmark, HorizontalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HorizontalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(scrollPanel, HorizontalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(cancelButton, HorizontalPanel.ALIGN_CENTER); vPanel.setWidth("100%"); center(); hide(); setWidget(vPanel); }
From source file:com.ikon.frontend.client.widget.MsgPopup.java
License:Open Source License
/** * MsgPopup/*w w w . j av a2s . c o m*/ */ public MsgPopup() { // Establishes auto-close when click outside super(false, true); setTitle(Main.i18n("msg.title")); table = new FlexTable(); table.setCellPadding(2); table.setCellSpacing(0); table.setWidth("100%"); vPanel = new VerticalPanel(); sPanel = new ScrollPanel(); button = new Button(Main.i18n("button.close"), this); vPanel.setWidth("500px"); vPanel.setHeight("240px"); sPanel.setWidth("480px"); sPanel.setHeight("200px"); sPanel.setStyleName("okm-Popup-text"); vPanel.add(new HTML("<br>")); sPanel.add(table); vPanel.add(sPanel); vPanel.add(new HTML("<br>")); vPanel.add(button); vPanel.add(new HTML("<br>")); vPanel.setCellHorizontalAlignment(table, VerticalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(sPanel, VerticalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(button, VerticalPanel.ALIGN_CENTER); center(); button.setStyleName("okm-YesButton"); table.setStyleName("okm-NoWrap"); hide(); setWidget(vPanel); }