List of usage examples for com.google.gwt.user.client.ui HorizontalPanel setCellVerticalAlignment
public void setCellVerticalAlignment(IsWidget w, VerticalAlignmentConstant align)
From source file:com.google.sampling.experiential.client.WeeklyPanel.java
License:Open Source License
private void createRepeatWeeklyPanel(VerticalPanel verticalPanel) { HorizontalPanel horizontalPanel = new HorizontalPanel(); verticalPanel.add(horizontalPanel);/*from w w w. ja v a 2 s . co m*/ horizontalPanel.setWidth("239px"); Label lblRepeatOn = new Label(myConstants.repeatOn() + ":"); lblRepeatOn.setStyleName("gwt-Label-Header"); horizontalPanel.add(lblRepeatOn); horizontalPanel.setCellVerticalAlignment(lblRepeatOn, HasVerticalAlignment.ALIGN_MIDDLE); lblRepeatOn.setSize("82px", "19px"); WeekDayPanel weekDay = new WeekDayPanel(true, schedule); horizontalPanel.add(weekDay); horizontalPanel.setCellVerticalAlignment(weekDay, HasVerticalAlignment.ALIGN_MIDDLE); }
From source file:com.ikon.frontend.client.util.validator.ValidatorBuilder.java
License:Open Source License
public static void addValidator(ValidationProcessor validationProcessor, FocusAction focusAction, HorizontalPanel hPanel, String name, GWTValidator validator, Widget widget) { String type = validator.getType(); if (type.equals("req")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.required.field")); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space);/*from w w w .j a v a 2s.c om*/ hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_req", new NotEmptyValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_req", new NotEmptyValidator((TextArea) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof ListBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_req", new ListBoxValidator((ListBox) widget, "").addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof FlexTable) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_req", new NotEmptyFlextTableValidator((FlexTable) widget) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof FileUpload) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_req", new NotEmptyFileUploadValidator((FileUpload) widget) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("email")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.mail.required.field")); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_email", new EmailValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("url")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.url.required.field")); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_url", new URLValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("minlen")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.minlen.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_minlen", new StringMinLengthValidator((TextBox) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_minlen", new StringMinLengthValidator((TextArea) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("maxlen")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.maxlen.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_maxlen", new StringMaxLengthValidator((TextBox) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_maxlen", new StringMaxLengthValidator((TextArea) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("lt")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.lt.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_lt", new StringLtValidator((TextBox) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_lt", new StringLtValidator((TextArea) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("gt")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.gt.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_gt", new StringGtValidator((TextBox) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_gt", new StringGtValidator((TextArea) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("min")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.min.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_min", new IntegerMinValidator((TextBox) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_min", new IntegerMinValidator((TextArea) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("max")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.max.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_max", new IntegerMaxValidator((TextBox) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_max", new IntegerMaxValidator((TextArea) widget, Integer.parseInt(validator.getParameter())) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("regexp")) { HTML space = new HTML(""); Label errorLabel = new Label( Main.i18n("validation.regexp.required") + " - (" + validator.getParameter() + ")"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_regexp", new RegularExpressionValidator((TextBox) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_regexp", new RegularExpressionValidator((TextArea) widget, validator.getParameter()) .addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("alpha")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.alphanumeric.required")); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_alpha", new AlphaNumericValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_alpha", new AlphaNumericValidator((TextArea) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("num")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.numeric.required")); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_num", new NumericValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_num", new NumericValidator((TextArea) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } else if (type.equals("dec")) { HTML space = new HTML(""); Label errorLabel = new Label(Main.i18n("validation.decimal.required") + " - (000" + Main.i18n("general.decimal.pattern") + "00)"); errorLabel.setStyleName("okm-validationFailedText"); hPanel.add(space); hPanel.add(errorLabel); hPanel.setCellWidth(space, "5"); if (widget instanceof TextBox) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_MIDDLE); validationProcessor.addValidators(name + "_dec", new DecimalValidator((TextBox) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } else if (widget instanceof TextArea) { hPanel.setCellVerticalAlignment(errorLabel, HasAlignment.ALIGN_TOP); validationProcessor.addValidators(name + "_dec", new DecimalValidator((TextArea) widget).addActionForFailure(focusAction) .addActionForFailure(new StyleAction("okm-validationFailedBorder")) .addActionForFailure(new ErrorMsgLabelTextAction(errorLabel))); } } }
From source file:com.ikon.frontend.client.widget.dashboard.keymap.KeyMapDashboard.java
License:Open Source License
/** * KeyMapDashboard//from w w w . j a v a 2 s. c o m */ public KeyMapDashboard() { horizontalSplitPanel = new HorizontalSplitPanel(); keyAllTable = new KeywordWidget(Main.i18n("dashboard.keyword.all")); keyTopTable = new KeywordWidget(Main.i18n("dashboard.keyword.top")); keyRelatedTable = new KeywordWidget(Main.i18n("dashboard.keyword.related")); allKeywordList = new ArrayList<GWTKeyword>(); relatedKeywordList = new ArrayList<GWTKeyword>(); rateMap = new HashMap<String, String>(); HTML space = new HTML(" "); flowPanelDivisor = new HTML(" "); tagCloud = new TagCloud(); table = new KeyMapTable(); VerticalPanel contentPanel = new VerticalPanel(); contentPanel.add(tagCloud); contentPanel.add(space); contentPanel.add(flowPanelDivisor); contentPanel.add(table); contentPanel.setWidth("100%"); tagCloud.setWidth("100%"); space.setWidth("100%"); space.setHeight("10"); flowPanelDivisor.setWidth("100%"); flowPanelDivisor.setHeight("5"); scrollTable = new ScrollPanel(contentPanel); tagCloud.setStylePrimaryName("okm-cloudWrap"); flowPanelDivisor.setStyleName("okm-cloudSeparator"); table.addStyleName("okm-DisableSelect"); vPanel = new VerticalPanel(); controlPanel = new HorizontalPanel(); paginationPanel = new HorizontalPanel(); selectedKeyMap = new HashMap<String, Widget>(); multiWordSuggestKey = new MultiWordSuggestOracle(); keywordList = new ArrayList<String>(); suggestKey = new SuggestBox(multiWordSuggestKey); 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()) { selectKey(suggestKey.getText()); suggestKey.setText(""); } } }); suggestKey.getTextBox().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (suggestKey.getText().equals(Main.i18n("dashboard.keyword.suggest"))) { suggestKey.setText(""); } } }); vPanel.add(controlPanel); vPanel.add(scrollTable); vPanel.add(paginationPanel); // Image control HorizontalPanel imageControlPanel = new HorizontalPanel(); HTML space1 = new HTML(); HTML space2 = new HTML(); small = new Image("img/icon/actions/description_small_disabled.gif"); small.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (table.getActualDetail() != KeyMapTable.VISIBLE_SMALL) { disableAllDetailIcons(); table.changeVisibilityDetail(KeyMapTable.VISIBLE_SMALL); small.setUrl("img/icon/actions/description_small.gif"); } } }); medium = new Image("img/icon/actions/description_medium.gif"); // It's enabled view by default medium.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (table.getActualDetail() != KeyMapTable.VISIBLE_MEDIUM) { disableAllDetailIcons(); table.changeVisibilityDetail(KeyMapTable.VISIBLE_MEDIUM); medium.setUrl("img/icon/actions/description_medium.gif"); } } }); big = new Image("img/icon/actions/description_big_disabled.gif"); big.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (table.getActualDetail() != KeyMapTable.VISIBLE_BIG) { disableAllDetailIcons(); table.changeVisibilityDetail(KeyMapTable.VISIBLE_BIG); big.setUrl("img/icon/actions/description_big.gif"); } } }); imageControlPanel.add(space1); imageControlPanel.add(small); imageControlPanel.add(medium); imageControlPanel.add(big); imageControlPanel.add(space2); imageControlPanel.setCellWidth(space1, "8"); imageControlPanel.setCellWidth(small, "21"); imageControlPanel.setCellWidth(medium, "21"); imageControlPanel.setCellWidth(big, "21"); imageControlPanel.setCellHeight(small, "20"); imageControlPanel.setCellHeight(medium, "20"); imageControlPanel.setCellHeight(big, "20"); imageControlPanel.setCellWidth(space2, "8"); imageControlPanel.setCellHorizontalAlignment(small, HasAlignment.ALIGN_CENTER); imageControlPanel.setCellHorizontalAlignment(medium, HasAlignment.ALIGN_CENTER); imageControlPanel.setCellHorizontalAlignment(big, HasAlignment.ALIGN_CENTER); imageControlPanel.setCellVerticalAlignment(small, HasAlignment.ALIGN_MIDDLE); imageControlPanel.setCellVerticalAlignment(medium, HasAlignment.ALIGN_MIDDLE); imageControlPanel.setCellVerticalAlignment(big, HasAlignment.ALIGN_MIDDLE); // KeyWords text keywordsTXT = new HTML(); keywordsTXT.setHTML("<b>" + Main.i18n("dashboard.keyword") + "</b>"); HTML space3 = new HTML(); HorizontalPanel hPanel = new HorizontalPanel(); hPanel.add(keywordsTXT); hPanel.add(space3); hPanel.setCellWidth(space3, "8"); hPanel.setCellVerticalAlignment(keywordsTXT, HasAlignment.ALIGN_MIDDLE); selectedKeyPanel = new HorizontalPanel(); suggestKeyPanel = new HorizontalPanel(); HTML space4 = new HTML(); clean = new Image("img/icon/actions/clean_disabled.gif"); clean.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (selectedKeyMap.keySet().size() > 0) { // Resets keywordPanel for (String key : selectedKeyMap.keySet()) { selectedKeyPanel.remove((Widget) selectedKeyMap.get(key)); } selectedKeyMap = new HashMap<String, Widget>(); keyAllTable.unselectAllRows(); keyTopTable.unselectAllRows(); keyRelatedTable.unselectAllRows(); keyRelatedTable.setVisible(false); table.reset(); context.setSelectedIndex(posAllContext); controlSearchIn.refreshControl(0); getKeywordMap(); // Gets related keyMap refreshClean(); } } }); clean.setTitle(Main.i18n("dashboard.keyword.clean.keywords")); suggestKeyPanel.add(suggestKey); // Always must be the last suggestKeyPanel.add(space4); suggestKeyPanel.add(clean); suggestKeyPanel.setCellWidth(space4, "8"); suggestKeyPanel.setCellWidth(clean, "21"); suggestKeyPanel.setCellHorizontalAlignment(space4, HasAlignment.ALIGN_RIGHT); suggestKeyPanel.setCellVerticalAlignment(suggestKey, HasAlignment.ALIGN_MIDDLE); suggestKeyPanel.setCellVerticalAlignment(clean, HasAlignment.ALIGN_MIDDLE); selectedKeyPanel.add(hPanel); selectedKeyPanel.add(suggestKeyPanel); // Always must be the last selectedKeyPanel.setCellVerticalAlignment(hPanel, HasAlignment.ALIGN_MIDDLE); selectedKeyPanel.setCellVerticalAlignment(suggestKeyPanel, HasAlignment.ALIGN_MIDDLE); controlPanel.add(imageControlPanel); controlPanel.add(selectedKeyPanel); controlPanel.setCellWidth(imageControlPanel, "80"); controlPanel.setCellVerticalAlignment(imageControlPanel, HasAlignment.ALIGN_MIDDLE); controlPanel.setCellVerticalAlignment(selectedKeyPanel, HasAlignment.ALIGN_MIDDLE); // Pagination HorizontalPanel internalPaginationPanel = new HorizontalPanel(); context = new ListBox(); context.setStyleName("okm-Select"); int count = 0; posTaxonomy = count++; context.addItem(Main.i18n("leftpanel.label.taxonomy"), ""); if (templatesVisible) { posTemplates = count++; context.addItem(Main.i18n("leftpanel.label.templates"), ""); } if (personalVisible) { posPersonal = count++; context.addItem(Main.i18n("leftpanel.label.my.documents"), ""); } if (mailVisible) { posMail = count++; context.addItem(Main.i18n("leftpanel.label.mail"), ""); } if (trashVisible) { posTrash = count++; context.addItem(Main.i18n("leftpanel.label.trash"), ""); } posAllContext = count++; context.addItem(Main.i18n("leftpanel.label.all.repository"), ""); context.setSelectedIndex(posAllContext); context.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { controlSearchIn.executeSearch(limit); } }); resultPage = new ListBox(); resultPage.addItem("10", "10"); resultPage.addItem("20", "20"); resultPage.addItem("30", "30"); resultPage.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { limit = Integer.valueOf(resultPage.getValue(resultPage.getSelectedIndex())); controlSearchIn.executeSearch(limit); } }); HTML space5 = new HTML(); HTML space6 = new HTML(); HTML space7 = new HTML(); resultPageTXT = new HTML(Main.i18n("search.page.results")); controlSearchIn = new ControlSearchIn(); controlSearchIn.refreshControl(0); internalPaginationPanel.add(space5); internalPaginationPanel.add(context); internalPaginationPanel.add(space6); internalPaginationPanel.add(resultPageTXT); internalPaginationPanel.add(space7); internalPaginationPanel.add(resultPage); internalPaginationPanel.setCellWidth(space5, "8"); internalPaginationPanel.setCellWidth(space6, "8"); internalPaginationPanel.setCellWidth(space7, "8"); internalPaginationPanel.setCellHorizontalAlignment(context, HasAlignment.ALIGN_LEFT); internalPaginationPanel.setCellVerticalAlignment(context, HasAlignment.ALIGN_MIDDLE); internalPaginationPanel.setCellVerticalAlignment(resultPageTXT, HasAlignment.ALIGN_MIDDLE); internalPaginationPanel.setCellVerticalAlignment(resultPage, HasAlignment.ALIGN_MIDDLE); HTML space8 = new HTML(); HTML space9 = new HTML(); paginationPanel.add(internalPaginationPanel); paginationPanel.add(space8); paginationPanel.add(controlSearchIn); paginationPanel.add(space9); paginationPanel.setCellWidth(space8, "8"); paginationPanel.setCellWidth(space9, "8"); paginationPanel.setCellHorizontalAlignment(internalPaginationPanel, HasAlignment.ALIGN_LEFT); paginationPanel.setCellVerticalAlignment(internalPaginationPanel, HasAlignment.ALIGN_MIDDLE); paginationPanel.setCellVerticalAlignment(controlSearchIn, HasAlignment.ALIGN_MIDDLE); paginationPanel.setCellHorizontalAlignment(controlSearchIn, HasAlignment.ALIGN_RIGHT); suggestKey.setStyleName("okm-KeyMap-Suggest"); suggestKey.addStyleName("okm-Input"); controlPanel.setStyleName("okm-KeyMapControl"); controlPanel.addStyleName("okm-NoWrap"); imageControlPanel.addStyleName("okm-NoWrap"); selectedKeyPanel.addStyleName("okm-NoWrap"); paginationPanel.setStyleName("okm-PaginationControl"); paginationPanel.addStyleName("okm-NoWrap"); internalPaginationPanel.addStyleName("okm-NoWrap"); keywordsTXT.addStyleName("okm-NoWrap"); resultPage.setStyleName("okm-Input"); resultPageTXT.addStyleName("okm-NoWrap"); hPanel.addStyleName("okm-NoWrap"); clean.setStyleName("okm-KeyMap-ImageHover"); small.setStyleName("okm-KeyMap-ImageHover"); medium.setStyleName("okm-KeyMap-ImageHover"); big.setStyleName("okm-KeyMap-ImageHover"); tagCloud.setStylePrimaryName("okm-cloudWrap"); VerticalPanel vKeyPanel = new VerticalPanel(); vKeyPanel.setWidth("100%"); vKeyPanel.add(keyRelatedTable); vKeyPanel.add(keyTopTable); vKeyPanel.add(keyAllTable); keyRelatedTable.setVisible(false); // By default related table is only visible when has some content horizontalSplitPanel.setRightWidget(vKeyPanel); horizontalSplitPanel.setLeftWidget(vPanel); initWidget(horizontalSplitPanel); }
From source file:com.ikon.frontend.client.widget.form.FormManager.java
License:Open Source License
/** * drawFormElement/*from w w w . j ava 2 s . c o 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) { 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.searchresult.SearchFullResult.java
License:Open Source License
/** * drawPropertyGroups/*w w w. jav a 2 s . c o m*/ * * @param docPath * @param propertyGroups * @param propertyGroupsPanel */ private void drawPropertyGroups(final String docPath, final List<GWTPropertyGroup> propertyGroups, final HorizontalPanel propertyGroupsPanel) { if (propertyGroups.size() > 0) { Status status = Main.get().mainPanel.search.searchBrowser.searchResult.status; status.setFlag_refreshPropertyGroups(); final GWTPropertyGroup propertyGroup = propertyGroups.remove(0); propertyGroupService.getProperties(docPath, propertyGroup.getName(), new AsyncCallback<List<GWTFormElement>>() { @Override public void onSuccess(List<GWTFormElement> result) { if (propertyGroupsPanel.getWidgetCount() == 0) { HTML label = new HTML(""); label.setStyleName("okm-Security-Title"); label.setHeight("15"); Image verticalLine = new Image("img/transparent_pixel.gif"); verticalLine.setStyleName("okm-Vertical-Line-Border"); verticalLine.setSize("2", "100%"); VerticalPanel vlPanel = new VerticalPanel(); vlPanel.add(label); vlPanel.add(verticalLine); vlPanel.setCellWidth(verticalLine, "7"); vlPanel.setCellHeight(verticalLine, "100%"); vlPanel.setHeight("100%"); propertyGroupsPanel.add(vlPanel); propertyGroupsPanel.setCellHorizontalAlignment(vlPanel, HasAlignment.ALIGN_LEFT); propertyGroupsPanel.setCellWidth(vlPanel, "7"); propertyGroupsPanel.setCellHeight(vlPanel, "100%"); } Image verticalLine = new Image("img/transparent_pixel.gif"); verticalLine.setStyleName("okm-Vertical-Line-Border"); verticalLine.setSize("2", "100%"); FormManager manager = new FormManager(); manager.setFormElements(result); manager.draw(true); // read only ! VerticalPanel vPanel = new VerticalPanel(); HTML label = new HTML(propertyGroup.getLabel()); label.setStyleName("okm-Security-Title"); label.setHeight("15"); vPanel.add(label); vPanel.add(manager.getTable()); propertyGroupsPanel.add(vPanel); propertyGroupsPanel.add(verticalLine); propertyGroupsPanel.setCellVerticalAlignment(vPanel, HasAlignment.ALIGN_TOP); propertyGroupsPanel.setCellHorizontalAlignment(verticalLine, HasAlignment.ALIGN_CENTER); propertyGroupsPanel.setCellWidth(verticalLine, "12"); propertyGroupsPanel.setCellHeight(verticalLine, "100%"); drawPropertyGroups(docPath, propertyGroups, propertyGroupsPanel); } @Override public void onFailure(Throwable caught) { Main.get().showError("drawPropertyGroups", caught); } }); } else { Status status = Main.get().mainPanel.search.searchBrowser.searchResult.status; status.unsetFlag_refreshPropertyGroups(); } }
From source file:com.openkm.extension.frontend.client.widget.workflow.TabToolbarWorkflow.java
License:Open Source License
/** * TabToolbarWorkflow/* w ww . j av a 2 s . c o m*/ */ public TabToolbarWorkflow(final WorkflowController controller) { HorizontalPanel buttonsPanel = new HorizontalPanel(); hPanel = new HorizontalPanel(); // Left Space HTML space = Util.hSpace("5"); hPanel.add(space); hPanel.setCellWidth(space, "5"); // Navigator navigator = new HorizontalPanel(); // Create home = new Button(GeneralComunicator.i18nExtension("button.home")); home.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { controller.goHome(); } }); home.setStyleName("okm-HomeButton"); navigator.add(home); navigator.add(new HTML(" ")); navigator.setCellVerticalAlignment(home, HasAlignment.ALIGN_MIDDLE); // adding navigator buttonsPanel.add(navigator); buttonsPanel.setCellVerticalAlignment(navigator, HasAlignment.ALIGN_MIDDLE); // Vertical line HorizontalPanel verticalLine = new HorizontalPanel(); HTML vertical = new HTML(" "); vertical.setHeight("24"); vertical.setStyleName("okm-Border-Right"); verticalLine.add(vertical); navigator.add(verticalLine); // Action HorizontalPanel actions = new HorizontalPanel(); HTML space2 = Util.hSpace("5"); actions.add(space2); actions.setCellWidth(space2, "5"); showList = new HTML(GeneralComunicator.i18nExtension("workflow.show.list").toUpperCase()); showDetail = new HTML(GeneralComunicator.i18nExtension("workflow.show.detail").toUpperCase()); showGraph = new HTML(GeneralComunicator.i18nExtension("workflow.show.graphs").toUpperCase()); showList.setVisible(false); showDetail.setVisible(false); showGraph.setVisible(false); actions.add(showList); actions.add(showDetail); actions.add(showGraph); buttonsPanel.add(actions); buttonsPanel.setCellVerticalAlignment(actions, HasAlignment.ALIGN_MIDDLE); // Vertical line HorizontalPanel verticalLine2 = new HorizontalPanel(); HTML vertical2 = new HTML(" "); vertical2.setHeight("24"); vertical2.setStyleName("okm-Border-Right"); verticalLine2.add(vertical2); buttonsPanel.add(verticalLine2); // Adding buttons panel hPanel.add(buttonsPanel); hPanel.setCellHorizontalAlignment(buttonsPanel, HasAlignment.ALIGN_LEFT); hPanel.setCellVerticalAlignment(buttonsPanel, HasAlignment.ALIGN_MIDDLE); hPanel.setStyleName("okm-Mail"); hPanel.addStyleName("okm-Border-Bottom"); // First time must be in topic mode switchViewMode(MODE_WORKFLOW_LIST); initWidget(hPanel); }
From source file:com.openkm.frontend.client.widget.form.FormManager.java
License:Open Source License
/** * drawFormElement/* www . j a v a2 s.c o 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.massive.ConvertPopup.java
License:Open Source License
/** * ConvertPopup// ww w . ja v a 2 s .com */ public ConvertPopup() { // Establishes auto-close when click outside super(false, true); setText(Main.i18n("convert.label")); // Status status = new Status(this); status.setStyleName("okm-StatusPopup"); vPanel = new VerticalPanel(); saveCheck = new CheckBox(Main.i18n("convert.save")); saveCheck.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (saveCheck.getValue()) { downloadCheck.setValue(false); } evaluateExecuteButton(); } }); downloadCheck = new CheckBox(Main.i18n("convert.download")); downloadCheck.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (downloadCheck.getValue()) { saveCheck.setValue(false); } evaluateExecuteButton(); } }); formatText = new HTML(Main.i18n("convert.format")); formats = new ListBox(); formats.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { evaluateExecuteButton(); } }); formats.setStyleName("okm-Input"); cancelbutton = new Button(Main.i18n("button.cancel")); cancelbutton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { hide(); } }); cancelbutton.setStyleName("okm-NoButton"); executeButton = new Button(Main.i18n("button.execute")); executeButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (downloadCheck.getValue()) { Util.downloadFilePdf(doc.getUuid()); } else if (saveCheck.getValue()) { String format = formats.getValue(formats.getSelectedIndex()); if (format.equals(GWTConvertConstants.TO_PDF)) { status.setFlagConvert(); documentService.convertToPdf(doc.getPath(), new AsyncCallback<String>() { @Override public void onSuccess(String result) { Main.get().mainPanel.desktop.browser.fileBrowser.refreshOnlyFileBrowser(); status.unsetFlagConvert(); hide(); } @Override public void onFailure(Throwable caught) { Main.get().showError("convertToPdf", caught); status.unsetFlagConvert(); } }); } } } }); executeButton.setStyleName("okm-YesButton"); HorizontalPanel hCheckPanel = new HorizontalPanel(); hCheckPanel.add(saveCheck); hCheckPanel.add(Util.hSpace("5")); hCheckPanel.add(downloadCheck); hCheckPanel.add(Util.hSpace("5")); hCheckPanel.setStyleName("okm-NoWrap"); hCheckPanel.setCellVerticalAlignment(saveCheck, HasAlignment.ALIGN_MIDDLE); hCheckPanel.setCellVerticalAlignment(downloadCheck, HasAlignment.ALIGN_MIDDLE); HorizontalPanel hFormatPanel = new HorizontalPanel(); hFormatPanel.add(Util.hSpace("5")); hFormatPanel.add(formatText); hFormatPanel.add(Util.hSpace("5")); hFormatPanel.add(formats); hFormatPanel.add(Util.hSpace("5")); hFormatPanel.setCellVerticalAlignment(formatText, HasAlignment.ALIGN_MIDDLE); hFormatPanel.setCellVerticalAlignment(formats, HasAlignment.ALIGN_MIDDLE); HorizontalPanel hButtonPanel = new HorizontalPanel(); hButtonPanel.add(cancelbutton); hButtonPanel.add(Util.hSpace("5")); hButtonPanel.add(executeButton); vPanel.add(hCheckPanel); vPanel.add(Util.vSpace("5")); vPanel.add(hFormatPanel); vPanel.add(Util.vSpace("5")); vPanel.add(hButtonPanel); vPanel.add(Util.vSpace("5")); vPanel.setCellHorizontalAlignment(hButtonPanel, HasAlignment.ALIGN_CENTER); vPanel.setSize("100%", "20"); super.hide(); setWidget(vPanel); }
From source file:com.openkm.frontend.client.widget.searchresult.SearchFullResult.java
License:Open Source License
/** * drawPropertyGroups//from www. j a va2s . c om */ private void drawPropertyGroups(final String docPath, final List<GWTPropertyGroup> propertyGroups, final HorizontalPanel propertyGroupsPanel) { if (propertyGroups.size() > 0) { Status status = Main.get().mainPanel.search.searchBrowser.searchResult.status; status.setFlag_refreshPropertyGroups(); final GWTPropertyGroup propertyGroup = propertyGroups.remove(0); propertyGroupService.getProperties(docPath, propertyGroup.getName(), false, new AsyncCallback<List<GWTFormElement>>() { @Override public void onSuccess(List<GWTFormElement> result) { if (propertyGroupsPanel.getWidgetCount() == 0) { HTML label = new HTML(""); label.setStyleName("okm-Security-Title"); label.setHeight("15"); Image verticalLine = new Image("img/transparent_pixel.gif"); verticalLine.setStyleName("okm-Vertical-Line-Border"); verticalLine.setSize("2", "100%"); VerticalPanel vlPanel = new VerticalPanel(); vlPanel.add(label); vlPanel.add(verticalLine); vlPanel.setCellWidth(verticalLine, "7"); vlPanel.setCellHeight(verticalLine, "100%"); vlPanel.setHeight("100%"); propertyGroupsPanel.add(vlPanel); propertyGroupsPanel.setCellHorizontalAlignment(vlPanel, HasAlignment.ALIGN_LEFT); propertyGroupsPanel.setCellWidth(vlPanel, "7"); propertyGroupsPanel.setCellHeight(vlPanel, "100%"); } Image verticalLine = new Image("img/transparent_pixel.gif"); verticalLine.setStyleName("okm-Vertical-Line-Border"); verticalLine.setSize("2", "100%"); FormManager manager = new FormManager(); manager.setFormElements(result); manager.draw(true); // read only ! VerticalPanel vPanel = new VerticalPanel(); HTML label = new HTML(propertyGroup.getLabel()); label.setStyleName("okm-Security-Title"); label.setHeight("15"); vPanel.add(label); vPanel.add(manager.getTable()); propertyGroupsPanel.add(vPanel); propertyGroupsPanel.add(verticalLine); propertyGroupsPanel.setCellVerticalAlignment(vPanel, HasAlignment.ALIGN_TOP); propertyGroupsPanel.setCellHorizontalAlignment(verticalLine, HasAlignment.ALIGN_CENTER); propertyGroupsPanel.setCellWidth(verticalLine, "12"); propertyGroupsPanel.setCellHeight(verticalLine, "100%"); drawPropertyGroups(docPath, propertyGroups, propertyGroupsPanel); } @Override public void onFailure(Throwable caught) { Main.get().showError("drawPropertyGroups", caught); } }); } else { Status status = Main.get().mainPanel.search.searchBrowser.searchResult.status; status.unsetFlag_refreshPropertyGroups(); } }
From source file:com.ponysdk.ui.terminal.UIBuilder.java
License:Apache License
private void showCommunicationErrorMessage(final Throwable caught) { final VerticalPanel content = new VerticalPanel(); if (caught instanceof StatusCodeException) { final StatusCodeException exception = (StatusCodeException) caught; content.add(new HTML("Server connection failed <br/>Code : " + exception.getStatusCode() + "<br/>" + "cause : " + exception.getMessage())); } else if (caught instanceof InvocationException) { content.add(new HTML("Exception durring server invocation : " + caught.getMessage())); } else {/*from w w w .j a v a2 s . co m*/ content.add(new HTML("Failure : " + caught == null ? "" : caught.getMessage())); } final HorizontalPanel actionPanel = new HorizontalPanel(); actionPanel.setSize("100%", "100%"); final Anchor reloadAnchor = new Anchor("reload"); reloadAnchor.addClickHandler(new ClickHandler() { @Override public void onClick(final ClickEvent event) { History.newItem(""); reload(); } }); final Anchor closeAnchor = new Anchor("close"); closeAnchor.addClickHandler(new ClickHandler() { @Override public void onClick(final ClickEvent event) { communicationErrorMessagePanel.hide(); } }); actionPanel.add(reloadAnchor); actionPanel.add(closeAnchor); actionPanel.setCellHorizontalAlignment(reloadAnchor, HasHorizontalAlignment.ALIGN_CENTER); actionPanel.setCellHorizontalAlignment(closeAnchor, HasHorizontalAlignment.ALIGN_CENTER); actionPanel.setCellVerticalAlignment(reloadAnchor, HasVerticalAlignment.ALIGN_MIDDLE); actionPanel.setCellVerticalAlignment(closeAnchor, HasVerticalAlignment.ALIGN_MIDDLE); content.add(actionPanel); communicationErrorMessagePanel.setWidget(content); communicationErrorMessagePanel.setPopupPositionAndShow(new PositionCallback() { @Override public void setPosition(final int offsetWidth, final int offsetHeight) { communicationErrorMessagePanel.setPopupPosition((Window.getClientWidth() - offsetWidth) / 2, (Window.getClientHeight() - offsetHeight) / 2); } }); }