Search in sources :

Example 1 with TableComboViewer

use of org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer in project translationstudio8 by heartsome.

the class NewProjectWizardLanguagePage method createControl.

/**
	 * Create contents of the wizard.
	 * @param parent
	 */
public void createControl(Composite parent) {
    Composite container = new Composite(parent, SWT.NULL);
    container.setLayout(new GridLayout(1, false));
    // source language control
    Group sourceLanguageGrp = new Group(container, SWT.NONE);
    sourceLanguageGrp.setLayout(new GridLayout(1, false));
    sourceLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    sourceLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.sourceLanguageGrp"));
    srcLangComboViewer = new TableComboViewer(sourceLanguageGrp, SWT.READ_ONLY | SWT.BORDER);
    TableCombo tableCombo = srcLangComboViewer.getTableCombo();
    // set options.
    tableCombo.setShowTableLines(false);
    tableCombo.setShowTableHeader(false);
    tableCombo.setDisplayColumnIndex(-1);
    tableCombo.setShowImageWithinSelection(true);
    tableCombo.setShowColorWithinSelection(false);
    tableCombo.setShowFontWithinSelection(false);
    tableCombo.setVisibleItemCount(20);
    srcLangComboViewer.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    srcLangComboViewer.setLabelProvider(new LanguageLabelProvider());
    srcLangComboViewer.setContentProvider(new ArrayContentProvider());
    srcLangComboViewer.setInput(languages);
    srcLangComboViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            srcLanguage = (Language) selection.getFirstElement();
            validator.update();
        }
    });
    // initialization remember value
    String rmSrcLangCode = ps.getString(IPreferenceConstants.NEW_PROJECT_SRC_LANG);
    if (rmSrcLangCode != null && !rmSrcLangCode.equals("")) {
        for (Language srcLang : languages) {
            if (srcLang.getCode().equals(rmSrcLangCode)) {
                srcLangComboViewer.setSelection(new StructuredSelection(srcLang));
                break;
            }
        }
    }
    // end source language
    // target language control
    Group targetLanguageGrp = new Group(container, SWT.NONE);
    targetLanguageGrp.setLayout(new GridLayout(3, false));
    targetLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1));
    targetLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.targetLanguageGrp"));
    targetLangControl.createControl(targetLanguageGrp);
    // end Target language
    setControl(container);
    validator.update();
}
Also used : Group(org.eclipse.swt.widgets.Group) Composite(org.eclipse.swt.widgets.Composite) LanguageLabelProvider(net.heartsome.cat.ts.ui.composite.LanguageLabelProvider) ISelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) StructuredSelection(org.eclipse.jface.viewers.StructuredSelection) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) SelectionChangedEvent(org.eclipse.jface.viewers.SelectionChangedEvent) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) GridLayout(org.eclipse.swt.layout.GridLayout) Language(net.heartsome.cat.common.locale.Language) GridData(org.eclipse.swt.layout.GridData) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) TableCombo(org.eclipse.nebula.widgets.tablecombo.TableCombo)

Example 2 with TableComboViewer

use of org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer in project translationstudio8 by heartsome.

the class CSVSettingDialog method createDialogArea.

