Example usage for com.vaadin.ui Alignment BOTTOM_LEFT

List of usage examples for com.vaadin.ui Alignment BOTTOM_LEFT

Introduction

In this page you can find the example usage for com.vaadin.ui Alignment BOTTOM_LEFT.

Prototype

Alignment BOTTOM_LEFT

To view the source code for com.vaadin.ui Alignment BOTTOM_LEFT.

Click Source Link

Usage

From source file:org.activiti.explorer.ui.custom.ConfirmationDialogPopupWindow.java

License:Apache License

protected void initButtons(I18nManager i18nManager) {
    yesButton = new Button(i18nManager.getMessage(Messages.CONFIRMATION_DIALOG_YES));
    layout.addComponent(yesButton, 0, 1);
    layout.setComponentAlignment(yesButton, Alignment.BOTTOM_RIGHT);
    yesButton.addListener(new ClickListener() {
        private static final long serialVersionUID = 1L;

        public void buttonClick(ClickEvent event) {
            close();//from w  w  w.  java2s.  com
            fireEvent(new ConfirmationEvent(ConfirmationDialogPopupWindow.this, true));
        }
    });

    noButton = new Button(i18nManager.getMessage(Messages.CONFIRMATION_DIALOG_NO));
    layout.addComponent(noButton, 1, 1);
    layout.setComponentAlignment(noButton, Alignment.BOTTOM_LEFT);
    noButton.addListener(new ClickListener() {
        private static final long serialVersionUID = 1L;

        public void buttonClick(ClickEvent event) {
            close();
            fireEvent(new ConfirmationEvent(ConfirmationDialogPopupWindow.this, false));
        }
    });
}

From source file:org.apache.tamaya.ui.views.ConfigView.java

License:Apache License

private Component createFilters() {
    HorizontalLayout filters = new HorizontalLayout();
    Button filterButton = new Button("Filter", new Button.ClickListener() {
        @Override//w  w w  .j a  v  a  2s.  c o  m
        public void buttonClick(Button.ClickEvent clickEvent) {
            fillTree();
        }
    });
    filters.setDefaultComponentAlignment(Alignment.BOTTOM_LEFT);
    filters.addComponents(keyFilter, valueFilter, filterButton);
    filters.setSpacing(true);
    return filters;
}

From source file:org.balisunrise.vaadin.components.Editor.java

License:Open Source License

private void init() {
    setStyleName("b-editor");
    if (expandPanel) {
        setSizeFull();/* ww  w  .  j a  va2 s.  c om*/
    } else {
        setWidth("100%");
        setHeightUndefined();
    }

    addComponent(messenger);
    setComponentAlignment(messenger, Alignment.TOP_LEFT);

    addComponent(panel);
    setComponentAlignment(panel, Alignment.TOP_LEFT);
    if (expandPanel)
        setExpandRatio(panel, .1f);

    addComponent(actionsLine);
    if (expandPanel)
        setComponentAlignment(actionsLine, Alignment.BOTTOM_LEFT);
    else
        setComponentAlignment(actionsLine, Alignment.TOP_LEFT);
}

From source file:org.eclipse.hawkbit.ui.common.footer.AbstractDeleteActionsLayout.java

License:Open Source License

protected void buildLayout() {
    final HorizontalLayout dropHintLayout = new HorizontalLayout();
    if (hasCountMessage()) {
        dropHintLayout.addComponent(getCountMessageLabel());
    }//from w  w w.j  a va2 s  .co m
    final HorizontalLayout hLayout = new HorizontalLayout();
    hLayout.setId(UIComponentIdProvider.ACTION_BUTTON_LAYOUT);
    hLayout.setSpacing(true);
    hLayout.setSizeUndefined();
    if (deleteWrapper != null) {
        hLayout.addComponent(deleteWrapper);
        hLayout.setComponentAlignment(deleteWrapper, Alignment.BOTTOM_LEFT);
    }
    if (noActionBtn != null) {
        hLayout.addComponent(noActionBtn);
        hLayout.setComponentAlignment(noActionBtn, Alignment.BOTTOM_LEFT);
    }
    if (bulkUploadStatusButton != null) {
        hLayout.addComponent(bulkUploadStatusButton);
        hLayout.setComponentAlignment(bulkUploadStatusButton, Alignment.BOTTOM_LEFT);
    }
    if (dropHintLayout.getComponentCount() > 0) {
        addComponent(dropHintLayout);
        setComponentAlignment(dropHintLayout, Alignment.BOTTOM_CENTER);
    }
    if (hLayout.getComponentCount() > 0) {
        addComponent(hLayout);
        setComponentAlignment(hLayout, Alignment.BOTTOM_CENTER);
    }
    setStyleName(SPUIStyleDefinitions.FOOTER_LAYOUT);
    setWidth("100%");
}

