Example usage for com.vaadin.ui.themes ValoTheme BUTTON_BORDERLESS

List of usage examples for com.vaadin.ui.themes ValoTheme BUTTON_BORDERLESS

Introduction

In this page you can find the example usage for com.vaadin.ui.themes ValoTheme BUTTON_BORDERLESS.

Prototype

String BUTTON_BORDERLESS

To view the source code for com.vaadin.ui.themes ValoTheme BUTTON_BORDERLESS.

Click Source Link

Document

Borderless button.

Usage

From source file:annis.gui.CitationLinkGenerator.java

License:Apache License

@Override
public Object generateCell(Table source, Object itemId, Object columnId) {
    Button btLink = new Button();
    btLink.addStyleName(ValoTheme.BUTTON_BORDERLESS);
    btLink.setIcon(FontAwesome.SHARE_ALT);
    btLink.setDescription("Share query reference link");
    btLink.addClickListener(this);

    if (itemId instanceof DisplayedResultQuery) {
        btLink.addClickListener(new LinkClickListener((DisplayedResultQuery) itemId));
    } else if (itemId instanceof Query) {
        final CitationProvider citationProvider = new CitationProviderForQuery((Query) itemId);
        btLink.addClickListener(new LinkClickListener(citationProvider));
    } else if (itemId instanceof CitationProvider) {
        final CitationProvider citationProvider = (CitationProvider) itemId;
        btLink.addClickListener(new LinkClickListener(citationProvider));
    }//  w  w  w  .  j  a  v a2s .  c o m

    return btLink;
}

From source file:annis.gui.paging.PagingComponent.java

License:Apache License

public PagingComponent(int count, int pageSize) {
    if (pageSize <= 0) {
        pageSize = 1;//from  ww w.  j a  v  a2s  .  com
    }
    if (count < 0) {
        count = 0;
    }
    currentPage = 1;
    this.count = new AtomicInteger(pageSize);
    this.pageSize = pageSize;

    setWidth("100%");
    setHeight("-1px");

    addStyleName("toolbar");

    callbacks = new HashSet<>();

    layout = new HorizontalLayout();
    layout.setSpacing(true);
    layout.setMargin(new MarginInfo(false, true, false, true));

    setContent(layout);
    addStyleName(ChameleonTheme.PANEL_LIGHT);

    lblInfo = new Label();
    lblInfo.setContentMode(ContentMode.HTML);
    lblInfo.addStyleName("right-aligned-text");

    btShareQuery = new Button(FontAwesome.SHARE_ALT);
    btShareQuery.setDescription("Share query reference link");
    btShareQuery.addStyleName(ValoTheme.BUTTON_BORDERLESS);

    layout.setWidth("100%");
    layout.setHeight("-1px");

    btFirst = new Button();
    btFirst.setIcon(FIRST);
    btFirst.setDescription("jump to first page");
    btFirst.addClickListener((Button.ClickListener) this);
    btFirst.addStyleName(ChameleonTheme.BUTTON_ICON_ONLY);
    btFirst.addStyleName(ChameleonTheme.BUTTON_SMALL);
    btFirst.setDisableOnClick(true);

    btLast = new Button();
    btLast.setIcon(LAST);
    btLast.setDescription("jump to last page");
    btLast.addClickListener((Button.ClickListener) this);
    btLast.addStyleName(ChameleonTheme.BUTTON_ICON_ONLY);
    btLast.addStyleName(ChameleonTheme.BUTTON_SMALL);
    btLast.setDisableOnClick(true);

    btNext = new Button();
    btNext.setIcon(RIGHT_ARROW);
    btNext.setDescription("jump to next page");
    btNext.addClickListener((Button.ClickListener) this);
    btNext.addStyleName(ChameleonTheme.BUTTON_ICON_ONLY);
    btNext.addStyleName(ChameleonTheme.BUTTON_SMALL);
    btNext.setDisableOnClick(true);

    btPrevious = new Button();
    btPrevious.setIcon(LEFT_ARROW);
    btPrevious.setDescription("jump to previous page");
    btPrevious.addClickListener((Button.ClickListener) this);
    btPrevious.addStyleName(ChameleonTheme.BUTTON_ICON_ONLY);
    btPrevious.addStyleName(ChameleonTheme.BUTTON_SMALL);
    btPrevious.setDisableOnClick(true);

    txtPage = new TextField();
    txtPage.setDescription("current page");
    txtPage.setHeight("-1px");
    txtPage.setWidth(5.f, UNITS_EM);
    Validator pageValidator = new PageValidator("must be an integer greater than zero");
    txtPage.addValidator(pageValidator);
    addActionHandler(new EnterHandler(txtPage));

    lblMaxPages = new Label();
    lblMaxPages.setDescription("maximal pages");
    lblMaxPages.setSizeUndefined();

    lblStatus = new Label();
    lblStatus.setSizeUndefined();

    layout.addComponent(btFirst);
    layout.addComponent(btPrevious);
    layout.addComponent(txtPage);
    layout.addComponent(lblMaxPages);
    layout.addComponent(btNext);
    layout.addComponent(btLast);
    layout.addComponent(lblStatus);
    layout.addComponent(lblInfo);
    layout.addComponent(btShareQuery);

    layout.setComponentAlignment(btFirst, Alignment.MIDDLE_LEFT);
    layout.setComponentAlignment(btPrevious, Alignment.MIDDLE_LEFT);
    layout.setComponentAlignment(lblStatus, Alignment.MIDDLE_LEFT);
    layout.setComponentAlignment(lblMaxPages, Alignment.MIDDLE_CENTER);
    layout.setComponentAlignment(txtPage, Alignment.MIDDLE_RIGHT);
    layout.setComponentAlignment(btNext, Alignment.MIDDLE_RIGHT);
    layout.setComponentAlignment(btLast, Alignment.MIDDLE_RIGHT);

    layout.setExpandRatio(lblStatus, 1.0f);
    layout.setComponentAlignment(lblInfo, Alignment.MIDDLE_RIGHT);
    layout.setExpandRatio(lblInfo, 10.0f);

    update(false);
}

