Search in sources :

Example 21 with TableColumn

use of org.eclipse.swt.widgets.TableColumn in project translationstudio8 by heartsome.

the class JavaPropertiesViewerDialog method createTableViewer.

private void createTableViewer(Composite tparent) {
    tableViewer = new TableViewer(tparent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER);
    table = tableViewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(table);
    String[] columnNames = new String[] { Messages.getString("dialog.JavaPropertiesViewerDialog.columnNames1"), Messages.getString("dialog.JavaPropertiesViewerDialog.columnNames2") };
    int[] columnAlignments = new int[] { SWT.LEFT, SWT.LEFT };
    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tableColumn = new TableColumn(table, columnAlignments[i]);
        tableColumn.setText(columnNames[i]);
        tableColumn.setWidth(50);
    }
    tableViewer.setLabelProvider(new TableViewerLabelProvider());
    tableViewer.setContentProvider(new ArrayContentProvider());
    // 让列表列宽动态变化
    table.addListener(SWT.Resize, new Listener() {

        public void handleEvent(Event event) {
            final Table table = ((Table) event.widget);
            final TableColumn[] columns = table.getColumns();
            event.widget.getDisplay().syncExec(new Runnable() {

                public void run() {
                    double[] columnWidths = new double[] { 0.48, 0.48 };
                    for (int i = 0; i < columns.length; i++) columns[i].setWidth((int) (table.getBounds().width * columnWidths[i]));
                }
            });
        }
    });
}
Also used : Listener(org.eclipse.swt.widgets.Listener) SelectionListener(org.eclipse.swt.events.SelectionListener) Table(org.eclipse.swt.widgets.Table) TableColumn(org.eclipse.swt.widgets.TableColumn) TableViewerLabelProvider(net.heartsome.cat.ts.ui.plugin.TableViewerLabelProvider) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) Event(org.eclipse.swt.widgets.Event) SelectionEvent(org.eclipse.swt.events.SelectionEvent) TableViewer(org.eclipse.jface.viewers.TableViewer)

Example 22 with TableColumn

use of org.eclipse.swt.widgets.TableColumn in project translationstudio8 by heartsome.

the class CSV2TMXConverterDialog method removeColumn.

/**
	 * 删除列 ;
	 */
private void removeColumn() {
    if (cols < 2) {
        MessageDialog.openInformation(getShell(), Messages.getString("dialog.CSV2TMXConverterDialog.msgTitle"), Messages.getString("dialog.CSV2TMXConverterDialog.msg2"));
        return;
    }
    Vector<String> columns = new Vector<String>();
    int count = table.getColumnCount();
    for (int i = 0; i < count; i++) {
        columns.add(table.getColumn(i).getText());
    }
    ColumnRemoveDialog removeDialog = new ColumnRemoveDialog(getShell(), columns, imagePath);
    if (removeDialog.open() == IDialogConstants.OK_ID) {
        Vector<String> columnVector = removeDialog.getColumnVector();
        if (columnVector.size() == columns.size()) {
            return;
        }
        for (int i = 0; i < count; i++) {
            TableColumn col = table.getColumn(i);
            boolean found = false;
            for (int j = 0; j < columnVector.size(); j++) {
                if (col.getText().equals(columnVector.get(j))) {
                    found = true;
                    break;
                }
            }
            if (!found) {
                table.getColumn(i).dispose();
                count--;
                i--;
            }
        }
        cols = table.getColumnCount();
        lblColCount.setText(MessageFormat.format(Messages.getString("dialog.CSV2TMXConverterDialog.lblColCount"), //$NON-NLS-1$
        cols));
        int width = (table.getClientArea().width - table.getBorderWidth() * 2 - table.getVerticalBar().getSize().x) / cols;
        if (width < 100) {
            width = 100;
        }
        for (int i = 0; i < cols; i++) {
            TableColumn column = table.getColumn(i);
            column.setWidth(width);
        }
    }
}
Also used : Vector(java.util.Vector) TableColumn(org.eclipse.swt.widgets.TableColumn)

Example 23 with TableColumn

use of org.eclipse.swt.widgets.TableColumn in project translationstudio8 by heartsome.

the class TBXMakerDialog method setColumnType.

/**
	 * 设置列属性 ;
	 */