@Override
protected Control createDialogArea(Composite parent) {
    Composite tparent = (Composite) super.createDialogArea(parent);
    GridLayoutFactory.fillDefaults().numColumns(1).extendedMargins(5, 5, 5, 5).applyTo(tparent);
    int height = 160;
    if (isTBXConverter) {
        height = 230;
    }
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).hint(320, height).grab(true, true).applyTo(tparent);
    Composite cmpSelFile = new Composite(tparent, SWT.None);
    GridLayoutFactory.fillDefaults().numColumns(3).equalWidth(false).extendedMargins(0, 0, 0, 0).applyTo(cmpSelFile);
    GridDataFactory.fillDefaults().applyTo(cmpSelFile);
    new Label(cmpSelFile, SWT.None).setText(Messages.getString("dialog.CSVSettingDialog.lblFile"));
    txtCSV = new Text(cmpSelFile, SWT.BORDER);
    txtCSV.setEditable(false);
    txtCSV.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    btnBrowse = new Button(cmpSelFile, SWT.None);
    btnBrowse.setText(Messages.getString("dialog.CSVSettingDialog.btnBrowse"));
    btnBrowse.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent arg0) {
            FileDialog dialog = new FileDialog(getShell(), SWT.OPEN);
            dialog.setText(Messages.getString("dialog.CSVSettingDialog.dialogTitle"));
            String[] extensions = { "*.csv", "*.txt", "*" };
            String[] filters = { Messages.getString("dialog.CSVSettingDialog.filters1"), Messages.getString("dialog.CSVSettingDialog.filters2"), Messages.getString("dialog.CSVSettingDialog.filters3") };
            dialog.setFilterExtensions(extensions);
            dialog.setFilterNames(filters);
            String fileSep = System.getProperty("file.separator");
            if (txtCSV.getText() != null && !txtCSV.getText().trim().equals("")) {
                dialog.setFilterPath(txtCSV.getText().substring(0, txtCSV.getText().lastIndexOf(fileSep)));
                dialog.setFileName(txtCSV.getText().substring(txtCSV.getText().lastIndexOf(fileSep) + 1));
            } else {
                dialog.setFilterPath(System.getProperty("user.home"));
            }
            String name = dialog.open();
            if (name != null) {
                txtCSV.setText(name);
            }
        }

        public void widgetDefaultSelected(SelectionEvent arg0) {
        }
    });
    Composite cmpContent = new Composite(tparent, SWT.NONE);
    cmpContent.setLayout(new GridLayout(2, false));
    cmpContent.setLayoutData(new GridData(GridData.FILL_BOTH));
    createLabel(cmpContent, Messages.getString("dialog.CSVSettingDialog.cmbColSeparator"));
    cmbColSeparator = new Combo(cmpContent, SWT.NONE);
    cmbColSeparator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    cmbColSeparator.setItems(arrColSeparator);
    cmbColSeparator.select(1);
    createLabel(cmpContent, Messages.getString("dialog.CSVSettingDialog.cmbTextDelimiter"));
    cmbTextDelimiter = new Combo(cmpContent, SWT.NONE);
    cmbTextDelimiter.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    cmbTextDelimiter.setItems(arrTextDelimiter);
    cmbTextDelimiter.setText("\"");
    cmbTextDelimiter.setTextLimit(1);
    createLabel(cmpContent, Messages.getString("dialog.CSVSettingDialog.cmbEncoding"));
    cmbEncoding = new Combo(cmpContent, SWT.READ_ONLY);
    cmbEncoding.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    String[] arrEncoding = LocaleService.getPageCodes();
    cmbEncoding.setItems(arrEncoding);
    cmbEncoding.select(indexOf(arrEncoding, "UTF-8"));
    if (isTBXConverter) {
        createLabel(cmpContent, Messages.getString("dialog.CSVSettingDialog.cmbLang"));
        cmbLang = new TableComboViewer(cmpContent, SWT.READ_ONLY | SWT.BORDER);
        TableCombo tableCombo = cmbLang.getTableCombo();
        tableCombo.setShowTableLines(false);
        tableCombo.setShowTableHeader(false);
        tableCombo.setDisplayColumnIndex(-1);
        tableCombo.setShowImageWithinSelection(true);
        tableCombo.setShowColorWithinSelection(false);
        tableCombo.setShowFontWithinSelection(false);
        tableCombo.setVisibleItemCount(20);
        cmbLang.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
        ArrayList<Language> languages = new ArrayList<Language>(LocaleService.getDefaultLanguage().values());
        Collections.sort(languages, new Comparator<Language>() {

            public int compare(Language o1, Language o2) {
                return o1.toString().compareTo(o2.toString());
            }
        });
        cmbLang.setContentProvider(new ArrayContentProvider());
        cmbLang.setLabelProvider(new LanguageLabelProvider());
        cmbLang.setInput(languages);
        cmbLang.getTableCombo().select(0);
        createLabel(cmpContent, Messages.getString("dialog.CSVSettingDialog.cmbXCSTemplate"));
        cmbXCSTemplate = new Combo(cmpContent, SWT.READ_ONLY);
        cmbXCSTemplate.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        if (xcsTemplates.length > 0) {
            cmbXCSTemplate.setItems(xcsTemplates);
            cmbXCSTemplate.select(0);
        }
    }
    return tparent;
}
Also used : Composite(org.eclipse.swt.widgets.Composite) LanguageLabelProvider(net.heartsome.cat.ts.ui.composite.LanguageLabelProvider) Label(org.eclipse.swt.widgets.Label) ArrayList(java.util.ArrayList) Text(org.eclipse.swt.widgets.Text) TableCombo(org.eclipse.nebula.widgets.tablecombo.TableCombo) Combo(org.eclipse.swt.widgets.Combo) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer) GridLayout(org.eclipse.swt.layout.GridLayout) Language(net.heartsome.cat.common.locale.Language) Button(org.eclipse.swt.widgets.Button) GridData(org.eclipse.swt.layout.GridData) SelectionEvent(org.eclipse.swt.events.SelectionEvent) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) TableCombo(org.eclipse.nebula.widgets.tablecombo.TableCombo) FileDialog(org.eclipse.swt.widgets.FileDialog) SelectionListener(org.eclipse.swt.events.SelectionListener)