From source file:annis.gui.resultview.SingleResultPanel.java

License:Apache License

public SingleResultPanel(final SDocument result, Match match, long resultNumber,
        ResolverProvider resolverProvider, PluginSystem ps, AnnisUI ui, Set<String> visibleTokenAnnos,
        String segmentationName, QueryController controller, InstanceConfig instanceConfig,
        DisplayedResultQuery query) {//w  ww.  j a v  a 2  s . c  o  m
    this.ps = ps;
    this.ui = ui;
    this.result = result;
    this.segmentationName = segmentationName;
    this.queryController = controller;
    this.resultNumber = resultNumber;
    this.resolverProvider = resolverProvider;
    this.visibleTokenAnnos = visibleTokenAnnos;
    this.instanceConfig = instanceConfig;
    this.query = query;
    this.match = match;

    calculateHelperVariables();

    setWidth("100%");
    setHeight("-1px");

    if (query != null && query.getSelectedMatches().contains(resultNumber)) {
        addStyleName("selected-match");
    }

    infoBar = new HorizontalLayout();
    infoBar.addStyleName("info-bar");
    infoBar.setWidth("100%");
    infoBar.setHeight("-1px");

    Label lblNumber = new Label("" + (resultNumber + 1));
    infoBar.addComponent(lblNumber);
    lblNumber.setSizeUndefined();

    btInfo = new Button();
    btInfo.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btInfo.setIcon(ICON_RESOURCE);
    btInfo.setDescription("Show metadata");
    btInfo.addClickListener((Button.ClickListener) this);
    infoBar.addComponent(btInfo);

    btLink = new Button();
    btLink.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btLink.setIcon(FontAwesome.SHARE_ALT);
    btLink.setDescription("Share match reference");
    btLink.setDisableOnClick(true);
    btLink.addClickListener(new Button.ClickListener() {

        @Override
        public void buttonClick(ClickEvent event) {
            showShareSingleMatchGenerator();
        }
    });
    infoBar.addComponent(btLink);

    /**
     * Extract the top level corpus name and the document name of this single
     * result.
     */
    path = CommonHelper.getCorpusPath(result.getGraph(), result);
    Collections.reverse(path);
    corpusName = path.get(0);
    documentName = path.get(path.size() - 1);

    MinMax minMax = getIds(result.getDocumentGraph());

    // build label
    StringBuilder sb = new StringBuilder("Path: ");
    sb.append(StringUtils.join(path, " > "));
    sb.append(" (" + minMax.segName + " ").append(minMax.min);
    sb.append(" - ").append(minMax.max).append(")");

    Label lblPath = new Label(sb.toString());
    lblPath.addStyleName("path-label");

    lblPath.setWidth("100%");
    lblPath.setHeight("-1px");
    infoBar.addComponent(lblPath);
    infoBar.setExpandRatio(lblPath, 1.0f);
    infoBar.setSpacing(false);

    this.visualizerState = new HashMap<>();

    // init context combox
    lftCtxCombo = new ComboBox();
    rghtCtxCombo = new ComboBox();

    lftCtxCombo.setWidth(50, Unit.PIXELS);
    rghtCtxCombo.setWidth(50, Unit.PIXELS);

    lftCtxCombo.setNullSelectionAllowed(false);
    rghtCtxCombo.setNullSelectionAllowed(false);

    lftCtxCombo.addStyleName(ValoTheme.COMBOBOX_SMALL);
    rghtCtxCombo.addStyleName(ValoTheme.COMBOBOX_SMALL);

    IndexedContainer lftCtxContainer = new IndexedContainer();
    IndexedContainer rghtCtxContainer = new IndexedContainer();

    // and a property for sorting
    lftCtxContainer.addContainerProperty("number", Integer.class, 0);
    rghtCtxContainer.addContainerProperty("number", Integer.class, 0);

    for (int i = 0; i < 30; i += 5) {
        lftCtxContainer.addItem(i).getItemProperty("number").setValue(i);
        rghtCtxContainer.addItem(i).getItemProperty("number").setValue(i);
    }

    int lftContextIdx = query == null ? 0 : query.getLeftContext();
    lftCtxContainer.addItemAt(lftContextIdx, lftContextIdx);
    lftCtxContainer.sort(new Object[] { "number" }, new boolean[] { true });

    int rghtCtxIdx = query == null ? 0 : query.getRightContext();
    rghtCtxContainer.addItem(rghtCtxIdx);

    rghtCtxContainer.sort(new Object[] { "number" }, new boolean[] { true });

    lftCtxCombo.setContainerDataSource(lftCtxContainer);
    rghtCtxCombo.setContainerDataSource(rghtCtxContainer);

    lftCtxCombo.select(lftContextIdx);
    rghtCtxCombo.select(rghtCtxIdx);

    lftCtxCombo.setNewItemsAllowed(true);
    rghtCtxCombo.setNewItemsAllowed(true);

    lftCtxCombo.setImmediate(true);
    rghtCtxCombo.setImmediate(true);

    lftCtxCombo.setNewItemHandler(new AddNewItemHandler(lftCtxCombo));
    rghtCtxCombo.setNewItemHandler(new AddNewItemHandler(rghtCtxCombo));

    lftCtxCombo.addValueChangeListener(new ContextChangeListener(resultNumber, true));
    rghtCtxCombo.addValueChangeListener(new ContextChangeListener(resultNumber, false));

    Label leftCtxLabel = new Label("left context: ");
    Label rightCtxLabel = new Label("right context: ");

    leftCtxLabel.setWidth("-1px");
    rightCtxLabel.setWidth("-1px");

    HorizontalLayout ctxLayout = new HorizontalLayout();
    ctxLayout.setSpacing(true);
    ctxLayout.addComponents(leftCtxLabel, lftCtxCombo, rightCtxLabel, rghtCtxCombo);
    infoBar.addComponent(ctxLayout);

    addComponent(infoBar);
    initVisualizer();
}