private void setColumnType() {
    if (cols < 2) {
        MessageDialog.openInformation(getShell(), Messages.getString("dialog.TBXMakerDialog.msgTitle"), Messages.getString("dialog.TBXMakerDialog.msg2"));
        return;
    }
    Vector<ColProperties> colTypes = new Vector<ColProperties>(cols);
    for (int i = 0; i < cols; i++) {
        colTypes.add((ColProperties) table.getColumn(i).getData());
    }
    ColumnTypeDialog selector = new ColumnTypeDialog(getShell(), colTypes, template, imagePath);
    if (selector.open() == IDialogConstants.OK_ID) {
        for (int i = 0; i < cols; i++) {
            TableColumn col = table.getColumn(i);
            ColProperties type = colTypes.get(i);
            if (!type.getColName().equals("") && !type.getLanguage().equals("")) {
                //$NON-NLS-1$ //$NON-NLS-2$
                col.setText(type.getColName());
            }
        }
    }
}
Also used : Vector(java.util.Vector) TableColumn(org.eclipse.swt.widgets.TableColumn) ColProperties(net.heartsome.cat.ts.ui.plugin.ColProperties)

Example 24 with TableColumn

use of org.eclipse.swt.widgets.TableColumn in project translationstudio8 by heartsome.

the class BatchQADialog method createFileDataGroup.

/**
	 * @param parent
	 */
public void createFileDataGroup(Composite parent) {
    Composite parentCmp = new Composite(parent, SWT.NONE);
    GridLayoutFactory.fillDefaults().extendedMargins(9, 9, 0, 0).numColumns(1).applyTo(parentCmp);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(parentCmp);
    tableViewer = new TableViewer(parentCmp, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION);
    final Table table = tableViewer.getTable();
    GridData tableData = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    tableData.heightHint = 50;
    table.setLayoutData(tableData);
    table.setLinesVisible(true);
    table.setHeaderVisible(true);
    String[] columnNames = new String[] { Messages.getString("qa.all.dialog.index"), Messages.getString("qa.dialogs.BatchQADialog.name2") };
    int[] columnAlignments = new int[] { SWT.LEFT, SWT.LEFT };
    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tableColumn = new TableColumn(table, columnAlignments[i]);
        tableColumn.setText(columnNames[i]);
        tableColumn.setWidth(50);
    }
    tableViewer.setLabelProvider(new TableViewerLabelProvider());
    tableViewer.setContentProvider(new ArrayContentProvider());
    tableViewer.setInput(getQATableInfo());
    // 让列表列宽动态变化
    table.addListener(SWT.Resize, new Listener() {

        public void handleEvent(Event event) {
            final Table table = ((Table) event.widget);
            final TableColumn[] columns = table.getColumns();
            event.widget.getDisplay().syncExec(new Runnable() {

                public void run() {
                    double[] columnWidths = new double[] { 0.1, 0.8 };
                    for (int i = 0; i < columns.length; i++) columns[i].setWidth((int) (table.getBounds().width * columnWidths[i]));
                }
            });
        }
    });
    //如果是合并打开的文件,那么创建一个 LABLE 进行提示
    if (isMultiFile) {
        Label remarkLbl = new Label(parentCmp, SWT.WRAP);
        remarkLbl.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        remarkLbl.setText(Messages.getString("qa.dialogs.BatchQADialog.tip1"));
    }
}
Also used : Table(org.eclipse.swt.widgets.Table) Listener(org.eclipse.swt.widgets.Listener) SelectionListener(org.eclipse.swt.events.SelectionListener) Composite(org.eclipse.swt.widgets.Composite) Label(org.eclipse.swt.widgets.Label) TableColumn(org.eclipse.swt.widgets.TableColumn) GridData(org.eclipse.swt.layout.GridData) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) Event(org.eclipse.swt.widgets.Event) SelectionEvent(org.eclipse.swt.events.SelectionEvent) TableViewer(org.eclipse.jface.viewers.TableViewer)

Example 25 with TableColumn

use of org.eclipse.swt.widgets.TableColumn 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)

Aggregations

TableColumn (org.eclipse.swt.widgets.TableColumn)200 Table (org.eclipse.swt.widgets.Table)100 TableViewer (org.eclipse.jface.viewers.TableViewer)87 GridData (org.eclipse.swt.layout.GridData)80 SelectionEvent (org.eclipse.swt.events.SelectionEvent)72 Composite (org.eclipse.swt.widgets.Composite)71 GridLayout (org.eclipse.swt.layout.GridLayout)56 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)51 Label (org.eclipse.swt.widgets.Label)39 Button (org.eclipse.swt.widgets.Button)32 TableItem (org.eclipse.swt.widgets.TableItem)31 TableViewerColumn (org.eclipse.jface.viewers.TableViewerColumn)26 Event (org.eclipse.swt.widgets.Event)23 Listener (org.eclipse.swt.widgets.Listener)23 Point (org.eclipse.swt.graphics.Point)21 ArrayContentProvider (org.eclipse.jface.viewers.ArrayContentProvider)20 TableLayout (org.eclipse.jface.viewers.TableLayout)19 SelectionListener (org.eclipse.swt.events.SelectionListener)18 Group (org.eclipse.swt.widgets.Group)15 ColumnWeightData (org.eclipse.jface.viewers.ColumnWeightData)14