List of usage examples for com.google.gwt.user.client.ui FlexTable FlexTable
public FlexTable()
From source file:com.openkm.frontend.client.widget.form.FormManager.java
License:Open Source License
/** * drawFormElement// w ww. j a v a 2 s . co m */ 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 || isMassiveView) { 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); propertyHandler.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (propertyHandler != null) { textArea.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { propertyHandler.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 (propertyHandler != null) { propertyHandler.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.createClipboardButton(containerName, url); } 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, propertyHandler); } }); 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 || isMassiveView) { 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 (propertyHandler != null) { propertyHandler.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); propertyHandler.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (propertyHandler != null) { textBox.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { propertyHandler.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, propertyHandler); 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 || isMassiveView) { 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); propertyHandler.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 || isMassiveView) { 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); propertyHandler.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (propertyHandler != null) { checkBox.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { propertyHandler.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(); } } // Mark suggested if (!gwtSelect.getSuggestion().equals("")) { NodeList<Element> nodeList = listBox.getElement().getElementsByTagName("option"); int count = 1; // 0 is empty value for (GWTOption option : gwtSelect.getOptions()) { if (nodeList.getLength() < (count)) { break; } if (option.isSuggested()) { nodeList.getItem(count).setClassName("okm-Option-Suggested"); } else { nodeList.getItem(count).setClassName("okm-Option"); } count++; } } 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 || isMassiveView) { 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); propertyHandler.propertyRemoved(); } }); removeImage.addStyleName("okm-Hyperlink"); table.setWidget(row, 2, removeImage); table.getCellFormatter().setVerticalAlignment(row, 2, HasAlignment.ALIGN_TOP); if (propertyHandler != null) { listBox.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { propertyHandler.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 (propertyHandler != null) { propertyHandler.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 (propertyHandler != null) { propertyHandler.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 (propertyHandler != null) { propertyHandler.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()); } } // Mark suggested if (!gwtSelect.getSuggestion().equals("")) { NodeList<Element> nodeList = listMulti.getElement().getElementsByTagName("option"); int count = 1; // 0 is empty value for (GWTOption option : gwtSelect.getOptions()) { // In list only are shown not selected items if (!option.isSelected()) { if (nodeList.getLength() < (count)) { break; } if (option.isSuggested()) { nodeList.getItem(count).setClassName("okm-Option-Suggested"); } else { nodeList.getItem(count).setClassName("okm-Option"); } count++; } } } // Save panel hWidgetProperties.put(propertyName, hPanel); if (searchView || isMassiveView) { 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); propertyHandler.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) { CommonUI.openPath(Util.getParent(docPath), 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) { Util.print(node.getUuid()); } }); } 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) { Util.print(uuid); } }); } @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.openkm.frontend.client.widget.mainmenu.ManageBookmarkPopup.java
License:Open Source License
/** * ManageBookmarkPopup//from www. jav a2 s . co m */ 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-ChangeButton"); 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.openkm.frontend.client.widget.massive.CategoriesPopup.java
License:Open Source License
/** * CategoriesPopup/*from w w w . j ava 2 s.c o m*/ */ public CategoriesPopup() { // Establishes auto-close when click outside super(false, true); setText(Main.i18n("category.add")); // Status status = new Status(this); status.setStyleName("okm-StatusPopup"); table = new FlexTable(); tableSubscribedCategories = new FlexTable(); assignedCategories = new ArrayList<GWTFolder>(); cellFormatter = table.getCellFormatter(); // Gets the cell formatter table.setWidth("100%"); table.setCellPadding(0); table.setCellSpacing(2); // Categories vPanel = new VerticalPanel(); vPanel.setWidth("470"); vPanel.setHeight("175"); scrollDirectoryPanel = new ScrollPanel(); scrollDirectoryPanel.setSize("460", "150"); scrollDirectoryPanel.setStyleName("okm-Popup-text"); verticalDirectoryPanel = new VerticalPanel(); verticalDirectoryPanel.setSize("100%", "100%"); folderSelectTree = new FolderSelectTree(); folderSelectTree.setSize("100%", "100%"); verticalDirectoryPanel.add(folderSelectTree); scrollDirectoryPanel.add(verticalDirectoryPanel); add = new Button(Main.i18n("button.add"), new ClickHandler() { @Override public void onClick(ClickEvent event) { addCategory(folderSelectTree.getCategory()); } }); add.setEnabled(false); close = new Button(Main.i18n("button.close"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (Main.get().mainPanel.desktop.browser.fileBrowser.isMassive()) { Main.get().mainPanel.topPanel.toolBar.executeRefresh(); } hide(); } }); vPanel.add(scrollDirectoryPanel); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(close); hPanel.add(new HTML(" ")); hPanel.add(add); vPanel.add(hPanel); vPanel.setCellHorizontalAlignment(scrollDirectoryPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellVerticalAlignment(hPanel, HasAlignment.ALIGN_MIDDLE); vPanel.setCellHeight(scrollDirectoryPanel, "150"); vPanel.setCellHeight(hPanel, "25"); table.setWidget(0, 0, vPanel); table.getFlexCellFormatter().setColSpan(1, 0, 2); cellFormatter.setHorizontalAlignment(1, 0, HasAlignment.ALIGN_CENTER); table.setHTML(1, 0, " <b>" + Main.i18n("document.categories") + "</b>"); table.getFlexCellFormatter().setColSpan(2, 0, 2); cellFormatter.setHorizontalAlignment(2, 0, HasAlignment.ALIGN_LEFT); table.setWidget(2, 0, tableSubscribedCategories); table.getFlexCellFormatter().setColSpan(3, 0, 2); cellFormatter.setHorizontalAlignment(3, 0, HasAlignment.ALIGN_LEFT); setRowWordWarp(0, 0, true, tableSubscribedCategories); table.setStyleName("okm-DisableSelect"); close.setStyleName("okm-NoButton"); add.setStyleName("okm-AddButton"); tableSubscribedCategories.setStyleName("okm-DisableSelect"); setWidget(table); }
From source file:com.openkm.frontend.client.widget.massive.KeywordsPopup.java
License:Open Source License
/** * KeywordsPopup/*from ww w . ja va 2 s . co m*/ */ public KeywordsPopup() { // Establishes auto-close when click outside super(false, true); setText(Main.i18n("keyword.add")); // Status status = new Status(this); status.setStyleName("okm-StatusPopup"); table = new FlexTable(); table.setWidth("100%"); table.setCellPadding(0); table.setCellSpacing(2); cellFormatter = table.getCellFormatter(); // Gets the cell formatter docKeywords = new ArrayList<String>(); keywordMap = new HashMap<String, Widget>(); keyWordsListPending = new ArrayList<String>(); keywordsCloud = new TagCloud(); keywordsCloud.setWidth("350"); keywordPanel = new HorizontalPanel(); multiWordkSuggestKey = new MultiWordSuggestOracle(); keywordList = new ArrayList<String>(); suggestKey = new SuggestBox(multiWordkSuggestKey); suggestKey.setHeight("20"); suggestKey.setText(Main.i18n("dashboard.keyword.suggest")); suggestKey.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if ((char) KeyCodes.KEY_ENTER == event.getNativeKeyCode() && keyWordsListPending.isEmpty()) { Main.get().mainPanel.enableKeyShorcuts(); // Enables general keys applications String keys[] = suggestKey.getText().split(" "); // Separates keywords by space for (int i = 0; i < keys.length; i++) { keyWordsListPending.add(keys[i]); } addPendingKeyWordsList(); suggestKey.setText(""); } } }); suggestKey.getTextBox().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (suggestKey.getText().equals(Main.i18n("dashboard.keyword.suggest"))) { suggestKey.setText(""); } Main.get().mainPanel.disableKeyShorcuts(); // Disables key shortcuts while updating } }); suggestKey.getTextBox().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (suggestKey.getText().equals(Main.i18n("dashboard.keyword.suggest"))) { suggestKey.setText(""); } } }); suggestKey.getTextBox().addMouseOutHandler(new MouseOutHandler() { @Override public void onMouseOut(MouseOutEvent event) { if (!keyShortcutsEnabled) { Main.get().mainPanel.enableKeyShorcuts(); // Enables general keys applications keyShortcutsEnabled = true; } } }); thesaurusImage = new Image(OKMBundleResources.INSTANCE.bookOpenIcon()); thesaurusImage.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Main.get().mainPanel.desktop.navigator.thesaurusTree.thesaurusSelectPopup .show(ThesaurusSelectPopup.MASSIVE); } }); VerticalPanel vPanel = new VerticalPanel(); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(suggestKey); hPanel.add(new HTML(" ")); hPanel.add(thesaurusImage); hKeyPanel = new FlowPanel(); HTML space = new HTML(""); vPanel.add(hPanel); vPanel.add(space); vPanel.add(hKeyPanel); close = new Button(Main.i18n("button.close"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (Main.get().mainPanel.desktop.browser.fileBrowser.isMassive()) { Main.get().mainPanel.topPanel.toolBar.executeRefresh(); Main.get().mainPanel.dashboard.keyMapDashboard.refreshAll(); } Main.get().mainPanel.enableKeyShorcuts(); hide(); } }); close.setStyleName("okm-NoButton"); hKeyPanel.setWidth("250"); vPanel.setCellHeight(space, "5"); keywordPanel.add(vPanel); table.setHTML(0, 0, "<b>" + Main.i18n("document.keywords") + "</b>"); table.setWidget(0, 1, keywordPanel); cellFormatter.setVerticalAlignment(0, 0, HasAlignment.ALIGN_TOP); table.setHTML(1, 0, ""); table.getFlexCellFormatter().setHeight(1, 0, "5"); table.setHTML(2, 0, "<b>" + Main.i18n("document.keywords.cloud") + "</b>"); table.getFlexCellFormatter().setColSpan(2, 0, 2); table.setWidget(3, 0, keywordsCloud); table.getFlexCellFormatter().setColSpan(3, 0, 2); cellFormatter.setHorizontalAlignment(3, 0, HasAlignment.ALIGN_LEFT); table.setWidget(4, 0, close); table.getFlexCellFormatter().setColSpan(4, 0, 2); cellFormatter.setHorizontalAlignment(4, 0, HasAlignment.ALIGN_CENTER); table.setStyleName("okm-DisableSelect"); suggestKey.setStyleName("okm-KeyMap-Suggest"); suggestKey.addStyleName("okm-Input"); hKeyPanel.setStylePrimaryName("okm-cloudWrap"); keywordsCloud.setStylePrimaryName("okm-cloudWrap"); thesaurusImage.addStyleName("okm-Hyperlink"); setWidget(table); }
From source file:com.openkm.frontend.client.widget.massive.OmrPopup.java
License:Open Source License
/** * OmrPopup popup//from w w w .j av a2 s . com */ public OmrPopup() { // Establishes auto-close when click outside super(false, true); setText(Main.i18n("omr.label")); table = new FlexTable(); table.setCellSpacing(0); table.setCellPadding(4); // Status status = new Status(this); status.setStyleName("okm-StatusPopup"); templateNameText = new HTML(Main.i18n("omr.template.name")); listBox = new ListBox(); listBox.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent arg0) { if (listBox.getSelectedIndex() > 0) { executeButton.setEnabled(true); } else { executeButton.setEnabled(false); } } }); listBox.setStyleName("okm-Select"); cancelButton = new Button(Main.i18n("button.cancel"), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (Main.get().mainPanel.desktop.browser.fileBrowser.isMassive()) { Main.get().mainPanel.topPanel.toolBar.executeRefresh(); } hide(); } }); cancelButton.setStyleName("okm-NoButton"); executeButton = new Button(Main.i18n("button.execute"), new ClickHandler() { @Override public void onClick(ClickEvent event) { process(); } }); executeButton.setStyleName("okm-AddButton"); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(cancelButton); hPanel.add(Util.hSpace("5")); hPanel.add(executeButton); hPanel.setCellHorizontalAlignment(cancelButton, VerticalPanel.ALIGN_CENTER); hPanel.setCellHorizontalAlignment(executeButton, VerticalPanel.ALIGN_CENTER); table.setWidget(0, 0, templateNameText); table.setWidget(0, 1, listBox); table.setWidget(1, 0, hPanel); table.getFlexCellFormatter().setColSpan(1, 0, 2); table.getFlexCellFormatter().setHorizontalAlignment(1, 0, HasAlignment.ALIGN_CENTER); super.hide(); setWidget(table); }
From source file:com.openkm.frontend.client.widget.massive.PdfMergePopup.java
License:Open Source License
/** * PdfMergePopup/*from www. ja va2s .c om*/ */ public PdfMergePopup() { super(false, true); setText(Main.i18n("merge.pdf.label")); // Status status = new Status(this); status.setStyleName("okm-StatusPopup"); // Main panel vPanel = new VerticalPanel(); vPanel.setWidth("100%"); // Documents table table = new FlexTable(); table.setWidth("100%"); table.setCellPadding(4); table.setCellSpacing(0); table.setStyleName("whitePanel"); table.addStyleName("okm-NoWrap"); table.addStyleName("okm-Input"); // Buttons hPanel = new HorizontalPanel(); cancel = new Button(Main.i18n("button.cancel"), new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); cancel.setStyleName("okm-NoButton"); merge = new Button(Main.i18n("button.merge"), new ClickHandler() { @Override public void onClick(ClickEvent event) { merge(); } }); merge.setStyleName("okm-YesButton"); hPanel.add(cancel); hPanel.add(new HTML(" ")); hPanel.add(merge); // Name hNamePanel = new HorizontalPanel(); name = new TextBox(); name.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if (name.getText().length() > 0) { if (KeyCodes.KEY_ENTER == event.getNativeKeyCode()) { merge(); } merge.setEnabled(true); } else { merge.setEnabled(false); } } }); name.setWidth("200"); name.setStyleName("okm-Input"); nameText = new HTML(Main.i18n("merge.pdf.filename")); nameText.setStyleName("okm-NoWrap"); hNamePanel.add(nameText); hNamePanel.add(Util.hSpace("5")); hNamePanel.add(name); // Data panel dataPanel = new VerticalPanel(); dataPanel.setWidth("95%"); dataPanel.add(hNamePanel); dataPanel.add(Util.vSpace("5")); dataPanel.add(table); vPanel.add(Util.vSpace("5")); vPanel.add(dataPanel); vPanel.add(Util.vSpace("5")); vPanel.add(hPanel); vPanel.add(Util.vSpace("5")); vPanel.setCellHorizontalAlignment(dataPanel, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(hPanel, HasAlignment.ALIGN_CENTER); super.hide(); setWidget(vPanel); }
From source file:com.openkm.frontend.client.widget.massive.UpdatePropertyGroupPopup.java
License:Open Source License
/** * UpdatePropertyGroupPopup/*from w w w. java 2s .c o m*/ */ public UpdatePropertyGroupPopup() { // Establishes auto-close when click outside super(false, true); setText(Main.i18n("group.update.label")); uuidList = new ArrayList<String>(); vPanel = new VerticalPanel(); formManager = new FormManager(); formManager.setIsMassiveUpdate(this); table = new FlexTable(); table.setWidth("100%"); vPanel.setWidth("100%"); // Table padding and spacing properties formManager.getTable().setCellPadding(2); formManager.getTable().setCellSpacing(2); // popup to add new property groupPopup = new GroupPopup(); groupPopup.setWidth("250px"); groupPopup.setHeight("125px"); groupPopup.setStyleName("okm-Popup"); groupPopup.addStyleName("okm-DisableSelect"); addGroup = new Button(Main.i18n("search.add.property.group")); addGroup.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { groupPopup.show(UIDockPanelConstants.DESKTOP); } }); addGroup.setStyleName("okm-AddButton"); addGroup.addStyleName("okm-NoWrap"); // recursive recursivePanel = new HorizontalPanel(); recursive = new CheckBox(); recursiveText = new HTML(Main.i18n("group.update.recursive")); recursivePanel.add(recursive); recursivePanel.add(Util.hSpace("5")); recursivePanel.add(recursiveText); recursivePanel.setCellVerticalAlignment(recursive, HasAlignment.ALIGN_MIDDLE); recursivePanel.setCellVerticalAlignment(recursiveText, HasAlignment.ALIGN_MIDDLE); // group table.setWidget(0, 0, Util.hSpace("5")); table.setWidget(0, 1, addGroup); table.setWidget(0, 2, Util.hSpace("5")); // metadata table.setWidget(1, 0, Util.hSpace("5")); table.setWidget(1, 1, formManager.getTable()); table.setWidget(1, 2, Util.hSpace("5")); // recursive table.setWidget(2, 0, Util.hSpace("5")); table.setWidget(2, 1, recursivePanel); table.setWidget(2, 2, Util.hSpace("5")); // buttons updateButton = new Button(Main.i18n("button.update")); updateButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (formManager.getValidationProcessor().validate()) { uuidList.clear(); final boolean isMassive = Main.get().mainPanel.desktop.browser.fileBrowser.isMassive(); if (!isMassive) { uuidList.add(Main.get().mainPanel.topPanel.toolBar.getActualNodeUUID()); } else { uuidList.addAll( Main.get().mainPanel.desktop.browser.fileBrowser.table.getAllSelectedUUIDs()); } massiveService.setMixedProperties(uuidList, formManager.updateFormElementsValuesWithNewer(), recursive.getValue(), new AsyncCallback<Object>() { @Override public void onSuccess(Object result) { if (!isMassive) { hide(); PropertyGroupUtils.refreshingActualNode( formManager.updateFormElementsValuesWithNewer(), false); } } @Override public void onFailure(Throwable caught) { Main.get().showError("setMixedProperties", caught); } }); if (isMassive) { hide(); } } } }); updateButton.setStyleName("okm-YesButton"); cancelButton = new Button(Main.i18n("button.cancel")); cancelButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); cancelButton.setStyleName("okm-NoButton"); HorizontalPanel buttonsPanel = new HorizontalPanel(); buttonsPanel.add(Util.hSpace("5")); buttonsPanel.add(cancelButton); buttonsPanel.add(Util.hSpace("5")); buttonsPanel.add(updateButton); buttonsPanel.add(Util.hSpace("5")); // Main panel vPanel.add(table); vPanel.add(Util.vSpace("5")); vPanel.add(buttonsPanel); vPanel.add(Util.vSpace("5")); table.getCellFormatter().setHorizontalAlignment(0, 1, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(table, HasAlignment.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(buttonsPanel, HasAlignment.ALIGN_CENTER); super.hide(); setWidget(vPanel); }
From source file:com.openkm.frontend.client.widget.MsgPopup.java
License:Open Source License
/** * MsgPopup// w w w. java 2 s .c om */ 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(); buttonClean = new Button(Main.i18n("button.clean"), new ClickHandler() { @Override public void onClick(ClickEvent event) { reset(); hide(); } }); buttonClean.setStyleName("okm-CleanButton"); buttonClose = new Button(Main.i18n("button.close"), new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); buttonClose.setStyleName("okm-YesButton"); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(buttonClean); hPanel.add(Util.hSpace("5")); hPanel.add(buttonClose); vPanel.setWidth("550px"); vPanel.setHeight("290px"); sPanel.setWidth("530px"); sPanel.setHeight("250px"); sPanel.setStyleName("okm-Popup-text"); vPanel.add(new HTML("<br>")); sPanel.add(table); vPanel.add(sPanel); vPanel.add(new HTML("<br>")); vPanel.add(buttonClose); vPanel.add(new HTML("<br>")); vPanel.setCellHorizontalAlignment(table, VerticalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(sPanel, VerticalPanel.ALIGN_CENTER); vPanel.setCellHorizontalAlignment(buttonClose, VerticalPanel.ALIGN_CENTER); hide(); setWidget(vPanel); }
From source file:com.openkm.frontend.client.widget.properties.Document.java
License:Open Source License
/** * Document/* w w w .j a v a2 s .c o m*/ */ public Document() { categoryManager = new CategoryManager(CategoryManager.ORIGIN_DOCUMENT); keywordManager = new KeywordManager(ThesaurusSelectPopup.DOCUMENT_PROPERTIES); document = new GWTDocument(); table = new FlexTable(); tableProperties = new FlexTable(); tableSubscribedUsers = new FlexTable(); scrollPanel = new ScrollPanel(table); tableProperties.setHTML(0, 0, "<b>" + Main.i18n("document.uuid") + "</b>"); tableProperties.setHTML(0, 1, ""); tableProperties.setHTML(1, 0, "<b>" + Main.i18n("document.name") + "</b>"); tableProperties.setHTML(1, 1, ""); tableProperties.setHTML(2, 0, "<b>" + Main.i18n("document.folder") + "</b>"); tableProperties.setHTML(3, 1, ""); tableProperties.setHTML(3, 0, "<b>" + Main.i18n("document.size") + "</b>"); tableProperties.setHTML(4, 1, ""); tableProperties.setHTML(4, 0, "<b>" + Main.i18n("document.created") + "</b>"); tableProperties.setHTML(5, 1, ""); tableProperties.setHTML(5, 0, "<b>" + Main.i18n("document.lastmodified") + "</b>"); tableProperties.setHTML(5, 1, ""); tableProperties.setHTML(6, 0, "<b>" + Main.i18n("document.mimetype") + "</b>"); tableProperties.setHTML(6, 1, ""); tableProperties.setHTML(7, 0, "<b>" + Main.i18n("document.keywords") + "</b>"); tableProperties.setHTML(7, 1, ""); tableProperties.setHTML(8, 0, "<b>" + Main.i18n("document.status") + "</b>"); tableProperties.setHTML(8, 1, ""); tableProperties.setHTML(9, 0, "<b>" + Main.i18n("document.subscribed") + "</b>"); tableProperties.setHTML(9, 1, ""); tableProperties.setHTML(10, 0, "<b>" + Main.i18n("document.history.size") + "</b>"); tableProperties.setHTML(10, 1, ""); tableProperties.setHTML(11, 0, "<b>" + Main.i18n("document.url") + "</b>"); tableProperties.setWidget(11, 1, new HTML("")); tableProperties.setHTML(12, 0, "<b>" + Main.i18n("document.webdav") + "</b>"); tableProperties.setWidget(12, 1, new HTML("")); tableProperties.getCellFormatter().setVerticalAlignment(7, 0, HasAlignment.ALIGN_TOP); // Sets the tagcloud keywordManager.getKeywordCloud().setWidth("350"); VerticalPanel vPanel2 = new VerticalPanel(); hPanelSubscribedUsers = new HorizontalPanel(); subcribedUsersText = new HTML("<b>" + Main.i18n("document.subscribed.users") + "<b>"); hPanelSubscribedUsers.add(subcribedUsersText); hPanelSubscribedUsers.add(new HTML(" ")); hPanelSubscribedUsers.setCellVerticalAlignment(subcribedUsersText, HasAlignment.ALIGN_MIDDLE); vPanel2.add(hPanelSubscribedUsers); vPanel2.add(tableSubscribedUsers); HTML space2 = new HTML(""); vPanel2.add(space2); vPanel2.add(keywordManager.getKeywordCloudText()); vPanel2.add(keywordManager.getKeywordCloud()); HTML space3 = new HTML(""); vPanel2.add(space3); vPanel2.add(categoryManager.getPanelCategories()); vPanel2.add(categoryManager.getSubscribedCategoriesTable()); vPanel2.setCellHeight(space2, "10"); vPanel2.setCellHeight(space3, "10"); table.setWidget(0, 0, tableProperties); table.setHTML(0, 1, ""); table.setWidget(0, 2, vPanel2); // The hidden column extends table to 100% width CellFormatter cellFormatter = table.getCellFormatter(); cellFormatter.setWidth(0, 1, "25"); cellFormatter.setVerticalAlignment(0, 0, HasAlignment.ALIGN_TOP); cellFormatter.setVerticalAlignment(0, 2, HasAlignment.ALIGN_TOP); // Sets wordWrap for al rows for (int i = 0; i < 11; i++) { setRowWordWarp(i, 0, true, tableProperties); } setRowWordWarp(0, 0, true, tableSubscribedUsers); tableProperties.setStyleName("okm-DisableSelect"); tableSubscribedUsers.setStyleName("okm-DisableSelect"); initWidget(scrollPanel); }
From source file:com.openkm.frontend.client.widget.properties.Folder.java
License:Open Source License
/** * The folder//from w w w . j ava2 s .c o m */ public Folder() { folder = new GWTFolder(); categoryManager = new CategoryManager(CategoryManager.ORIGIN_FOLDER); keywordManager = new KeywordManager(ThesaurusSelectPopup.FOLDER_PROPERTIES); table = new FlexTable(); tableProperties = new FlexTable(); tableSubscribedUsers = new FlexTable(); scrollPanel = new ScrollPanel(table); tableProperties.setHTML(0, 0, "<b>" + Main.i18n("folder.uuid") + "</b>"); tableProperties.setHTML(0, 1, ""); tableProperties.setHTML(1, 0, "<b>" + Main.i18n("folder.name") + "</b>"); tableProperties.setHTML(1, 1, ""); tableProperties.setHTML(2, 0, "<b>" + Main.i18n("folder.parent") + "</b>"); tableProperties.setHTML(2, 1, ""); tableProperties.setHTML(3, 0, "<b>" + Main.i18n("folder.created") + "</b>"); tableProperties.setHTML(3, 1, ""); tableProperties.setHTML(4, 0, "<b>" + Main.i18n("folder.subscribed") + "</b>"); tableProperties.setHTML(4, 1, ""); tableProperties.setHTML(5, 0, "<b>" + Main.i18n("folder.number.folders") + "</b>"); tableProperties.setHTML(5, 1, ""); tableProperties.setHTML(6, 0, "<b>" + Main.i18n("folder.number.documents") + "</b>"); tableProperties.setHTML(6, 1, ""); tableProperties.setHTML(7, 0, "<b>" + Main.i18n("folder.number.mails") + "</b>"); tableProperties.setHTML(7, 1, ""); tableProperties.setHTML(8, 0, "<b>" + Main.i18n("folder.keywords") + "</b>"); tableProperties.setHTML(8, 1, ""); tableProperties.setHTML(9, 0, "<b>" + Main.i18n("folder.url") + "</b>"); tableProperties.setWidget(9, 1, new HTML("")); tableProperties.setHTML(10, 0, "<b>" + Main.i18n("folder.webdav") + "</b>"); tableProperties.setWidget(10, 1, new HTML("")); //Added 17/02/2017/ tableProperties.setHTML(11, 0, "<b> Code du dossier </b>"); tableProperties.setWidget(10, 1, new HTML("")); tableProperties.getCellFormatter().setVerticalAlignment(8, 0, HasAlignment.ALIGN_TOP); // Sets the tagcloud keywordManager.getKeywordCloud().setWidth("350"); VerticalPanel vPanel2 = new VerticalPanel(); hPanelSubscribedUsers = new HorizontalPanel(); subcribedUsersText = new HTML("<b>" + Main.i18n("folder.subscribed.users") + "<b>"); hPanelSubscribedUsers.add(subcribedUsersText); hPanelSubscribedUsers.add(new HTML(" ")); hPanelSubscribedUsers.setCellVerticalAlignment(subcribedUsersText, HasAlignment.ALIGN_MIDDLE); vPanel2.add(hPanelSubscribedUsers); vPanel2.add(tableSubscribedUsers); HTML space2 = new HTML(""); vPanel2.add(space2); vPanel2.add(keywordManager.getKeywordCloudText()); vPanel2.add(keywordManager.getKeywordCloud()); HTML space3 = new HTML(""); vPanel2.add(space3); vPanel2.add(categoryManager.getPanelCategories()); vPanel2.add(categoryManager.getSubscribedCategoriesTable()); vPanel2.setCellHeight(space2, "10"); vPanel2.setCellHeight(space3, "10"); table.setWidget(0, 0, tableProperties); table.setHTML(0, 1, ""); table.setWidget(0, 2, vPanel2); // The hidden column extends table to 100% width CellFormatter cellFormatter = table.getCellFormatter(); cellFormatter.setWidth(0, 1, "25"); cellFormatter.setVerticalAlignment(0, 0, HasAlignment.ALIGN_TOP); cellFormatter.setVerticalAlignment(0, 2, HasAlignment.ALIGN_TOP); // Sets wordWrap for al rows for (int i = 0; i < 11; i++) { setRowWordWarp(i, 0, true, tableProperties); } setRowWordWarp(0, 0, true, tableSubscribedUsers); tableProperties.setStyleName("okm-DisableSelect"); tableSubscribedUsers.setStyleName("okm-DisableSelect"); initWidget(scrollPanel); }