From source file:org.eclipse.hawkbit.ui.login.AbstractHawkbitLoginUI.java

License:Open Source License

private void addFooter(final VerticalLayout rootLayout) {
    final Resource resource = context
            .getResource("classpath:/VAADIN/themes/" + UI.getCurrent().getTheme() + "/layouts/footer.html");

    try (final InputStream resourceStream = resource.getInputStream()) {
        final CustomLayout customLayout = new CustomLayout(resourceStream);
        customLayout.setSizeUndefined();
        rootLayout.addComponent(customLayout);
        rootLayout.setComponentAlignment(customLayout, Alignment.BOTTOM_LEFT);
    } catch (final IOException ex) {
        LOG.error("Footer file cannot be loaded", ex);
    }//from   ww w. j av a 2 s  . com
}

From source file:org.eclipse.hawkbit.ui.login.AbstractHawkbitLoginUI.java

License:Open Source License

protected Component buildFields() {
    final HorizontalLayout fields = new HorizontalLayout();
    fields.setSpacing(true);//from   ww  w. j a  v  a  2 s .c  o m
    fields.addStyleName("fields");
    buildTenantField();
    buildUserField();
    buildPasswordField();
    buildSignInButton();
    if (multiTenancyIndicator.isMultiTenancySupported()) {
        fields.addComponents(tenant, username, password, signIn);
    } else {
        fields.addComponents(username, password, signIn);
    }
    fields.setComponentAlignment(signIn, Alignment.BOTTOM_LEFT);
    signIn.addClickListener(event -> handleLogin());

    return fields;
}

From source file:org.eclipse.hawkbit.ui.login.LoginView.java

License:Open Source License

private Component buildFields() {
    final HorizontalLayout fields = new HorizontalLayout();
    fields.setSpacing(true);//from   w ww  .j  ava2s . c o m
    fields.addStyleName("fields");
    buildTenantField();
    buildUserField();
    buildPasswordField();
    buildSignInButton();
    if (multiTenancyIndicator.isMultiTenancySupported()) {
        fields.addComponents(tenant, username, password, signin);
    } else {
        fields.addComponents(username, password, signin);
    }
    fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);
    signin.addClickListener(event -> handleLogin());

    return fields;
}

From source file:org.eclipse.hawkbit.ui.tenantconfiguration.TenantConfigurationDashboardView.java

License:Open Source License

/**
 * Init method adds all Configuration Views to the list of Views.
 *//*from w w w  .j  a  v  a2s. co  m*/
@PostConstruct
public void init() {
    if (defaultDistributionSetTypeLayout.getComponentCount() > 0) {
        configurationViews.add(defaultDistributionSetTypeLayout);
    }
    configurationViews.add(repositoryConfigurationView);
    configurationViews.add(rolloutConfigurationView);
    configurationViews.add(authenticationConfigurationView);
    configurationViews.add(pollingConfigurationView);
    if (customConfigurationViews != null) {
        configurationViews.addAll(customConfigurationViews.stream().filter(ConfigurationGroup::show)
                .collect(Collectors.toList()));
    }

    final Panel rootPanel = new Panel();
    rootPanel.setStyleName("tenantconfig-root");

    final VerticalLayout rootLayout = new VerticalLayout();
    rootLayout.setSizeFull();
    rootLayout.setMargin(true);
    rootLayout.setSpacing(true);

    configurationViews.forEach(rootLayout::addComponent);

    final HorizontalLayout buttonContent = saveConfigurationButtonsLayout();
    rootLayout.addComponent(buttonContent);
    rootLayout.setComponentAlignment(buttonContent, Alignment.BOTTOM_LEFT);
    rootPanel.setContent(rootLayout);
    setCompositionRoot(rootPanel);

    configurationViews.forEach(view -> view.addChangeListener(this));
}

From source file:org.eclipse.skalli.view.component.PeopleSearchWindow.java

License:Open Source License

