List of usage examples for com.vaadin.ui TextField TextField
public TextField()
TextField
with no caption. From source file:com.parship.roperty.ui.LoginUI.java
License:Apache License
@AutoGenerated private GridLayout buildLoginLayout() { // common part: create layout loginLayout = new GridLayout(); loginLayout.setImmediate(false);/*w ww .ja v a2 s .c o m*/ loginLayout.setWidth("-1px"); loginLayout.setHeight("100px"); loginLayout.setMargin(false); loginLayout.setSpacing(true); loginLayout.setColumns(2); loginLayout.setRows(2); // userTextField userTextField = new TextField(); userTextField.setCaption("Username"); userTextField.setImmediate(false); userTextField.setWidth("220px"); userTextField.setHeight("-1px"); userTextField.setTabIndex(1); userTextField.setRequired(true); loginLayout.addComponent(userTextField, 0, 0); loginLayout.setComponentAlignment(userTextField, new Alignment(33)); // passTextField passTextField = new PasswordField(); passTextField.setCaption("Password"); passTextField.setImmediate(false); passTextField.setWidth("220px"); passTextField.setHeight("-1px"); passTextField.setTabIndex(2); passTextField.setRequired(true); loginLayout.addComponent(passTextField, 1, 0); loginLayout.setComponentAlignment(passTextField, new Alignment(33)); // buttonLayout buttonLayout = buildButtonLayout(); loginLayout.addComponent(buttonLayout, 1, 1); return loginLayout; }
From source file:com.peergreen.example.webconsole.extensions.NotifierExtension.java
License:Open Source License
@PostConstruct public void init() { HorizontalLayout row = new HorizontalLayout(); row.setWidth("100%"); Button simpleButton = new Button("Click to create a notification !"); final Random random = new Random(); simpleButton.addClickListener(new Button.ClickListener() { @Override//from w w w.j a v a 2s . c om public void buttonClick(Button.ClickEvent clickEvent) { notifierService.addNotification(MESSAGES[random.nextInt(MESSAGES.length)]); } }); simpleButton.setWidth("400px"); row.addComponent(simpleButton); row.setComponentAlignment(simpleButton, Alignment.BOTTOM_LEFT); final TextField customNotification = new TextField(); customNotification.setCaption("Write something and type enter"); final ShortcutListener addNotification = new ShortcutListener("Execute", ShortcutAction.KeyCode.ENTER, null) { @Override public void handleAction(Object o, Object o2) { notifierService.addNotification(customNotification.getValue()); customNotification.setValue(""); } }; customNotification.addFocusListener(new FieldEvents.FocusListener() { @Override public void focus(FieldEvents.FocusEvent focusEvent) { customNotification.addShortcutListener(addNotification); } }); customNotification.addBlurListener(new FieldEvents.BlurListener() { @Override public void blur(FieldEvents.BlurEvent blurEvent) { customNotification.removeShortcutListener(addNotification); } }); customNotification.setWidth("400px"); row.addComponent(customNotification); addComponent(row); setExpandRatio(row, 1.5f); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deployable.all.AllView.java
License:Open Source License
@PostConstruct public void init() { setSizeFull();// w ww . j a v a 2 s . com setSpacing(true); setMargin(true); HorizontalLayout header = new HorizontalLayout(); header.setWidth("100%"); header.setSpacing(true); header.setMargin(true); final TextField filter = new TextField(); filter.setInputPrompt("Type artifact name or maven dependency"); filter.setWidth("100%"); filter.addTextChangeListener(new FilterFiles(AbstractDeployableContainer.DEPLOYABLE_NAME, directoryContainer.getContainer(), mavenContainer.getContainer())); header.addComponent(filter); header.setComponentAlignment(filter, Alignment.TOP_LEFT); header.setExpandRatio(filter, 3); HorizontalLayout actionArea = new HorizontalLayout(); final NativeSelect actionSelection = new NativeSelect(); actionSelection.addItem(DeploymentActions.DEPLOY); actionSelection.addItem(DeploymentActions.DEPLOYMENT_PLAN); actionSelection.setWidth("100px"); actionSelection.setNullSelectionAllowed(false); TreeTable directoryTable = createDeployableTable(AbstractDeployableContainer.DEPLOYABLE_NAME, DIRECTORY_ITEM_ID, directoryContainer.getContainer()); TreeTable mavenTable = createDeployableTable(AbstractDeployableContainer.DEPLOYABLE_NAME, MAVEN_ITEM_ID, mavenContainer.getContainer()); //mavenTable.addExpandListener(new TreeItemExpandListener(this, mavenRepositoryService)); Button doButton = new Button("Do"); doButton.addStyleName("default"); doButton.addClickListener( new DoClickListener(artifactBuilder, directoryTable, actionSelection, deploymentViewManager)); actionArea.addComponent(actionSelection); actionArea.addComponent(doButton); header.addComponent(actionArea); header.setExpandRatio(actionArea, 2); header.setComponentAlignment(actionArea, Alignment.TOP_RIGHT); addComponent(header); addComponent(directoryTable); setExpandRatio(directoryTable, 1.5f); addComponent(mavenTable); setExpandRatio(mavenTable, 1.5f); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deployable.directory.DirectoryView.java
License:Open Source License
@PostConstruct public void init() { File deploy = new File(System.getProperty("user.dir") + File.separator + "deploy"); repositoryManager.addRepository(formatUrl(deploy), "Deploy", RepositoryType.DIRECTORY); File m2 = new File( System.getProperty("user.home") + File.separator + ".m2" + File.separator + "repository"); if (m2.exists()) { repositoryManager.addRepository(formatUrl(m2), "Local M2 repository", RepositoryType.DIRECTORY); }/*from w ww . j av a 2 s. co m*/ File tmp = new File(Constants.STORAGE_DIRECTORY); if (!tmp.exists()) { tmp.mkdirs(); } repositoryManager.addRepository(formatUrl(tmp), "Temporary directory", RepositoryType.DIRECTORY); HorizontalLayout header = new HorizontalLayout(); header.setWidth("100%"); header.setSpacing(true); header.setMargin(true); final TextField filter = new TextField(); filter.setInputPrompt("Filter deployable files"); filter.setWidth("100%"); filter.addTextChangeListener(new FilterFiles(DEPLOYABLE_NAME, getContainer())); header.addComponent(filter); header.setComponentAlignment(filter, Alignment.TOP_LEFT); header.setExpandRatio(filter, 3); HorizontalLayout actionArea = new HorizontalLayout(); final NativeSelect actionSelection = new NativeSelect(); actionSelection.addItem(DeploymentActions.DEPLOY); actionSelection.addItem(DeploymentActions.DELETE); actionSelection.addItem(DeploymentActions.DEPLOYMENT_PLAN); actionSelection.setWidth("100px"); actionSelection.setNullSelectionAllowed(false); Button doButton = new Button("Do"); doButton.addStyleName("default"); doButton.addClickListener( new DoClickListener(artifactBuilder, getTree(), actionSelection, deploymentViewManager)); actionArea.addComponent(actionSelection); actionArea.addComponent(doButton); header.addComponent(actionArea); header.setExpandRatio(actionArea, 2); header.setComponentAlignment(actionArea, Alignment.TOP_RIGHT); addComponent(header); HorizontalLayout repositoryInfo = new HorizontalLayout(); repositoryInfo.setWidth("100%"); repositoryInfo.addComponent(getFetching()); repositoryInfo.setComponentAlignment(getFetching(), Alignment.MIDDLE_LEFT); addComponent(repositoryInfo); getTree().addShortcutListener(new DeleteFileShortcutListener(deploymentViewManager, getTree(), "Delete", ShortcutAction.KeyCode.DELETE, null)); getTree().addExpandListener(new TreeItemExpandListener(this, getRepositoryService(), repositoryManager)); addComponent(getTree()); setExpandRatio(getTree(), 1.5f); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deployable.maven.MavenView.java
License:Open Source License
@PostConstruct public void init() throws URISyntaxException { repositoryManager.loadRepositoriesInCache(); addRootItemToContainer("Peergreen Releases", new URI("https://forge.peergreen.com/repository/content/repositories/releases/")); addRootItemToContainer("Maven Central", new URI("http://repo1.maven.org/maven2/")); HorizontalLayout header = new HorizontalLayout(); header.setWidth("100%"); header.setSpacing(true);/*w w w. jav a 2 s .c om*/ header.setMargin(true); final TextField filterG = new TextField(); filterG.setInputPrompt("Filter by group id"); filterG.addTextChangeListener(new FilterFiles(MVN_GROUP_ID, getContainer())); header.addComponent(filterG); header.setComponentAlignment(filterG, Alignment.TOP_LEFT); final TextField filterA = new TextField(); filterA.setInputPrompt("Filter by artifact id"); filterA.addTextChangeListener(new FilterFiles(MVN_ARTIFACT_ID, getContainer())); header.addComponent(filterA); header.setComponentAlignment(filterA, Alignment.TOP_LEFT); // final TextField filterV = new TextField(); // filterV.setInputPrompt("Filter by version"); // filterV.addTextChangeListener(new FilterFiles(MVN_VERSION, getContainer())); // header.addComponent(filterV); // header.setComponentAlignment(filterV, Alignment.TOP_LEFT); HorizontalLayout actionArea = new HorizontalLayout(); final NativeSelect actionSelection = new NativeSelect(); actionSelection.addItem(DeploymentActions.DEPLOY); actionSelection.addItem(DeploymentActions.DEPLOYMENT_PLAN); actionSelection.addItem(CLEAR_FILTER); actionSelection.setWidth("100px"); actionSelection.setNullSelectionAllowed(false); Button doButton = new Button("Do"); doButton.addStyleName("default"); doButton.addClickListener( new DoClickListener(artifactBuilder, getTree(), actionSelection, deploymentViewManager)); doButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { if (CLEAR_FILTER.equals(actionSelection.getValue())) { getContainer().removeAllContainerFilters(); } } }); actionArea.addComponent(actionSelection); actionArea.addComponent(doButton); header.addComponent(actionArea); header.setExpandRatio(actionArea, 2); header.setComponentAlignment(actionArea, Alignment.TOP_RIGHT); addComponent(header); HorizontalLayout repositoryInfo = new HorizontalLayout(); repositoryInfo.setWidth("100%"); repositoryInfo.addComponent(getFetching()); repositoryInfo.setComponentAlignment(getFetching(), Alignment.MIDDLE_LEFT); addComponent(repositoryInfo); getTree().addExpandListener(new TreeItemExpandListener(this, getRepositoryService(), repositoryManager)); addComponent(getTree()); setExpandRatio(getTree(), 1.5f); updateTree(); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deployable.repository.BaseRepositoryManagerPanel.java
License:Open Source License
@PostConstruct public void init() { setSizeFull();//from w w w. ja va 2s. c o m VerticalLayout mainLayout = new VerticalLayout(); mainLayout.setMargin(true); mainLayout.setSpacing(true); setContent(mainLayout); HorizontalLayout header = new HorizontalLayout(); header.setWidth("100%"); header.setSpacing(true); header.setMargin(true); TextField filter = new TextField(); filter.setInputPrompt("Filter repositories"); filter.setWidth("100%"); filter.addTextChangeListener(new RepositoryFilter()); header.addComponent(filter); header.setComponentAlignment(filter, Alignment.TOP_LEFT); Button createRepository = new Button("Add repository"); createRepository.addStyleName("wide"); createRepository.addStyleName("default"); createRepository.addClickListener(new CreateNewRepositoryListener()); header.addComponent(createRepository); header.setComponentAlignment(createRepository, Alignment.TOP_RIGHT); mainLayout.addComponent(header); mainLayout.addComponent(contentLayout); mainLayout.setExpandRatio(contentLayout, 1.5f); updateRepositories(); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deployed.DeployedPanel.java
License:Open Source License
@PostConstruct public void init() { setSizeFull();//from w ww . j a v a 2 s .co m Table table = new Table(); VerticalLayout mainContent = new VerticalLayout(); mainContent.setSpacing(true); mainContent.setMargin(true); mainContent.setStyleName("deployable-style"); mainContent.setSizeFull(); setContent(mainContent); HorizontalLayout toolBar = new HorizontalLayout(); toolBar.setMargin(true); toolBar.setSpacing(true); toolBar.setWidth("100%"); // Select all deployed artifacts CheckBox selectAll = new CheckBox("All"); selectAll.addValueChangeListener(new SelectAll(table)); toolBar.addComponent(selectAll); toolBar.setExpandRatio(selectAll, 1); // Filter TextField filter = new TextField(); filter.setInputPrompt("Filter deployed artifacts"); filter.setWidth("100%"); filter.addTextChangeListener(new FilterFiles(TREE_ITEM_ID, container)); toolBar.addComponent(filter); toolBar.setComponentAlignment(filter, Alignment.TOP_LEFT); toolBar.setExpandRatio(filter, 3); HorizontalLayout actionArea = new HorizontalLayout(); final NativeSelect actionSelection = new NativeSelect(); actionSelection.addItem(DeploymentActions.UNDEPLOY); actionSelection.addItem(DeploymentActions.DELETE); actionSelection.addItem(DeploymentActions.DEPLOYMENT_PLAN); actionSelection.setWidth("100px"); actionSelection.setNullSelectionAllowed(false); Button doButton = new Button("Do"); doButton.addStyleName("default"); doButton.addClickListener( new DoClickListener(artifactBuilder, table, actionSelection, deploymentViewManager)); actionArea.addComponent(actionSelection); actionArea.addComponent(doButton); toolBar.addComponent(actionArea); toolBar.setComponentAlignment(actionArea, Alignment.TOP_RIGHT); mainContent.addComponent(toolBar); VerticalLayout deployedContainer = new VerticalLayout(); DragAndDropWrapper deployedContainerWrapper = new DragAndDropWrapper(deployedContainer); deployedContainerWrapper .setDropHandler(new DeploymentDropHandler(deploymentViewManager, this, notifierService)); deployedContainerWrapper.setSizeFull(); mainContent.addComponent(deployedContainerWrapper); mainContent.setExpandRatio(deployedContainerWrapper, 1.5f); container.addContainerProperty(TREE_ITEM_ID, String.class, null); table.setSizeFull(); table.setImmediate(true); table.setMultiSelect(true); table.setSelectable(true); table.setColumnHeaderMode(Table.ColumnHeaderMode.HIDDEN); table.setContainerDataSource(container); table.setDragMode(Table.TableDragMode.MULTIROW); table.setItemCaptionPropertyId(TREE_ITEM_ID); table.setCellStyleGenerator(new ItemStyle(DeployableContainerType.DEPLOYED, deploymentManager)); table.addShortcutListener(new DeleteFileShortcutListener(deploymentViewManager, table, "Delete", ShortcutAction.KeyCode.DELETE, null)); table.setItemDescriptionGenerator(new ItemDescription()); table.addItemClickListener(new ItemClickEvent.ItemClickListener() { @Override public void itemClick(ItemClickEvent event) { if (event.isDoubleClick()) { DeployableEntry deployableEntry = (DeployableEntry) event.getItemId(); try { ArtifactStatusReport report = deploymentManager .getReport(deployableEntry.getUri().toString()); event.getComponent().getUI() .addWindow(new DeployableWindow(deployableEntry, report).getWindow()); } catch (ArtifactStatusReportException e) { LOGGER.warn("Cannot get artifact status report for ''{0}''", deployableEntry.getUri(), e); event.getComponent().getUI().addWindow(new DeployableWindow(deployableEntry).getWindow()); } } } }); deployedContainer.addComponent(table); deployedContainer.setExpandRatio(table, 1.5f); refresh(); }
From source file:com.peergreen.webconsole.scope.deployment.internal.deploymentplan.DeploymentPlanPanel.java
License:Open Source License
@PostConstruct public void init() { setSizeFull();//w w w . j a v a 2 s . co m TreeTable table = new TreeTable(); VerticalLayout mainContent = new VerticalLayout(); mainContent.setSpacing(true); mainContent.setMargin(true); mainContent.setStyleName("deployable-style"); mainContent.setSizeFull(); setContent(mainContent); HorizontalLayout toolBar = new HorizontalLayout(); toolBar.setMargin(true); toolBar.setSpacing(true); toolBar.setWidth("100%"); // Deployment Plan name Label deploymentPlanNameLabel = new Label("Plan"); toolBar.addComponent(deploymentPlanNameLabel); toolBar.setExpandRatio(deploymentPlanNameLabel, 1); deploymentPlanName = new TextField(); deploymentPlanName.setInputPrompt(getDefaultName()); deploymentPlanName.setWidth("100%"); toolBar.addComponent(deploymentPlanName); toolBar.setComponentAlignment(deploymentPlanName, Alignment.TOP_LEFT); toolBar.setExpandRatio(deploymentPlanName, 3); error = new Label("", ContentMode.HTML); error.addStyleName("error"); error.setSizeUndefined(); error.addStyleName("light"); error.addStyleName("v-animate-reveal"); error.setVisible(false); toolBar.addComponent(error); toolBar.setComponentAlignment(error, Alignment.TOP_RIGHT); toolBar.setExpandRatio(error, 1); mainContent.addComponent(toolBar); mainContent.setComponentAlignment(toolBar, Alignment.TOP_LEFT); mainContent.setExpandRatio(toolBar, 1); VerticalLayout deploymentPlanContainer = new VerticalLayout(); DragAndDropWrapper deploymentPlanContainerWrapper = new DragAndDropWrapper(deploymentPlanContainer); DropHandler deploymentPlanDropHandler = new DeploymentDropHandler(deploymentViewManager, this, notifierService); deploymentPlanContainerWrapper.setDropHandler(deploymentPlanDropHandler); deploymentPlanContainerWrapper.setSizeFull(); mainContent.addComponent(deploymentPlanContainerWrapper); mainContent.setExpandRatio(deploymentPlanContainerWrapper, 10); container.addContainerProperty(TREE_ITEM_ID, String.class, null); table.setSizeFull(); table.setImmediate(true); table.setMultiSelect(true); table.setSelectable(true); table.setContainerDataSource(container); table.setDragMode(Table.TableDragMode.MULTIROW); table.setItemCaptionPropertyId(TREE_ITEM_ID); table.setCellStyleGenerator(new ItemStyle(DeployableContainerType.DEPLOYED)); table.setColumnHeaderMode(Table.ColumnHeaderMode.HIDDEN); table.setDropHandler(new OrderedContainerDropHandler(table, deploymentPlanDropHandler)); table.addShortcutListener(new ShortcutListener("Delete", ShortcutAction.KeyCode.DELETE, null) { @Override public void handleAction(Object sender, Object target) { Table table = (Table) target; Collection<DeployableEntry> deployableEntries = (Collection<DeployableEntry>) table.getValue(); for (DeployableEntry deployableEntry : deployableEntries) { removeDeployable(deployableEntry); } } }); deploymentPlanContainer.addComponent(table); HorizontalLayout footer = new HorizontalLayout(); footer.setSizeFull(); footer.setSpacing(true); footer.setMargin(true); footer.addStyleName("footer"); footer.setWidth("100%"); deployIt = new CheckBox("Deploy this deployment plan"); footer.addComponent(deployIt); footer.setComponentAlignment(deployIt, Alignment.TOP_LEFT); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(true); Button cancel = new Button("Cancel"); cancel.addClickListener(new CancelButtonListener()); Button create = new Button("Create"); create.addClickListener(new CreateButtonListener()); create.addStyleName("wide"); create.addStyleName("default"); buttons.addComponent(cancel); buttons.addComponent(create); footer.addComponent(buttons); footer.setComponentAlignment(buttons, Alignment.TOP_RIGHT); mainContent.addComponent(footer); mainContent.setComponentAlignment(footer, Alignment.BOTTOM_RIGHT); mainContent.setExpandRatio(footer, 1); }
From source file:com.peergreen.webconsole.scope.logs.LogsScope.java
License:Open Source License
public LogsScope() { setMargin(true);/*from www . jav a 2 s . com*/ setSpacing(true); setSizeFull(); HorizontalLayout topBar = new HorizontalLayout(); topBar.setWidth("100%"); addComponent(topBar); FormLayout form = new FormLayout(); form.setWidth("40%"); topBar.addComponent(form); TextField textFieldFilter = new TextField(); textFieldFilter.setCaption("Filter:"); textFieldFilter.setInputPrompt("filter"); textFieldFilter.setWidth("60%"); textFieldFilter.addTextChangeListener(new TextChangeListener() { @Override public void textChange(final FieldEvents.TextChangeEvent event) { container.removeAllContainerFilters(); Container.Filter or = new Or(new SimpleStringFilter("caller", event.getText().trim(), true, false), new SimpleStringFilter("text", event.getText().trim(), true, false)); Filter and = new And(or, filter); container.addContainerFilter(and); } }); topBar.addComponent(textFieldFilter); //form.setWidth("100%"); form.setSpacing(true); form.setMargin(true); HorizontalLayout systemLayout = new HorizontalLayout(); systemLayout.setCaption("JVM System streams:"); form.addComponent(systemLayout); HorizontalLayout loggerLayout = new HorizontalLayout(); loggerLayout.setCaption("Loggers:"); form.addComponent(loggerLayout); final CheckBox systemOut = new CheckBox("out"); systemOut.setValue(true); systemLayout.addComponent(systemOut); this.container = new BeanItemContainer<TableEntry>(TableEntry.class); filter = new TypeFilter(); container.addContainerFilter(filter); systemOut.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean value = (Boolean) event.getProperty().getValue(); container.removeAllContainerFilters(); filter.setAcceptSystemOut(value); container.addContainerFilter(filter); } }); CheckBox systemErr = new CheckBox("err"); systemLayout.addComponent(systemErr); systemErr.setValue(true); systemErr.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean value = (Boolean) event.getProperty().getValue(); container.removeAllContainerFilters(); filter.setAcceptSystemErr(value); container.addContainerFilter(filter); } }); CheckBox loggerInfo = new CheckBox("Info"); loggerLayout.addComponent(loggerInfo); loggerInfo.setValue(true); loggerInfo.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean value = (Boolean) event.getProperty().getValue(); container.removeAllContainerFilters(); filter.setAcceptLoggerInfo(value); container.addContainerFilter(filter); } }); CheckBox loggerWarning = new CheckBox("Warning"); loggerLayout.addComponent(loggerWarning); loggerWarning.setValue(true); loggerWarning.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean value = (Boolean) event.getProperty().getValue(); container.removeAllContainerFilters(); filter.setAcceptLoggerWarning(value); container.addContainerFilter(filter); } }); CheckBox loggerError = new CheckBox("Error"); loggerLayout.addComponent(loggerError); loggerError.setValue(true); loggerError.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean value = (Boolean) event.getProperty().getValue(); container.removeAllContainerFilters(); filter.setAcceptLoggerError(value); container.addContainerFilter(filter); } }); Button clearButton = new Button("clear"); //horizontalLayout.addComponent(clearButton); clearButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { container.removeAllItems(); } }); this.table = new Table(); table.setSizeFull(); table.setImmediate(true); // Define the names and data types of columns. table.addContainerProperty("date", Date.class, null); table.addContainerProperty("type", String.class, null); table.addContainerProperty("caller", String.class, null); table.addContainerProperty("text", String.class, "empty"); table.setContainerDataSource(container); table.addGeneratedColumn("text", new TextColumnGenerator()); table.setItemDescriptionGenerator(new ItemDescriptionGenerator() { @Override public String generateDescription(Component source, Object itemId, Object propertyId) { TableEntry tableEntry = (TableEntry) itemId; return simpleDateFormat.format(tableEntry.getDate()).concat(" : ").concat(tableEntry.getType()) .concat(" : ").concat(tableEntry.getCaller()); } }); table.setVisibleColumns(new Object[] { "text" }); table.setColumnHeaderMode(ColumnHeaderMode.HIDDEN); table.setSortEnabled(true); addComponent(table); setExpandRatio(table, 1.5f); }
From source file:com.peergreen.webconsole.scope.system.internal.bundle.BundleView.java
License:Open Source License
@PostConstruct public void createView() { setMargin(true);/* w ww . jav a 2 s . co m*/ setSpacing(true); /* Page.Styles styles = Page.getCurrent().getStyles(); styles.add(".no-padding {padding: 0em 0em 0em 0em !important; }"); */ HorizontalLayout header = new HorizontalLayout(); // header.setWidth("100%"); header.setSpacing(true); header.setMargin(true); Label title = new Label("OSGi Bundles"); title.addStyleName("h1"); // title.setSizeUndefined(); header.addComponent(title); header.setComponentAlignment(title, Alignment.MIDDLE_LEFT); final TextField filter = new TextField(); filter.addTextChangeListener(new FieldEvents.TextChangeListener() { @Override public void textChange(final FieldEvents.TextChangeEvent event) { data.removeAllContainerFilters(); String trimmed = event.getText().trim(); Container.Filter or = new Or(new SimpleStringFilter(BUNDLE_ID_COLUMN, trimmed, true, false), new SimpleStringFilter(BUNDLE_NAME_COLUMN, trimmed, true, false), new SimpleStringFilter(BUNDLE_SYMBOLICNAME_COLUMN, trimmed, true, false), new SimpleStringFilter(VERSION_COLUMN, trimmed, true, false), new SimpleStringFilter(PRETTY_STATE_COLUMN, trimmed, true, false)); data.addContainerFilter(or); } }); filter.setInputPrompt("Filter"); filter.addShortcutListener(new ShortcutListener("Clear", ShortcutAction.KeyCode.ESCAPE, null) { @Override public void handleAction(Object sender, Object target) { filter.setValue(""); data.removeAllContainerFilters(); } }); header.addComponent(filter); header.setExpandRatio(filter, 1); header.setComponentAlignment(filter, Alignment.MIDDLE_LEFT); // Store the header in the vertical layout (this) addComponent(header); addComponent(tabSheet); table = new Table(); table.setContainerDataSource(data); table.setSizeFull(); table.setSortContainerPropertyId(BUNDLE_ID_COLUMN); table.setSortAscending(true); table.setImmediate(true); table.setColumnHeader(BUNDLE_ID_COLUMN, "Bundle ID"); table.setColumnHeader(PRETTY_NAME_COLUMN, "Bundle Name"); table.setColumnHeader(VERSION_COLUMN, "Version"); table.setColumnHeader(PRETTY_STATE_COLUMN, "State"); table.setColumnHeader("actions", "Actions"); table.setColumnWidth(BUNDLE_ID_COLUMN, 100); table.setColumnAlignment(BUNDLE_ID_COLUMN, Table.Align.CENTER); table.setColumnAlignment(PRETTY_STATE_COLUMN, Table.Align.CENTER); table.setColumnAlignment(VERSION_COLUMN, Table.Align.CENTER); table.addGeneratedColumn("actions", new Table.ColumnGenerator() { @Override public Object generateCell(final Table source, final Object itemId, final Object columnId) { HorizontalLayout layout = new HorizontalLayout(); BeanItem<BundleItem> item = (BeanItem<BundleItem>) source.getContainerDataSource().getItem(itemId); Bundle bundle = item.getBean().getBundle(); if (BundleHelper.isState(bundle, Bundle.INSTALLED) || BundleHelper.isState(bundle, Bundle.RESOLVED)) { Button changeState = new Button(); changeState.addClickListener(new StartBundleClickListener(bundle, notifierService)); //changeState.addStyleName("no-padding"); changeState.setCaption("Start"); //changeState.setIcon(new ClassResource(BundleViewer.class, "/images/go-next.png")); if (!securityManager.isUserInRole("admin")) { changeState.setDisableOnClick(true); } layout.addComponent(changeState); } if (BundleHelper.isState(bundle, Bundle.ACTIVE)) { Button changeState = new Button(); changeState.addClickListener(new StopBundleClickListener(bundle, notifierService)); //changeState.addStyleName("no-padding"); changeState.setCaption("Stop"); if (!securityManager.isUserInRole("admin")) { changeState.setDisableOnClick(true); } //changeState.setIcon(new ClassResource(BundleViewer.class, "/images/media-record.png")); layout.addComponent(changeState); } // Update Button update = new Button(); update.addClickListener(new UpdateBundleClickListener(bundle, notifierService)); //update.addStyleName("no-padding"); update.setCaption("Update"); if (!securityManager.isUserInRole("admin")) { update.setDisableOnClick(true); } //update.setIcon(new ClassResource(BundleViewer.class, "/images/view-refresh.png")); layout.addComponent(update); // Trash Button trash = new Button(); trash.addClickListener(new UninstallBundleClickListener(bundle, notifierService)); //trash.addStyleName("no-padding"); trash.setCaption("Delete"); if (!securityManager.isUserInRole("admin")) { trash.setDisableOnClick(true); } //trash.setIcon(new ClassResource(BundleViewer.class, "/images/user-trash-full.png")); layout.addComponent(trash); return layout; } }); table.setVisibleColumns(BUNDLE_ID_COLUMN, PRETTY_NAME_COLUMN, VERSION_COLUMN, PRETTY_STATE_COLUMN, "actions"); table.addItemClickListener(new ItemClickEvent.ItemClickListener() { @Override public void itemClick(final ItemClickEvent event) { if (event.isDoubleClick()) { BeanItem<BundleItem> item = (BeanItem<BundleItem>) table.getContainerDataSource() .getItem(event.getItemId()); Bundle bundle = item.getBean().getBundle(); showBundle(bundle); } } }); createBundleTracker(); tabSheet.setSizeFull(); selectedTabListener = new SelectedTabListener(uiContext.getViewNavigator()); selectedTabListener.addLocation(table, uiContext.getViewNavigator().getLocation(this.getClass().getName())); tabSheet.addSelectedTabChangeListener(selectedTabListener); tabSheet.addTab(table, "Bundles", new ClassResource(BundleView.class, "/images/22x22/user-home.png")); setExpandRatio(tabSheet, 1.5f); tabSheet.setCloseHandler(new TabSheet.CloseHandler() { @Override public void onTabClose(TabSheet tabsheet, Component tabContent) { for (Map.Entry<Long, Component> tab : openTabs.entrySet()) { if (tabContent.equals(tab.getValue())) { openTabs.remove(tab.getKey()); } } tabsheet.removeComponent(tabContent); selectedTabListener.removeLocation(tabContent); } }); }