Example 3 with TableComboViewer

use of org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer in project translationstudio8 by heartsome.

the class QAInstalPage method createContents.

@Override
protected Control createContents(Composite parent) {
    isInit = true;
    try {
        String bundlePath = FileLocator.toFileURL(Platform.getBundle("net.heartsome.cat.ts.ui.qa").getEntry("")).getPath();
        errorImg = new Image(getShell().getDisplay(), bundlePath + "icons/error.png");
        warnImg = new Image(getShell().getDisplay(), bundlePath + "icons/warning.png");
    } catch (IOException e) {
        e.printStackTrace();
        logger.error(Messages.getString("qa.preference.QAInstalPage.log1"), e);
    }
    Composite tparent = new Composite(parent, SWT.NONE);
    tparent.setLayout(new GridLayout());
    tparent.setLayoutData(new GridData(GridData.FILL_BOTH));
    Group qaItemInstalGroup = new Group(tparent, SWT.NONE);
    qaItemInstalGroup.setLayout(new GridLayout());
    GridDataFactory.fillDefaults().grab(true, false).hint(600, SWT.DEFAULT).applyTo(qaItemInstalGroup);
    qaItemInstalGroup.setText(Messages.getString("qa.preference.QAInstalPage.qaInstal"));
    String tip = Messages.getString("preference.QAInstalPage.itemInstalLbl");
    HsImageLabel itemInstalLbl = new HsImageLabel(tip, Activator.getImageDescriptor(ImageConstant.PREFERENCE_QA_instal_itemsChoose));
    Composite instalCmp = itemInstalLbl.createControl(qaItemInstalGroup);
    GridLayoutFactory.fillDefaults().numColumns(4).spacing(20, 2).applyTo(instalCmp);
    instalCmp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    GridLayout lCmpLayout = new GridLayout(2, false);
    lCmpLayout.marginWidth = 0;
    lCmpLayout.marginHeight = 0;
    GridData separatorLblData = new GridData(SWT.FILL, SWT.CENTER, true, false);
    separatorLblData.horizontalSpan = 4;
    // 术语一致性检查
    Label termLbl = new Label(instalCmp, SWT.NONE);
    termLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_TERM).get(QAConstant.QA_ITEM_NAME));
    batchTermBtn = new Button(instalCmp, SWT.CHECK);
    batchTermBtn.setText(CONSTANT_BATCHQA);
    autoTermBtn = new Button(instalCmp, SWT.CHECK);
    autoTermBtn.setText(CONSTANT_AUTOQA);
    Composite levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    termCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(termCmb);
    Label separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    // 数字一致性检查
    Label numberLbl = new Label(instalCmp, SWT.NONE);
    numberLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_NUMBER).get(QAConstant.QA_ITEM_NAME));
    batchNumberBtn = new Button(instalCmp, SWT.CHECK);
    batchNumberBtn.setText(CONSTANT_BATCHQA);
    autoNumberBtn = new Button(instalCmp, SWT.CHECK);
    autoNumberBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    numberCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(numberCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    // 标记一致性检查
    Label tagLbl = new Label(instalCmp, SWT.NONE);
    tagLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_TAG).get(QAConstant.QA_ITEM_NAME));
    batchTagBtn = new Button(instalCmp, SWT.CHECK);
    batchTagBtn.setText(CONSTANT_BATCHQA);
    autoTagBtn = new Button(instalCmp, SWT.CHECK);
    autoTagBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    tagCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(tagCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    // 非译元素检查
    Label nonTransLbl = new Label(instalCmp, SWT.NONE);
    nonTransLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_NONTRANSLATION).get(QAConstant.QA_ITEM_NAME));
    batchNonTransBtn = new Button(instalCmp, SWT.CHECK);
    batchNonTransBtn.setText(CONSTANT_BATCHQA);
    autoNonTransBtn = new Button(instalCmp, SWT.CHECK);
    autoNonTransBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    nonTransCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(nonTransCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    //段首段末空格检查
    Label spaceOfParaLbl = new Label(instalCmp, SWT.NONE);
    spaceOfParaLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_SPACEOFPARACHECK).get(QAConstant.QA_ITEM_NAME));
    batchSpaceOfParaBtn = new Button(instalCmp, SWT.CHECK);
    batchSpaceOfParaBtn.setText(CONSTANT_BATCHQA);
    autoSpaceOfParaBtn = new Button(instalCmp, SWT.CHECK);
    autoSpaceOfParaBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    spaceOfParaCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(spaceOfParaCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    //文本段完整性检查
    Label paraCompleteLbl = new Label(instalCmp, SWT.NONE);
    paraCompleteLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_PARACOMPLETENESS).get(QAConstant.QA_ITEM_NAME));
    batchParaCompleteBtn = new Button(instalCmp, SWT.CHECK);
    batchParaCompleteBtn.setText(CONSTANT_BATCHQA);
    autoParaCompleteBtn = new Button(instalCmp, SWT.CHECK);
    autoParaCompleteBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    paraCompleteCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(paraCompleteCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    //目标文本段长度限制检查 
    Label tgtLengthLimitLbl = new Label(instalCmp, SWT.NONE);
    tgtLengthLimitLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_TGTTEXTLENGTHLIMIT).get(QAConstant.QA_ITEM_NAME));
    batchTgtLengthLimitBtn = new Button(instalCmp, SWT.CHECK);
    batchTgtLengthLimitBtn.setText(CONSTANT_BATCHQA);
    autoTgtLengthLimitBtn = new Button(instalCmp, SWT.CHECK);
    autoTgtLengthLimitBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    tgtLengthLimitCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(tgtLengthLimitCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    //拼写检查
    Label spellLbl = new Label(instalCmp, SWT.NONE);
    spellLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_SPELL).get(QAConstant.QA_ITEM_NAME));
    batchSpellBtn = new Button(instalCmp, SWT.CHECK);
    batchSpellBtn.setText(CONSTANT_BATCHQA);
    autoSpellBtn = new Button(instalCmp, SWT.CHECK);
    autoSpellBtn.setText(CONSTANT_AUTOQA);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    spellCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(spellCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    // 文本段一致性检查
    Label paraLbl = new Label(instalCmp, SWT.NONE);
    paraLbl.setText(qaItemId_Name_Class.get(QAConstant.QA_PARAGRAPH).get(QAConstant.QA_ITEM_NAME));
    batchParaBtn = new Button(instalCmp, SWT.CHECK);
    batchParaBtn.setText(CONSTANT_BATCHQA);
    new Label(instalCmp, SWT.NONE);
    levelCmp = new Composite(instalCmp, SWT.NONE);
    levelCmp.setLayout(lCmpLayout);
    new Label(levelCmp, SWT.NONE).setText(CONSTANT_TIPLEVEL);
    paraCmb = new TableComboViewer(levelCmp, SWT.READ_ONLY | SWT.BORDER);
    createTableCombo(paraCmb);
    separatorLbl = new Label(instalCmp, SWT.SEPARATOR | SWT.HORIZONTAL);
    separatorLbl.setLayoutData(separatorLblData);
    itemInstalLbl.computeSize();
    // ---------------------------------自动检查策略设置
    Group autoIntalGroup = new Group(tparent, SWT.NONE);
    autoIntalGroup.setLayout(new GridLayout());
    autoIntalGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    autoIntalGroup.setText(Messages.getString("qa.preference.QAInstalPage.autoQaInstal"));
    // 入库时执行
    whenAddToDbBtn = new Button(autoIntalGroup, SWT.CHECK);
    whenAddToDbBtn.setText(Messages.getString("qa.preference.QAInstalPage.autoQaWhenAddToDb"));
    whenAddToDbBtn.addListener(SWT.Selection, this);
    // 批准文本段后执行
    whenApprovalBtn = new Button(autoIntalGroup, SWT.CHECK);
    whenApprovalBtn.setText(Messages.getString("qa.preference.QAInstalPage.autoQaWhenApproval"));
    whenApprovalBtn.addListener(SWT.Selection, this);
    initValue();
    return parent;
}
Also used : Group(org.eclipse.swt.widgets.Group) GridLayout(org.eclipse.swt.layout.GridLayout) Composite(org.eclipse.swt.widgets.Composite) HsImageLabel(net.heartsome.cat.common.ui.HsImageLabel) Button(org.eclipse.swt.widgets.Button) GridData(org.eclipse.swt.layout.GridData) HsImageLabel(net.heartsome.cat.common.ui.HsImageLabel) Label(org.eclipse.swt.widgets.Label) IOException(java.io.IOException) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer) Image(org.eclipse.swt.graphics.Image)