private void createContents() {
    setModal(true);// w w  w.ja  v a2  s.c o  m
    setCaption("Search people...");

    setWidth("310px"); //$NON-NLS-1$
    setHeight("400px"); //$NON-NLS-1$

    root = new VerticalLayout();
    root.setMargin(true);
    root.setSpacing(true);

    HorizontalLayout search = new HorizontalLayout();
    search.setSpacing(true);

    searchField = new TextField("Search for:");
    searchField.setWidth("20em"); //$NON-NLS-1$
    searchField.setImmediate(true);
    searchField.addListener(new ValueChangeListener() {
        @Override
        public void valueChange(com.vaadin.data.Property.ValueChangeEvent event) {
            search((String) searchField.getValue());
            list.focus();
        }
    });
    search.addComponent(searchField);
    search.setComponentAlignment(searchField, Alignment.BOTTOM_LEFT);
    search.setExpandRatio(searchField, 1.0f);

    Button searchButton = new NativeButton("", new Button.ClickListener() { //$NON-NLS-1$
        @Override
        public void buttonClick(ClickEvent event) {
            search((String) searchField.getValue());
        }
    });
    searchButton.setDescription("Search");
    searchButton.setStyleName(STYLE_USER_DOSEARCH);
    search.addComponent(searchButton);
    search.setComponentAlignment(searchButton, Alignment.BOTTOM_LEFT);
    search.setExpandRatio(searchButton, 0);

    root.addComponent(search);

    list = new ListSelect("Search results:", dataSource);
    list.setSizeFull();
    list.setMultiSelect(true);
    list.setImmediate(true);

    HorizontalLayout buttons = new HorizontalLayout();
    buttons.setSpacing(true);

    Button addButton = new Button("Add");
    addButton.setIcon(ICON_BUTTON_ADD_SELECTED);
    addButton.setDescription("Adds the selected person to the list.");
    addButton.addListener(new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            Set<User> values = (Set<User>) list.getValue();
            if (selectHandler != null && values != null) {
                selectHandler.onPeopleSelected(values);
                list.removeAllItems();
                searchField.setValue(""); //$NON-NLS-1$
                searchField.focus();
            }
        }
    });
    buttons.addComponent(addButton);

    Button addAndCloseButton = new Button("Add & Close");
    addAndCloseButton.setIcon(ICON_BUTTON_ADD_SELECTED);
    addAndCloseButton.setDescription("Adds the selected person to the list and closes the dialog.");
    addAndCloseButton.addListener(new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            Set<User> values = (Set<User>) list.getValue();
            if (selectHandler != null && values != null) {
                selectHandler.onPeopleSelected(values);
                close();
            }
        }
    });
    buttons.addComponent(addAndCloseButton);

    root.addComponent(list);
    root.addComponent(buttons);
    root.setSizeFull();
    root.setExpandRatio(list, 1);
    //    root.setStyleName(STYLE_LAYOUT);
    setContent(root);
    searchField.focus();
}

From source file:org.esn.esobase.view.tab.DirectTableEditTab.java