From source file:com.hybridbpm.ui.component.bpm.designer.ProcessEditor.java

License:Apache License

public ProcessEditor(Module Module) {
    super();//from   w ww.ja v a2  s .  c o m
    this.Module = HybridbpmUI.getDevelopmentAPI().getModuleById(Module.getId());
    this.processModel = HybridbpmCoreUtil.jsonToObject(this.Module.getModel(), ProcessModel.class);
    btnData.setIcon(FontAwesome.DATABASE);
    btnData.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnData.addStyleName(ValoTheme.BUTTON_SMALL);
    buttonBar.addComponent(btnData, 0);
    removeComponent(horizontalSplitPanel);
    mainPanel.setSizeFull();
    addComponent(mainPanel);
    setExpandRatio(mainPanel, 1f);
    prepareModeler();
}

From source file:com.hybridbpm.ui.component.chart.ChartEditor.java

License:Apache License

public ChartEditor(Module module) {
    super();//  ww w  .ja v a 2s.c o m
    this.module = HybridbpmUI.getDevelopmentAPI().getModuleById(module.getId());

    if (this.module.getDesign() != null && !this.module.getDesign().isEmpty()) {
        this.diagrammePreference = HybridbpmCoreUtil.jsonToObject(this.module.getDesign(),
                DiagrammePreference.class);
    } else {
        diagrammePreference = DiagrammePreference.createDefault();
    }
    preferences.setItemDataSource(diagrammePreference);

    btnExecute.setIcon(FontAwesome.COG);
    btnExecute.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnExecute.addStyleName(ValoTheme.BUTTON_SMALL);

    btnTest.setIcon(FontAwesome.PLAY);
    btnTest.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnTest.addStyleName(ValoTheme.BUTTON_SMALL);

    horizontalSplitPanel.addComponents(codeEditorLayout, designEditorLayout);
    horizontalSplitPanel.setSplitPosition(50, Sizeable.Unit.PERCENTAGE);
    buttonBar.addComponent(btnTest, 0);

    table.setSizeFull();
    table.setStyleName(ValoTheme.TABLE_COMPACT);

    queryEditor.setCaption("Request");
    queryEditor.setMode(AceMode.sql);
    queryEditor.setTheme(AceTheme.textmate);
    queryEditor.setShowGutter(true);
    queryEditor.setSizeFull();

    codeEditorLayout.setSizeFull();
    codeEditorLayout.addStyleName("code");
    codeEditorLayout.setMargin(new MarginInfo(false, false, false, true));
    codeEditorLayout.setSpacing(true);
    codeEditorLayout.setExpandRatio(queryEditor, 1f);
    codeEditorLayout.setExpandRatio(table, 2f);

    for (DiagrammeChartType chartType : DiagrammeChartType.values()) {
        chartTypeGroup.addItem(chartType.toString());
        chartTypeGroup.setItemIcon(chartType, chartType.getIcon());
        chartTypeGroup.setItemCaption(chartType, chartType.getName());
    }
    chartTypeGroup.setStyleName(ValoTheme.OPTIONGROUP_HORIZONTAL);
    chartTypeGroup.addStyleName(ValoTheme.OPTIONGROUP_SMALL);
    chartTypeGroup.setImmediate(true);
    chartTypeGroup.setNullSelectionAllowed(false);
    chartTypeGroup.addValueChangeListener(this);
    addComponent(chartTypeGroup, 1);

    designEditorLayout.setSizeFull();
    designEditorLayout.addStyleName("template");
    designEditorLayout.setMargin(new MarginInfo(false, true, false, true));
    designEditorLayout.setSpacing(true);

    preferences.bind(queryEditor, DiagrammePreference.QUERY);
    preferences.bind(chartTypeGroup, DiagrammePreference.CHART_TYPE);
    refreshChartConfigurationLayout();
}