Example 4 with TableComboViewer

use of org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer in project translationstudio8 by heartsome.

the class SpellPage method createAspellCmp.

/**
	 * 创建 aspell 的配置界面
	 */
private void createAspellCmp() {
    isInit = true;
    Composite groupParent = new Composite(tabFolder, SWT.NONE);
    groupParent.setLayout(new GridLayout());
    groupParent.setLayoutData(new GridData(GridData.FILL_BOTH));
    //		Group groupParent = new Group(tparent, SWT.None);
    //		groupParent.setLayout(new GridLayout());
    //		groupParent.setLayoutData(new GridData(GridData.FILL_BOTH));
    //		groupParent.setText(Messages.getString("qa.preference.SpellPage.groupParent"));
    HsImageLabel imageLabel = new HsImageLabel(Messages.getString("qa.preference.SpellPage.imageLabel"), Activator.getImageDescriptor(ImageConstant.PREFERENCE_SYS_ASPELL_DIC));
    Composite cmp = imageLabel.createControl(groupParent);
    cmp.setLayout(new GridLayout());
    Composite cmpTemp = (Composite) imageLabel.getControl();
    cmpTemp.setLayoutData(new GridData(GridData.FILL_BOTH));
    Composite cmpContent = new Composite(cmpTemp, SWT.None);
    cmpContent.setLayout(new GridLayout(3, false));
    GridData data = new GridData(GridData.FILL_BOTH);
    data.horizontalSpan = 2;
    cmpContent.setLayoutData(data);
    Label lbl = new Label(cmpContent, SWT.NONE);
    lbl.setText(Messages.getString("qa.preference.SpellPage.lblPath"));
    GridDataFactory.swtDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lbl);
    txtCommandPath = new Text(cmpContent, SWT.BORDER);
    txtCommandPath.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    txtCommandPath.setEditable(false);
    btnBrowse = new Button(cmpContent, SWT.NONE);
    btnBrowse.setText(Messages.getString("qa.preference.SpellPage.btnBrowse"));
    //		GridData btnData = new GridData();
    //		btnData.widthHint = 70;
    //		btnBrowse.setLayoutData(btnData);
    new Label(cmpContent, SWT.NONE);
    btnUTF8 = new Button(cmpContent, SWT.CHECK);
    btnUTF8.setText(Messages.getString("qa.preference.SpellPage.btnUTF8"));
    new Label(cmpContent, SWT.NONE);
    lbl = new Label(cmpContent, SWT.NONE);
    lbl.setText(Messages.getString("qa.preference.SpellPage.lblDic"));
    GridDataFactory.swtDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lbl);
    cmbDefaultDic = new ComboViewer(cmpContent);
    cmbDefaultDic.getCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    btnRefresh = new Button(cmpContent, SWT.NONE);
    btnRefresh.setText(Messages.getString("qa.preference.SpellPage.btnRefresh"));
    lbl = new Label(cmpContent, SWT.NONE);
    lbl.setText(Messages.getString("qa.preference.SpellPage.lblLang"));
    GridDataFactory.swtDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lbl);
    cmbLang = new TableComboViewer(cmpContent, SWT.READ_ONLY | SWT.BORDER);
    TableCombo tableCombo = cmbLang.getTableCombo();
    tableCombo.setShowTableLines(false);
    tableCombo.setShowTableHeader(false);
    tableCombo.setDisplayColumnIndex(-1);
    tableCombo.setShowImageWithinSelection(true);
    tableCombo.setShowColorWithinSelection(false);
    tableCombo.setShowFontWithinSelection(false);
    tableCombo.setVisibleItemCount(20);
    cmbLang.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    cmbLang.setLabelProvider(new LanguageLabelProvider());
    cmbLang.setContentProvider(new ArrayContentProvider());
    cmbLang.setInput(languages);
    cmbLang.getTableCombo().select(0);
    new Label(cmpContent, SWT.NONE);
    Composite cmpTableBtn = new Composite(cmpContent, SWT.NONE);
    GridLayout btnLayout = new GridLayout(2, false);
    btnLayout.marginWidth = 0;
    cmpTableBtn.setLayout(btnLayout);
    GridData btnData1 = new GridData(GridData.FILL_BOTH);
    btnData1.horizontalSpan = 3;
    cmpTableBtn.setLayoutData(btnData1);
    btnAdd = new Button(cmpTableBtn, SWT.NONE);
    btnAdd.setText(Messages.getString("qa.preference.SpellPage.btnAdd"));
    btnRemove = new Button(cmpTableBtn, SWT.NONE);
    btnRemove.setText(Messages.getString("qa.preference.SpellPage.btnRemove"));
    Point browsePoint = btnBrowse.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
    Point refreshPoint = btnRefresh.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
    Point addPoint = btnAdd.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
    Point remPoint = btnRemove.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
    GridData btnData = new GridData();
    int width = Math.max(refreshPoint.x, Math.max(browsePoint.x, Math.max(addPoint.x, remPoint.x)));
    btnData.widthHint = width + 10;
    btnBrowse.setLayoutData(btnData);
    btnRefresh.setLayoutData(btnData);
    btnAdd.setLayoutData(btnData);
    btnRemove.setLayoutData(btnData);
    table = new Table(cmpTableBtn, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    String[] arrTableHeader = new String[] { Messages.getString("qa.preference.SpellPage.arrTableHeader1"), "", Messages.getString("qa.preference.SpellPage.arrTableHeader2") };
    int[] arrWidth = new int[] { 195, 40, 195 };
    for (int i = 0; i < arrTableHeader.length; i++) {
        int style = SWT.NONE;
        if (i == 1) {
            style = SWT.CENTER;
        }
        TableColumn col = new TableColumn(table, style);
        col.setText(arrTableHeader[i]);
        col.setWidth(arrWidth[i]);
    }
    GridData dataTable = new GridData(GridData.FILL_BOTH);
    dataTable.horizontalSpan = 2;
    table.setLayoutData(dataTable);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    initProperty();
    initListener();
    imageLabel.computeSize();
    aspellTabItem.setControl(groupParent);
}
Also used : Table(org.eclipse.swt.widgets.Table) Composite(org.eclipse.swt.widgets.Composite) LanguageLabelProvider(net.heartsome.cat.ts.ui.composite.LanguageLabelProvider) Label(org.eclipse.swt.widgets.Label) HsImageLabel(net.heartsome.cat.common.ui.HsImageLabel) Text(org.eclipse.swt.widgets.Text) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer) Point(org.eclipse.swt.graphics.Point) TableColumn(org.eclipse.swt.widgets.TableColumn) Point(org.eclipse.swt.graphics.Point) GridLayout(org.eclipse.swt.layout.GridLayout) HsImageLabel(net.heartsome.cat.common.ui.HsImageLabel) Button(org.eclipse.swt.widgets.Button) ComboViewer(org.eclipse.jface.viewers.ComboViewer) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer) GridData(org.eclipse.swt.layout.GridData) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) TableCombo(org.eclipse.nebula.widgets.tablecombo.TableCombo)

