List of usage examples for org.apache.wicket.extensions.ajax.markup.html.modal ModalWindow ModalWindow
public ModalWindow(final String id)
From source file:ro.nextreports.server.web.drilldown.DrillDownEntityPanel.java
License:Apache License
private void init() { add(new Label("legend", getString("ActionContributor.Drill.name"))); add(new Label("entityName", new Model<String>(entity.getName()))); addTable();/*from w w w .ja va2 s . c o m*/ dialog = new ModalWindow("dialog"); add(dialog); final AjaxLink addLink = new AjaxLink("addDrill") { @Override public void onClick(AjaxRequestTarget target) { dialog.setTitle(getString("ActionContributor.Drill.addTitle")); dialog.setInitialWidth(400); dialog.setUseInitialHeight(false); dialog.setContent(new AddDrillDownPanel(dialog.getContentId(), entity) { @Override public void onAddDrillDownEntity(AjaxRequestTarget target, Form form, DrillDownEntity drillEntity) { try { ModalWindow.closeCurrent(target); List<DrillDownEntity> drillEntities = getDrillDownEntities(entity); drillEntities.add(drillEntity); storageService.modifyEntity(entity); target.add(table); refreshAddLink(target); } catch (Exception e) { e.printStackTrace(); form.error(e.getMessage()); } } @Override public void onCancel(AjaxRequestTarget target) { ModalWindow.closeCurrent(target); } }); dialog.show(target); } @Override public boolean isEnabled() { List<DrillDownEntity> list = getDrillDownEntities(entity); if (list.size() == 0) { return true; } else { DrillDownEntity last = list.get(list.size() - 1); return (last.getUrl() == null); } } }; addLink.setOutputMarkupId(true); add(addLink); add(new AjaxConfirmLink("deleteDrill") { @Override public void onClick(AjaxRequestTarget target) { try { List<DrillDownEntity> drillEntities = getDrillDownEntities(entity); if (drillEntities.size() > 0) { drillEntities.remove(drillEntities.size() - 1); storageService.modifyEntity(entity); target.add(table); target.add(addLink); } } catch (Exception e) { e.printStackTrace(); error(e.getMessage()); } } @Override public String getMessage() { return getString("ActionContributor.Drill.deleteLast"); } }); add(new AjaxLink("cancel") { @Override public void onClick(AjaxRequestTarget target) { EntityBrowserPanel panel = findParent(EntityBrowserPanel.class); panel.backwardWorkspace(target); } }); }
From source file:ro.nextreports.server.web.pivot.PivotAreaPanel.java
License:Apache License
public PivotAreaPanel(String id, PivotField.Area area) { super(id);/*from ww w. j a v a 2 s. c om*/ this.area = area; add(new Label("name", getString("pivot." + area.getName()).toUpperCase())); final ModalWindow modal = new ModalWindow("modal"); modal.setTitle(getString("pivot.aggregator")); add(modal); WebMarkupContainer fieldsContainer = new WebMarkupContainer("fieldsContainer"); fieldsContainer.setOutputMarkupId(true); fieldsContainer.setMarkupId("area-" + area.getName() + "-" + getSession().nextSequenceValue()); add(fieldsContainer); values = new ListView<PivotField>("values") { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<PivotField> item) { final IModel<PivotField> itemModel = item.getModel(); PivotField pivotField = itemModel.getObject(); String title = pivotField.getTitle(); if (pivotField.getArea().equals(PivotField.Area.DATA)) { title += " (" + pivotField.getAggregator().getFunction().toUpperCase() + ")"; } Label valueLabel = new Label("value", title); if (pivotField.isNumber()) { valueLabel.add(AttributeModifier.append("class", "label-info")); // } else { // valueLabel.add(AttributeModifier.append("class", "label-important")); } if (item.getModelObject().getArea().equals(PivotField.Area.DATA)) { valueLabel.add(new AjaxEventBehavior("onclick") { private static final long serialVersionUID = 1L; protected void onEvent(AjaxRequestTarget target) { final AggregatorPanel panel = new AggregatorPanel(modal.getContentId(), itemModel); modal.setUseInitialHeight(false); modal.setInitialWidth(200); modal.setContent(panel); /* modal.setWindowClosedCallback(new WindowClosedCallback() { private static final long serialVersionUID = 1L; public void onClose(AjaxRequestTarget target) { if (panel.isOkPressed()) { System.out.println(">>> " + itemModel.getObject().getAggregator()); } } }); */ modal.show(target); } }); valueLabel.add(AttributeModifier.append("style", "cursor: pointer;")); } item.add(valueLabel); item.setOutputMarkupId(true); item.setMarkupId("field-" + pivotField.getIndex()); } }; values.setOutputMarkupPlaceholderTag(true); fieldsContainer.add(values); // add dnd support // addSortableBehavior(); setOutputMarkupId(true); }
From source file:ro.nextreports.server.web.schedule.time.IntervalFieldPanel.java
License:Apache License
@SuppressWarnings("unchecked") public IntervalFieldPanel(String id, final IModel model, final String entityType, final String intType, boolean required) { super(id, model); String text = getLabelText(entityType); intervalText = new TextField<String>("intervalText", model); intervalText.setOutputMarkupId(true); if (required) { intervalText.setRequired(true);//from w w w. j a v a 2s .c o m intervalText.setLabel(new Model<String>(text)); } // validators to respect the pattern if (SelectIntervalPanel.DAY_ENTITY.equals(entityType)) { String day = "(0[1-9]|[1-9]|[12][0-9]|3[01])"; String pattern = day + "{1}(," + day + ")*|" + day + "{1}(-" + day + "){0,1}"; intervalText.add(new PatternValidator(pattern)); } else if (SelectIntervalPanel.HOUR_ENTITY.equals(entityType)) { String hour = "(0[0-9]|[0-9]|1[0-9]|2[0-3])"; String pattern = hour + "{1}(," + hour + ")*|" + hour + "{1}(-" + hour + "){0,1}"; intervalText.add(new PatternValidator(pattern)); } else if (SelectIntervalPanel.MONTH_ENTITY.equals(entityType)) { String month = "(0[1-9]|[1-9]|1[0-2])"; String pattern = month + "{1}(," + month + ")*|" + month + "{1}(-" + month + "){0,1}"; intervalText.add(new PatternValidator(pattern)); } else if (SelectIntervalPanel.DAY_OF_WEEK_ENTITY.equals(entityType)) { String weekDay = "(Sun|Mon|Tue|Wed|Thu|Fri|Sat)"; String pattern = weekDay + "{1}(," + weekDay + ")*|" + weekDay + "{1}(-" + weekDay + "){0,1}"; intervalText.add(new PatternValidator(pattern)); } // validator to respect the order and uniqness intervalText.add(new IntervalFieldStringValidator(entityType)); add(intervalText); modal = new ModalWindow("modal"); add(modal); add(setLink = new AjaxLink("set") { @Override public void onClick(AjaxRequestTarget target) { final TimeValues timeValues = getTimeValues(intervalText.getModelObject()); modal.setTitle(new Model<String>(getString("select") + " " + getLabelText(entityType))); modal.setInitialWidth(450); modal.setInitialHeight(300); modal.setContent(new SelectIntervalPanel(modal.getContentId(), entityType, intType, timeValues) { protected void onCancel(AjaxRequestTarget target) { ModalWindow.closeCurrent(target); } @SuppressWarnings("unchecked") protected void onSet(AjaxRequestTarget target) { ModalWindow.closeCurrent(target); //System.out.println("entityType=" + entityType + " intervalType=" + timeValues.getIntervalType() + " values=" + timeValues.getDiscreteValues()); String interval = getTimeEntity(entityType, timeValues); model.setObject(interval); //System.out.println("*** interval=" + interval); target.add(intervalText); } }); modal.show(target); } }); }
From source file:ro.nextreports.server.web.security.SecurityPanel.java
License:Apache License
public SecurityPanel(String id, final Entity entity) { super(id, new Model<Entity>(entity)); add(new Label("path", StorageUtil.getPathWithoutRoot(entity.getPath()))); final FeedbackPanel feedbackPanel = new FeedbackPanel("feedback"); feedbackPanel.setOutputMarkupId(true); add(feedbackPanel);/* ww w . j a va2 s .co m*/ List<IColumn<AclEntry, String>> columns = new ArrayList<IColumn<AclEntry, String>>(); columns.add(new NameColumn()); columns.add(new ActionsColumn()); columns.add(new TypeColumn()); columns.add(new BooleanImagePropertyColumn<AclEntry>(new Model<String>(getString("Permission.read")), "read", "read")); columns.add(new BooleanImagePropertyColumn<AclEntry>(new Model<String>(getString("Permission.execute")), "execute", "execute")); columns.add(new BooleanImagePropertyColumn<AclEntry>(new Model<String>(getString("Permission.write")), "write", "write")); columns.add(new BooleanImagePropertyColumn<AclEntry>(new Model<String>(getString("Permission.delete")), "delete", "delete")); columns.add(new BooleanImagePropertyColumn<AclEntry>(new Model<String>(getString("Permission.security")), "security", "security")); AclEntryDataProvider dataProvider = new AclEntryDataProvider(entity.getId()); table = new BaseTable<AclEntry>("table", columns, dataProvider, 300); table.setOutputMarkupId(true); add(table); dialog = new ModalWindow("dialog"); add(dialog); add(new AjaxLink("addUser") { @Override public void onClick(AjaxRequestTarget target) { AclEntry aclEntry = new AclEntry(AclEntry.USER_TYPE); List<String> notGrantedUsers; try { notGrantedUsers = getNotGrantedUsersById(entity.getId(), aclEntry); } catch (Exception e) { // TODO e.printStackTrace(); error(e.getMessage()); return; } if (notGrantedUsers.isEmpty()) { error(getString("SecurityPanel.allUsersGranted")); target.add(feedbackPanel); return; } dialog.setTitle(getString("SecurityPanel.addUser")); dialog.setInitialWidth(300); dialog.setUseInitialHeight(false); // TODO duplication code with modify user dialog.setContent(new UserAclEntryPanel(dialog.getContentId(), entity, aclEntry, notGrantedUsers) { @Override public void onUserAclEntry(AjaxRequestTarget target, AclEntry aclEntry, boolean recursive) { try { ModalWindow.closeCurrent(target); securityService.grantUser(entity.getPath(), aclEntry.getName(), aclEntry.getPermissions(), recursive); target.add(table); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); error(e.getMessage()); } } @Override public void onCancel(AjaxRequestTarget target) { ModalWindow.closeCurrent(target); } }); dialog.show(target); } }); add(new AjaxLink("addGroup") { @Override public void onClick(AjaxRequestTarget target) { AclEntry aclEntry = new AclEntry(AclEntry.GROUP_TYPE); List<String> notGrantedGroups; try { notGrantedGroups = getNotGrantedGroups(entity.getPath(), aclEntry); } catch (Exception e) { // TODO e.printStackTrace(); error(e.getMessage()); return; } if (notGrantedGroups.isEmpty()) { error(getString("SecurityPanel.allGroupsGranted")); target.add(feedbackPanel); return; } dialog.setTitle(getString("SecurityPanel.addGroup")); dialog.setInitialWidth(300); dialog.setUseInitialHeight(false); // TODO duplication code with modify group dialog.setContent( new GroupAclEntryPanel(dialog.getContentId(), entity, aclEntry, notGrantedGroups) { @Override public void onGroupAclEntry(AjaxRequestTarget target, AclEntry aclEntry, boolean recursive) { try { ModalWindow.closeCurrent(target); securityService.grantGroup(entity.getPath(), aclEntry.getName(), aclEntry.getPermissions(), recursive); target.add(table); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); error(e.getMessage()); } } @Override public void onCancel(AjaxRequestTarget target) { ModalWindow.closeCurrent(target); } }); dialog.show(target); } }); add(new AjaxLink("cancel") { @Override public void onClick(AjaxRequestTarget target) { onCancel(target); } }); }