public DirectTableEditTab(DBService service_, SearchService searchService_) {
    this.service = service_;
    this.searchService = searchService_;
    this.setSizeFull();
    this.setMargin(false);
    linkedItemClickListener = new LinkedItemClickListener();
    searchTabs = new TabSheet();
    searchTabs.setSizeFull();//from www .j  a v  a 2s. c  o  m
    searchTabs.setHeight(250f, Unit.PIXELS);
    VerticalLayout searchInCatalogsLayout = new VerticalLayout();
    searchInCatalogsLayout.setSizeFull();
    searchInCatalogsLayout.setMargin(false);
    HorizontalLayout hl = new HorizontalLayout();
    hl.setDefaultComponentAlignment(Alignment.BOTTOM_LEFT);
    searchField = new TextField();
    searchField.setWidth(500, Unit.PIXELS);
    searchField
            .addShortcutListener(new ShortcutListener("Search shortcut", ShortcutAction.KeyCode.ENTER, null) {
                @Override
                public void handleAction(Object sender, Object target) {
                    search();
                }
            });
    hl.addComponent(searchField);
    searchButton = new Button("?");
    searchButton.setIcon(FontAwesome.SEARCH);
    searchButton.addClickListener(new Button.ClickListener() {

        @Override
        public void buttonClick(Button.ClickEvent event) {
            search();

        }
    });
    hl.addComponent(searchButton);
    hl.addComponent(new Label(""));

    tableNamesList.add("GSpreadSheetsNpcName");
    tableNamesList.add("GSpreadSheetsNpcPhrase");
    tableNamesList.add("GSpreadSheetsPlayerPhrase");
    tableNamesList.add("GSpreadSheetsAbilityDescription");
    tableNamesList.add("GSpreadSheetsAchievement");
    tableNamesList.add("GSpreadSheetsAchievementDescription");
    tableNamesList.add("GSpreadSheetsActivator");
    tableNamesList.add("GSpreadSheetsCollectible");
    tableNamesList.add("GSpreadSheetsCollectibleDescription");
    tableNamesList.add("GSpreadSheetsItemDescription");
    tableNamesList.add("GSpreadSheetsItemName");
    tableNamesList.add("GSpreadSheetsJournalEntry");
    tableNamesList.add("GSpreadSheetsLoadscreen");
    tableNamesList.add("GSpreadSheetsLocationName");
    tableNamesList.add("GSpreadSheetsNote");
    tableNamesList.add("GSpreadSheetsQuestDescription");
    tableNamesList.add("GSpreadSheetsQuestDirection");
    tableNamesList.add("GSpreadSheetsQuestName");
    tableNamesList.add("GSpreadSheetsQuestStartTip");
    tableNamesList.add("GSpreadSheetsQuestEndTip");
    tableNames = new ComboBoxMultiselect(null);
    tableNames.setSelectAllButtonCaption(" ?");
    tableNames.setShowSelectAllButton(new ComboBoxMultiselect.ShowButton() {
        @Override
        public boolean isShow(String filter, int page) {
            return true;
        }
    });
    tableNames.setClearButtonCaption("? ");
    tableNames.setPageLength(0);
    tableNames.addItems(tableNamesList);
    tableNames.selectAll();
    tableNames.setItemCaption("GSpreadSheetsAbilityDescription", "?? ???");
    tableNames.setItemCaption("GSpreadSheetsAchievement", "??");
    tableNames.setItemCaption("GSpreadSheetsAchievementDescription", "?? ?");
    tableNames.setItemCaption("GSpreadSheetsActivator", "?");
    tableNames.setItemCaption("GSpreadSheetsCollectible", " ");
    tableNames.setItemCaption("GSpreadSheetsCollectibleDescription",
            "??  ");
    tableNames.setItemCaption("GSpreadSheetsItemDescription", "?? ");
    tableNames.setItemCaption("GSpreadSheetsItemName", "?? ");
    tableNames.setItemCaption("GSpreadSheetsJournalEntry", "? ");
    tableNames.setItemCaption("GSpreadSheetsLoadscreen", " ?");
    tableNames.setItemCaption("GSpreadSheetsLocationName", "");
    tableNames.setItemCaption("GSpreadSheetsNote", "?");
    tableNames.setItemCaption("GSpreadSheetsNpcName", "NPC");
    tableNames.setItemCaption("GSpreadSheetsNpcPhrase", " NPC");
    tableNames.setItemCaption("GSpreadSheetsPlayerPhrase", " ");
    tableNames.setItemCaption("GSpreadSheetsQuestDescription", "?? ?");
    tableNames.setItemCaption("GSpreadSheetsQuestDirection", " ?");
    tableNames.setItemCaption("GSpreadSheetsQuestEndTip", " ");
    tableNames.setItemCaption("GSpreadSheetsQuestName", "?? ?");
    tableNames.setItemCaption("GSpreadSheetsQuestStartTip", "? ");
    hl.addComponent(tableNames);
    regularExpression = new CheckBox("regexp", false);
    hl.addComponent(regularExpression);
    withTranslatedNeighbours = new CheckBox(
            "? ?  ???", false);
    hl.addComponent(withTranslatedNeighbours);
    neighboursCount = new Slider(null, 1, 200);
    neighboursCount.setValue(20d);
    hl.addComponent(neighboursCount);
    searchInCatalogsLayout.addComponent(hl);
    translatedTextSpecification = new TranslatedTextSpecification();
    resultTable = new Table(" ?");
    resultTable.addStyleName(ValoTheme.TABLE_SMALL);
    resultTable.addStyleName(ValoTheme.TABLE_COMPACT);
    resultTable.setSizeFull();
    resultTable.setPageLength(0);
    hc.addContainerProperty("textEn", String.class, null);
    hc.addContainerProperty("textRu", String.class, null);
    hc.addContainerProperty("catalogType", String.class, null);
    hc.addContainerProperty("translator", String.class, null);
    hc.addContainerProperty("weight", Integer.class, null);
    resultTable.setContainerDataSource(hc);
    resultTable.setVisibleColumns(new Object[] { "textEn", "textRu", "catalogType", "translator" });
    resultTable.setColumnHeaders(
            new String[] { "?", "?? ?", "", "" });
    resultTable.addItemClickListener(new SearchTableRowClickListener());

    searchInCatalogsLayout.addComponent(resultTable);
    searchInCatalogsLayout.setExpandRatio(resultTable, 5f);

    searchTabs.addTab(searchInCatalogsLayout, "?");
    VerticalLayout translationsLayout = new VerticalLayout();
    translationsLayout.setMargin(false);
    translationsLayout.setSpacing(false);
    translationsLayout.setSizeFull();
    HorizontalLayout traslationsFilterslayout = new HorizontalLayout();
    statusFilter = new ComboBox("?", Arrays.asList(TRANSLATE_STATUS.values()));
    statusFilter.setNullSelectionAllowed(false);
    statusFilter.setValue(TRANSLATE_STATUS.NEW);
    traslationsFilterslayout.addComponent(statusFilter);
    translatorBox = new ComboBox("");
    translatorBox.setPageLength(15);
    sysAccountContainer = service.loadBeanItems(sysAccountContainer);
    translatorBox.setContainerDataSource(sysAccountContainer);
    translatorBox.setFilteringMode(FilteringMode.CONTAINS);
    traslationsFilterslayout.addComponent(translatorBox);
    translateTypeBox = new ComboBox("");
    translateTypeBox.setNullSelectionAllowed(true);
    translateTypeBox.setPageLength(15);
    translateTypeBox.addItem("spreadSheetsActivator");
    translateTypeBox.setItemCaption("spreadSheetsActivator", "?");
    translateTypeBox.addItem("spreadSheetsAchievement");
    translateTypeBox.setItemCaption("spreadSheetsAchievement", "??");
    translateTypeBox.addItem("spreadSheetsAchievementDescription");
    translateTypeBox.setItemCaption("spreadSheetsAchievementDescription",
            "?? ?");
    translateTypeBox.addItem("spreadSheetsNote");
    translateTypeBox.setItemCaption("spreadSheetsNote", "?");
    translateTypeBox.addItem("spreadSheetsItemDescription");
    translateTypeBox.setItemCaption("spreadSheetsItemDescription", "?? ");
    translateTypeBox.addItem("spreadSheetsItemName");
    translateTypeBox.setItemCaption("spreadSheetsItemName", "?? ");
    translateTypeBox.addItem("spreadSheetsJournalEntry");
    translateTypeBox.setItemCaption("spreadSheetsJournalEntry", "?  ");
    translateTypeBox.addItem("spreadSheetsLocationName");
    translateTypeBox.setItemCaption("spreadSheetsLocationName", "?? ");
    translateTypeBox.addItem("spreadSheetsNpcName");
    translateTypeBox.setItemCaption("spreadSheetsNpcName", " NPC");
    translateTypeBox.addItem("spreadSheetsNpcPhrase");
    translateTypeBox.setItemCaption("spreadSheetsNpcPhrase", " NPC");
    translateTypeBox.addItem("spreadSheetsPlayerPhrase");
    translateTypeBox.setItemCaption("spreadSheetsPlayerPhrase", " ");
    translateTypeBox.addItem("spreadSheetsQuestDescription");
    translateTypeBox.setItemCaption("spreadSheetsQuestDescription", "?? ?");
    translateTypeBox.addItem("spreadSheetsQuestDirection");
    translateTypeBox.setItemCaption("spreadSheetsQuestDirection", " ?");
    translateTypeBox.addItem("spreadSheetsQuestName");
    translateTypeBox.setItemCaption("spreadSheetsQuestName", "?? ?");
    translateTypeBox.addItem("spreadSheetsQuestStartTip");
    translateTypeBox.setItemCaption("spreadSheetsQuestStartTip", "? ");
    translateTypeBox.addItem("spreadSheetsQuestEndTip");
    translateTypeBox.setItemCaption("spreadSheetsQuestEndTip", " ");
    translateTypeBox.addItem("sheetsCollectible");
    translateTypeBox.setItemCaption("sheetsCollectible",
            "??  ");
    translateTypeBox.addItem("sheetsCollectibleDescription");
    translateTypeBox.setItemCaption("sheetsCollectibleDescription",
            "??  ");
    translateTypeBox.addItem("sheetsLoadscreen");
    translateTypeBox.setItemCaption("sheetsLoadscreen", " ?");
    translateTypeBox.setFilteringMode(FilteringMode.CONTAINS);
    traslationsFilterslayout.addComponent(translateTypeBox);
    filterTranslationButton = new Button("?");
    filterTranslationButton.addClickListener(new ClickListener() {

        @Override
        public void buttonClick(Button.ClickEvent event) {
            filterTranslations();
        }
    });
    traslationsFilterslayout.addComponent(filterTranslationButton);
    traslationsFilterslayout.setComponentAlignment(filterTranslationButton, Alignment.BOTTOM_LEFT);
    translationsLayout.addComponent(traslationsFilterslayout);
    newTranslationsTable = new MGrid();
    newTranslationsTable.setSizeFull();
    newTranslationsContainer = new GeneratedPropertyListContainer<>(TranslatedText.class);
    newTranslationsTable.setContainerDataSource(newTranslationsContainer);
    filterTranslations();
    newTranslationsContainer.sort(new Object[] { "id" }, new boolean[] { true });
    newTranslationsTable.setContainerDataSource(newTranslationsContainer);
    newTranslationsTable.setColumns("author", "createTime", "text");
    newTranslationsTable.getColumn("author").setHeaderCaption("?").setMaximumWidth(200);
    newTranslationsTable.getColumn("createTime").setHeaderCaption("").setWidth(140);
    newTranslationsTable.getColumn("text").setHeaderCaption("").setMaximumWidth(800)
            .setMinimumWidth(600);
    newTranslationsTable.addItemClickListener(new TranslationsTableRowClickListener());
    translationsLayout.addComponent(newTranslationsTable);
    translationsLayout.setExpandRatio(newTranslationsTable, 5f);
    searchTabs.addTab(translationsLayout, "");
    this.addComponent(searchTabs);
    filterLayout = new HorizontalLayout();
    Label itemTypeLabel = new Label("");
    itemType = new ComboBox();
    itemType.addItems(service.getTypes());
    itemType.setNullSelectionAllowed(true);
    itemType.setFilteringMode(FilteringMode.CONTAINS);
    filterLayout.addComponent(itemTypeLabel);
    filterLayout.addComponent(itemType);
    Label itemSubTypeLabel = new Label("");
    itemSubType = new ComboBox();
    itemSubType.addItems(service.getSubTypes());
    itemSubType.setNullSelectionAllowed(true);
    itemSubType.setFilteringMode(FilteringMode.CONTAINS);
    filterLayout.addComponent(itemSubTypeLabel);
    filterLayout.addComponent(itemSubType);
    notTranslated = new CheckBox("? ");
    notTranslated.setValue(Boolean.FALSE);
    filterLayout.addComponent(notTranslated);
    filterLayout.setComponentAlignment(notTranslated, Alignment.MIDDLE_LEFT);
    this.addComponent(filterLayout);
    tableTabs = new TabSheet();
    tableTabs.setSizeFull();
    gSpreadSheetsNpcNameContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsNpcName.class);
    npcNameTable = new GspreadSheetTable(gSpreadSheetsNpcNameContainer, PAGESIZE,
            service.getgSpreadSheetsNpcNameRepository(), specification);
    npcNameTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    npcNameTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(npcNameTable));
    tableTabs.addTab(npcNameTable, "NPC");
    npcNameTable.build();
    npcNameTable.setVisibleColumns(
            new Object[] { "rowNum", "sex", "textEn", "textRu", "infoColumn", "translateColumn" });
    npcNameTable.setColumnWidth("sex", 87);
    npcNameTable.setColumnHeader("sex", "");

    locationNameContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsLocationName.class);
    locationNameTable = new GspreadSheetTable(locationNameContainer, PAGESIZE,
            service.getgSpreadSheetsLocationNameRepository(), specification);
    locationNameTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    locationNameTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(locationNameTable));
    tableTabs.addTab(locationNameTable, "");
    locationNameTable.build();
    locationNameTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    activatorContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsActivator.class);
    activatorTable = new GspreadSheetTable(activatorContainer, PAGESIZE,
            service.getgSpreadSheetsActivatorRepository(), specification);
    activatorTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    activatorTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(activatorTable));
    tableTabs.addTab(activatorTable, "?");
    activatorTable.build();
    activatorTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    playerPhraseContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsPlayerPhrase.class);
    playerPhraseTable = new GspreadSheetTable(playerPhraseContainer, PAGESIZE,
            service.getgSpreadSheetsPlayerPhraseRepository(), specification);
    playerPhraseTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    playerPhraseTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(playerPhraseTable));
    tableTabs.addTab(playerPhraseTable, " ");
    playerPhraseTable.build();
    playerPhraseTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    Page.Styles styles = Page.getCurrent().getStyles();
    styles.add(".wrapped-text {\n" + "    white-space: normal;\n" + "    overflow: hidden;\n" + "}");
    npcPhraseContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsNpcPhrase.class);
    npcPhraseTable = new GspreadSheetTable(npcPhraseContainer, PAGESIZE,
            service.getgSpreadSheetsNpcPhraseRepository(), specification);
    npcPhraseTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    npcPhraseTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(npcPhraseTable));
    tableTabs.addTab(npcPhraseTable, " NPC");
    npcPhraseTable.build();
    npcPhraseTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    questNameContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsQuestName.class);
    questNameTable = new GspreadSheetTable(questNameContainer, PAGESIZE,
            service.getgSpreadSheetsQuestNameRepository(), specification);
    questNameTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    questNameTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(questNameTable));
    tableTabs.addTab(questNameTable, "?? ?");
    questNameTable.build();
    questNameTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    questDescriptionContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsQuestDescription.class);
    questDescriptionTable = new GspreadSheetTable(questDescriptionContainer, PAGESIZE,
            service.getgSpreadSheetsQuestDescriptionRepository(), specification);
    questDescriptionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    questDescriptionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(questDescriptionTable));
    tableTabs.addTab(questDescriptionTable, "?? ?");
    questDescriptionTable.build();
    questDescriptionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    questDirectionContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsQuestDirection.class);
    questDirectionTable = new GspreadSheetTable(questDirectionContainer, PAGESIZE,
            service.getgSpreadSheetsQuestDirectionRepository(), specification);
    questDirectionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    questDirectionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(questDirectionTable));
    tableTabs.addTab(questDirectionTable, " ?");
    questDirectionTable.build();
    questDirectionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    questStartTipContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsQuestStartTip.class);
    questStartTipTable = new GspreadSheetTable(questStartTipContainer, PAGESIZE,
            service.getgSpreadSheetsQuestStartTipRepository(), specification);
    questStartTipTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    questStartTipTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(questStartTipTable));
    tableTabs.addTab(questStartTipTable, "? ");
    questStartTipTable.build();
    questStartTipTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    questEndTipContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsQuestEndTip.class);
    questEndTipTable = new GspreadSheetTable(questEndTipContainer, PAGESIZE,
            service.getgSpreadSheetsQuestEndTipRepository(), specification);
    questEndTipTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    questEndTipTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(questEndTipTable));
    tableTabs.addTab(questEndTipTable, " ");
    questEndTipTable.build();
    questEndTipTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    itemNameLayout = new VerticalLayout();
    itemNameLayout.setMargin(false);
    itemNameLayout.setSpacing(false);
    itemNameLayout.setSizeFull();
    Label itemNameLabel = new Label(
            "???!  ?  ?:   ? ?, ? ? ? ? .");
    itemNameLabel.setStyleName(ValoTheme.LABEL_COLORED);
    itemNameContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsItemName.class);
    itemNameTable = new GspreadSheetTable(itemNameContainer, PAGESIZE,
            service.getgSpreadSheetsItemNameRepository(), itemNameSpecification);
    itemNameTable.addGeneratedColumn("itemTypeColumn", new ItemInfoColumnGenerator());
    itemNameTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    itemNameTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(itemNameTable));
    itemNameLayout.addComponent(itemNameLabel);
    itemNameLayout.addComponent(itemNameTable);
    itemNameLayout.setExpandRatio(itemNameTable, 1f);
    tableTabs.addTab(itemNameLayout, "?? ");
    itemNameTable.build();
    itemNameTable.setVisibleColumns(
            new Object[] { "rowNum", "textEn", "textRu", "itemTypeColumn", "infoColumn", "translateColumn" });
    itemNameTable.setColumnHeader("itemTypeColumn", "");
    itemNameTable.setColumnExpandRatio("itemTypeColumn", 0.5f);

    itemDescriptionContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsItemDescription.class);
    itemDescriptionTable = new GspreadSheetTable(itemDescriptionContainer, PAGESIZE,
            service.getgSpreadSheetsItemDescriptionRepository(), specification);
    itemDescriptionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    itemDescriptionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(itemDescriptionTable));
    tableTabs.addTab(itemDescriptionTable, "?? ");
    itemDescriptionTable.build();
    itemDescriptionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    journalEntryContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsJournalEntry.class);
    journalEntryTable = new GspreadSheetTable(journalEntryContainer, PAGESIZE,
            service.getgSpreadSheetsJournalEntryRepository(), specification);
    journalEntryTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    journalEntryTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(journalEntryTable));
    tableTabs.addTab(journalEntryTable, "? ");
    journalEntryTable.build();
    journalEntryTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    achievementContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsAchievement.class);
    achievementTable = new GspreadSheetTable(achievementContainer, PAGESIZE,
            service.getgSpreadSheetsAchievementRepository(), specification);
    achievementTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    achievementTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(achievementTable));
    tableTabs.addTab(achievementTable, "??");
    achievementTable.build();
    achievementTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    achievementDescriptionContainer = new GeneratedPropertyListContainer<>(
            GSpreadSheetsAchievementDescription.class);
    achievementDescriptionTable = new GspreadSheetTable(achievementDescriptionContainer, PAGESIZE,
            service.getgSpreadSheetsAchievementDescriptionRepository(), specification);
    achievementDescriptionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    achievementDescriptionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(achievementDescriptionTable));
    tableTabs.addTab(achievementDescriptionTable, "?? ?");
    achievementDescriptionTable.build();
    achievementDescriptionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    abilityDescriptionContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsAbilityDescription.class);
    abilityDescriptionTable = new GspreadSheetTable(abilityDescriptionContainer, PAGESIZE,
            service.getgSpreadSheetsAbilityDescriptionRepository(), specification);
    abilityDescriptionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    abilityDescriptionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(abilityDescriptionTable));
    tableTabs.addTab(abilityDescriptionTable, "?? ???");
    abilityDescriptionTable.build();
    abilityDescriptionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    noteContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsNote.class);
    noteTable = new GspreadSheetTable(noteContainer, PAGESIZE, service.getgSpreadSheetsNoteRepository(),
            specification);
    noteTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    noteTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(noteTable));
    tableTabs.addTab(noteTable, "?");
    noteTable.build();
    noteTable.setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    collectibleContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsCollectible.class);
    collectibleTable = new GspreadSheetTable(collectibleContainer, PAGESIZE,
            service.getgSpreadSheetsCollectibleRepository(), specification);
    collectibleTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    collectibleTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(collectibleTable));
    tableTabs.addTab(collectibleTable, " ");
    collectibleTable.build();
    collectibleTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    collectibleDescriptionContainer = new GeneratedPropertyListContainer<>(
            GSpreadSheetsCollectibleDescription.class);
    collectibleDescriptionTable = new GspreadSheetTable(collectibleDescriptionContainer, PAGESIZE,
            service.getgSpreadSheetsCollectibleDescriptionRepository(), specification);
    collectibleDescriptionTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    collectibleDescriptionTable.addGeneratedColumn("translateColumn",
            new TranslateColumnGenerator(collectibleDescriptionTable));
    tableTabs.addTab(collectibleDescriptionTable,
            "??  ");
    collectibleDescriptionTable.build();
    collectibleDescriptionTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });

    loadscreenContainer = new GeneratedPropertyListContainer<>(GSpreadSheetsLoadscreen.class);
    loadscreenTable = new GspreadSheetTable(loadscreenContainer, PAGESIZE,
            service.getgSpreadSheetsLoadscreenRepository(), specification);
    loadscreenTable.addGeneratedColumn("infoColumn", new InfoColumnGenerator());
    loadscreenTable.addGeneratedColumn("translateColumn", new TranslateColumnGenerator(loadscreenTable));
    tableTabs.addTab(loadscreenTable, " ?");
    loadscreenTable.build();
    loadscreenTable
            .setVisibleColumns(new Object[] { "rowNum", "textEn", "textRu", "infoColumn", "translateColumn" });
    LoadTables();
    itemType.addValueChangeListener(new Property.ValueChangeListener() {
        @Override
        public void valueChange(Property.ValueChangeEvent event) {
            LoadTables();
        }
    });
    itemSubType.addValueChangeListener(new Property.ValueChangeListener() {
        @Override
        public void valueChange(Property.ValueChangeEvent event) {
            LoadTables();
        }
    });
    notTranslated.addValueChangeListener(new HasValue.ValueChangeListener<Boolean>() {
        @Override
        public void valueChange(HasValue.ValueChangeEvent<Boolean> event) {
            LoadTables();
        }
    });

    this.addComponent(tableTabs);
    this.setExpandRatio(tableTabs, 20f);
}