From source file:com.hybridbpm.ui.component.chart.color.GaugeBandLayout.java

License:Apache License

public GaugeBandLayout(final BeanFieldGroup<DiagrammePreference> preferences) {
    super(preferences);

    setCaption("Gauge Band Colors");
    setSizeFull();/*from w  w  w .  jav a 2s  .  c om*/
    setSpacing(true);
    setMargin(false);

    addBandButton.setIcon(FontAwesome.PLUS);
    addBandButton.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    addBandButton.addStyleName(ValoTheme.BUTTON_SMALL);

    bandAdditionButtonFrame.setSpacing(true);
    bandAdditionButtonFrame.addComponent(addBandButton);
    bandAdditionButtonFrame.setComponentAlignment(addBandButton, Alignment.MIDDLE_RIGHT);

    addComponent(bandAdditionButtonFrame);

    addBandButton.addClickListener(new Button.ClickListener() {
        @Override
        public void buttonClick(Button.ClickEvent event) {
            addBand();
        }
    });

    colorTable.setHeight("100%");
    colorTable.setWidth("100%");
    colorTable.addStyleName(ValoTheme.TABLE_COMPACT);
    colorTable.addStyleName(ValoTheme.TABLE_SMALL);
    colorTable.addStyleName("color-table");

    colorTable.addContainerProperty(Translate.getMessage("colour"), ColorPicker.class, null);
    colorTable.addContainerProperty(Translate.getMessage("start"), TextField.class, null);
    colorTable.addContainerProperty(Translate.getMessage("end"), TextField.class, null);
    colorTable.addContainerProperty("remove", Button.class, null);

    // COLOR COLUMN
    colorTable.addGeneratedColumn(Translate.getMessage("colour"), new Table.ColumnGenerator() {
        @Override
        public Object generateCell(Table source, Object itemId, Object columnId) {
            final Property<String> colorProp = tableContainer.getItem(itemId).getItemProperty("color");

            int[] col = ColourUtil.decode(colorProp.getValue());
            ColorPicker picker = new ColorPicker();
            picker.addStyleName("diagramme");
            picker.setPosition(Page.getCurrent().getBrowserWindowWidth() / 2 - 246 / 2,
                    Page.getCurrent().getBrowserWindowHeight() / 2 - 507 / 2);
            picker.setColor(new com.vaadin.shared.ui.colorpicker.Color(col[0], col[1], col[2]));

            picker.addColorChangeListener(new ColorChangeListener() {
                @Override
                public void colorChanged(ColorChangeEvent event) {
                    colorProp.setValue(event.getColor().getCSS());
                    updateDiagramme();
                }
            });
            picker.setWidth("25px");

            return picker;
        }
    });

    // BAND START COLUMN
    colorTable.addGeneratedColumn(Translate.getMessage("start"), new Table.ColumnGenerator() {
        @Override
        public Object generateCell(Table source, Object itemId, Object columnId) {
            final Property<Double> startProp = tableContainer.getContainerProperty(itemId, "startValue");

            final ObjectProperty<Double> startValue = new ObjectProperty<Double>(0.0);
            TextField startField = new TextField(startValue);
            //startField.setWidth("60px");
            startField.setSizeFull();
            startField.setNullRepresentation("0");
            startField.addStyleName("tfwb");
            startField.setConvertedValue(startProp.getValue());
            startField.setImmediate(true);

            startValue.addValueChangeListener(new Property.ValueChangeListener() {
                @Override
                public void valueChange(Property.ValueChangeEvent event) {
                    startProp.setValue((Double) event.getProperty().getValue());
                    updateDiagramme();
                }
            });

            return startField;
        }
    });

    // BAND END COLUMN
    colorTable.addGeneratedColumn(Translate.getMessage("end"), new Table.ColumnGenerator() {
        @Override
        public Object generateCell(Table source, Object itemId, Object columnId) {
            final Property<Double> endProp = tableContainer.getContainerProperty(itemId, "endValue");

            final ObjectProperty<Double> endValue = new ObjectProperty<Double>(0.0);
            TextField endField = new TextField(endValue);
            //endField.setWidth("60px");
            endField.setSizeFull();
            endField.setNullRepresentation("0");
            endField.addStyleName("tfwb");
            endField.setConvertedValue(endProp.getValue());
            endField.setImmediate(true);

            endValue.addValueChangeListener(new Property.ValueChangeListener() {
                @Override
                public void valueChange(Property.ValueChangeEvent valueChangeEvent) {
                    endProp.setValue((Double) valueChangeEvent.getProperty().getValue());
                    updateDiagramme();
                }
            });

            return endField;
        }
    });

    // DELETE BAND COLUMN
    colorTable.addGeneratedColumn("remove", new Table.ColumnGenerator() {

        @Override
        public Object generateCell(Table source, final Object itemId, Object columnId) {

            Button delete = new Button(FontAwesome.TIMES);
            delete.addClickListener(new Button.ClickListener() {
                @Override
                public void buttonClick(Button.ClickEvent event) {
                    removeBand(itemId);
                }
            });
            delete.setWidth("43px");

            return delete;
        }
    });

    colorTable.setColumnWidth(Translate.getMessage("colour"), 33);
    colorTable.setColumnWidth("remove", 48);
    colorTable.setColumnExpandRatio(Translate.getMessage("start"), 0.5f);
    colorTable.setColumnExpandRatio(Translate.getMessage("end"), 0.5f);

    colorTable.setSortEnabled(false);
    colorTable.setPageLength(0);
    colorTable.setEditable(true);
    colorTable.setImmediate(true);

    addComponent(colorTable);
    setExpandRatio(colorTable, 1f);
    setComponentAlignment(colorTable, Alignment.TOP_LEFT);
}