Example 5 with TableComboViewer

use of org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer in project translationstudio8 by heartsome.

the class AddTermToTBDialog method createDialogArea.

@Override
protected Control createDialogArea(Composite parent) {
    Composite tparent = (Composite) super.createDialogArea(parent);
    GridLayoutFactory.swtDefaults().extendedMargins(5, 5, 10, 0).numColumns(2).equalWidth(true).applyTo(tparent);
    GridData parentData = new GridData(GridData.FILL_BOTH);
    tparent.setLayoutData(parentData);
    Composite cmpTerm = new Composite(tparent, SWT.NONE);
    GridLayoutFactory.fillDefaults().numColumns(2).equalWidth(false).applyTo(cmpTerm);
    GridDataFactory.swtDefaults().applyTo(cmpTerm);
    Label lblSource = new Label(cmpTerm, SWT.NONE);
    lblSource.setText(Messages.getString("dialog.AddTermToTBDialog.lblSource"));
    GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lblSource);
    txtSrc = new Text(cmpTerm, SWT.BORDER);
    GridData txtData = new GridData();
    // 解决在 Windows 下文本框高度太小的问题
    txtData.widthHint = 290;
    txtSrc.setLayoutData(txtData);
    Label lblTarget = new Label(cmpTerm, SWT.NONE);
    lblTarget.setText(Messages.getString("dialog.AddTermToTBDialog.lblTarget"));
    GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lblTarget);
    txtTgt = new Text(cmpTerm, SWT.BORDER);
    txtTgt.setLayoutData(txtData);
    Composite cmpLang = new Composite(tparent, SWT.NONE);
    GridLayoutFactory.fillDefaults().numColumns(2).equalWidth(false).applyTo(cmpLang);
    GridDataFactory.fillDefaults().applyTo(cmpLang);
    Label lblSrcLang = new Label(cmpLang, SWT.NONE);
    lblSrcLang.setText(Messages.getString("dialog.AddTermToTBDialog.lblSrcLang"));
    GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lblSrcLang);
    cmbSrcLang = new TableComboViewer(cmpLang, SWT.READ_ONLY | SWT.BORDER);
    cmbSrcLang.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    cmbSrcLang.setContentProvider(new ArrayContentProvider());
    Label lblTgtLang = new Label(cmpLang, SWT.NONE);
    lblTgtLang.setText(Messages.getString("dialog.AddTermToTBDialog.lblTgtLang"));
    GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lblTgtLang);
    cmbTgtLang = new TableComboViewer(cmpLang, SWT.READ_ONLY | SWT.BORDER);
    cmbTgtLang.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    cmbTgtLang.setContentProvider(new ArrayContentProvider());
    Composite cmpProperty = new Composite(tparent, SWT.None);
    GridLayoutFactory.fillDefaults().numColumns(2).equalWidth(false).applyTo(cmpProperty);
    GridDataFactory.fillDefaults().span(2, 1).applyTo(cmpProperty);
    Label lblProperty = new Label(cmpProperty, SWT.None);
    lblProperty.setText(Messages.getString("dialog.AddTermToTBDialog.lblProperty"));
    GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).applyTo(lblProperty);
    txtProperty = new Text(cmpProperty, SWT.BORDER);
    txtProperty.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    initProperty();
    tparent.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    return tparent;
}
Also used : Composite(org.eclipse.swt.widgets.Composite) GridData(org.eclipse.swt.layout.GridData) Label(org.eclipse.swt.widgets.Label) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) Text(org.eclipse.swt.widgets.Text) TableComboViewer(org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer)