From source file:com.hybridbpm.ui.component.development.AbstractEditor.java

License:Apache License

public AbstractEditor() {
    setSizeFull();//from   www  .j  a va  2s. c  o m
    setSpacing(true);
    setMargin(new MarginInfo(true, false, false, false));
    addComponent(buttonBar);
    setComponentAlignment(buttonBar, Alignment.MIDDLE_RIGHT);
    addComponent(horizontalSplitPanel);
    setExpandRatio(horizontalSplitPanel, 1f);

    horizontalSplitPanel.setSizeFull();
    horizontalSplitPanel.setStyleName("transparent");

    buttonBar.setSpacing(true);
    buttonBar.setSpacing(true);

    btnSave.setIcon(FontAwesome.SAVE);
    btnSave.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnSave.addStyleName(ValoTheme.BUTTON_SMALL);
    btnSave.addStyleName(ValoTheme.BUTTON_PRIMARY);
}

From source file:com.hybridbpm.ui.component.development.FormEditor.java

License:Apache License

public FormEditor(Module module) {
    super();//from  w  w w.j a  v  a  2s  .  com
    this.module = HybridbpmUI.getDevelopmentAPI().getModuleById(module.getId());
    ;

    btnRun.setIcon(FontAwesome.PLAY);
    btnRun.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnRun.addStyleName(ValoTheme.BUTTON_SMALL);

    btnParameters.setIcon(FontAwesome.WRENCH);
    btnParameters.setStyleName(ValoTheme.BUTTON_BORDERLESS);
    btnParameters.addStyleName(ValoTheme.BUTTON_SMALL);

    horizontalSplitPanel.addComponents(designEditorLayout, codeEditorLayout);
    buttonBar.addComponent(btnParameters, 0);
    buttonBar.addComponent(btnRun, 0);

    codeEditorLayout.setSizeFull();
    codeEditorLayout.addStyleName("code");
    codeEditorLayout.setMargin(new MarginInfo(false, false, false, true));
    designEditorLayout.setSizeFull();
    designEditorLayout.addStyleName("template");
    designEditorLayout.setMargin(new MarginInfo(false, true, false, false));

    binder.setItemDataSource(this.module);
    binder.bind(codeEditor, "code");
    binder.bind(designEditor, "design");

    switch (module.getType()) {
    case FORM:
        designEditor.setCaption("Design");
        designEditor.setMode(AceMode.html);
        designEditor.setTheme(AceTheme.textmate);
        designEditor.setShowGutter(true);
        designEditor.setSizeFull();
        codeEditor.setCaption("Code");
        codeEditor.setMode(AceMode.groovy);
        codeEditor.setTheme(AceTheme.textmate);
        codeEditor.setShowGutter(true);
        codeEditor.setSizeFull();
        horizontalSplitPanel.setSplitPosition(50, Sizeable.Unit.PERCENTAGE);
        btnRun.setCaption("Test");
        break;
    }
    if (module.getTemplate()) {
        btnRun.setVisible(false);
        btnParameters.setVisible(false);
    }
}