Aggregations

TableComboViewer (org.eclipse.nebula.jface.tablecomboviewer.TableComboViewer)7 Composite (org.eclipse.swt.widgets.Composite)7 GridData (org.eclipse.swt.layout.GridData)6 ArrayContentProvider (org.eclipse.jface.viewers.ArrayContentProvider)5 TableCombo (org.eclipse.nebula.widgets.tablecombo.TableCombo)5 GridLayout (org.eclipse.swt.layout.GridLayout)5 Label (org.eclipse.swt.widgets.Label)5 LanguageLabelProvider (net.heartsome.cat.ts.ui.composite.LanguageLabelProvider)4 Button (org.eclipse.swt.widgets.Button)4 Text (org.eclipse.swt.widgets.Text)4 Group (org.eclipse.swt.widgets.Group)3 Language (net.heartsome.cat.common.locale.Language)2 HsImageLabel (net.heartsome.cat.common.ui.HsImageLabel)2 ComboViewer (org.eclipse.jface.viewers.ComboViewer)2 Point (org.eclipse.swt.graphics.Point)2 IOException (java.io.IOException)1 ArrayList (java.util.ArrayList)1 ISelectionChangedListener (org.eclipse.jface.viewers.ISelectionChangedListener)1 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)1 LabelProvider (org.eclipse.jface.viewers.LabelProvider)1