From source file:com.hybridbpm.ui.component.ValoUserItemButton.java

License:Apache License

public ValoUserItemButton(final User user, TYPE type) {
    this.user = user;
    this.type = type;
    switch (this.type) {
    case FULL_NAME:
        addStyleName(ValoTheme.BUTTON_BORDERLESS);
        addStyleName(ValoTheme.BUTTON_TINY);
        setCaption(user.getFullName());/*from   w ww . j av  a 2s . co  m*/
        break;
    case USER_NAME:
        addStyleName(ValoTheme.BUTTON_LINK);
        addStyleName(ValoTheme.BUTTON_TINY);
        setCaption("@" + user.getUsername());
        break;
    }
    addClickListener(new ClickListener() {

        @Override
        public void buttonClick(ClickEvent event) {
            //                UI.getCurrent().getNavigator().navigateTo(view.getUrl());
        }
    });
}

From source file:com.mechanicshop.components.MaintenanceLayout.java

private void customizeTable() {
    table.setSizeFull();//  ww w . j a v  a 2s .c  o m
    table.setSortEnabled(true);
    table.setStyleName(ValoTheme.TABLE_NO_HORIZONTAL_LINES);
    table.addStyleName(ValoTheme.TABLE_SMALL);
    table.setEditable(true);
    table.setImmediate(true);

    table.addGeneratedColumn(" ", new Table.ColumnGenerator() {

        @Override
        public Object generateCell(final Table source, final Object itemId, Object columnId) {
            Button icon = new Button();
            icon.setStyleName(ValoTheme.BUTTON_ICON_ONLY);
            icon.addStyleName(ValoTheme.BUTTON_TINY);
            icon.addStyleName(ValoTheme.BUTTON_BORDERLESS);
            icon.setVisible(true);
            icon.setImmediate(true);
            icon.setDescription("Details");
            icon.setIcon(FontAwesome.PENCIL);
            icon.addClickListener(new ClickListener() {

                @Override
                public void buttonClick(ClickEvent event) {
                    Item item = source.getItem(itemId);
                    showDataEntryWindow(item);
                }
            });
            return icon;
        }
    });

}