Search in sources :

Example 61 with TableEditor

use of org.eclipse.swt.custom.TableEditor in project cubrid-manager by CUBRID.

the class PstmtDataDialog method createParameterTable.

protected void createParameterTable(Composite parent, boolean isMulti) {
    Composite composite = new Composite(parent, SWT.NONE);
    {
        GridLayout gridLayout = new GridLayout();
        gridLayout.numColumns = 2;
        composite.setLayout(gridLayout);
        GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
        composite.setLayoutData(gridData);
    }
    parameterTable = new Table(composite, SWT.BORDER | SWT.FULL_SELECTION);
    {
        GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
        gridData.heightHint = 100;
        parameterTable.setLayoutData(gridData);
        parameterTable.setHeaderVisible(true);
        parameterTable.setLinesVisible(true);
        TableColumn[] tblColumns = new TableColumn[3];
        tblColumns[0] = new TableColumn(parameterTable, SWT.NONE);
        tblColumns[0].setText(Messages.colParaName);
        tblColumns[0].setWidth(130);
        tblColumns[1] = new TableColumn(parameterTable, SWT.NONE);
        tblColumns[1].setText(Messages.colParaType);
        tblColumns[1].setWidth(110);
        tblColumns[2] = new TableColumn(parameterTable, SWT.NONE);
        tblColumns[2].setWidth(130);
        if (isMulti) {
            tblColumns[2].setText(Messages.colFileColumn);
        } else {
            tblColumns[2].setText(Messages.colParaValue);
        }
        tableEditor = new TableEditor(parameterTable);
        tableEditor.horizontalAlignment = SWT.LEFT;
        tableEditor.grabHorizontal = true;
        parameterTable.addListener(SWT.MouseUp, new Listener() {

            public void handleEvent(Event event) {
                if (event.button != 1) {
                    return;
                }
                handle(event);
            }
        });
    }
    Button clearButton = new Button(composite, SWT.NONE);
    {
        GridData gridData = new GridData();
        gridData.verticalAlignment = SWT.TOP;
        clearButton.setLayoutData(gridData);
        if (isMulti) {
            clearButton.setText(Messages.btnClearColumn);
        } else {
            clearButton.setText(Messages.btnClearValue);
        }
        clearButton.addSelectionListener(new SelectionAdapter() {

            public void widgetSelected(SelectionEvent event) {
                for (int i = 0; i < parameterTable.getItemCount(); i++) {
                    parameterTable.getItem(i).setText(2, "");
                }
                getButton(IDialogConstants.OK_ID).setEnabled(false);
            }
        });
    }
}
Also used : GridLayout(org.eclipse.swt.layout.GridLayout) Table(org.eclipse.swt.widgets.Table) Listener(org.eclipse.swt.widgets.Listener) TraverseListener(org.eclipse.swt.events.TraverseListener) ModifyListener(org.eclipse.swt.events.ModifyListener) Composite(org.eclipse.swt.widgets.Composite) Button(org.eclipse.swt.widgets.Button) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) GridData(org.eclipse.swt.layout.GridData) SelectionEvent(org.eclipse.swt.events.SelectionEvent) FocusEvent(org.eclipse.swt.events.FocusEvent) Event(org.eclipse.swt.widgets.Event) TraverseEvent(org.eclipse.swt.events.TraverseEvent) ModifyEvent(org.eclipse.swt.events.ModifyEvent) SelectionEvent(org.eclipse.swt.events.SelectionEvent) TableColumn(org.eclipse.swt.widgets.TableColumn) TableEditor(org.eclipse.swt.custom.TableEditor) Point(org.eclipse.swt.graphics.Point)

Example 62 with TableEditor

use of org.eclipse.swt.custom.TableEditor in project cubrid-manager by CUBRID.

the class FavoriteQueryNavigatorView method createTableGroup.

private void createTableGroup(Composite composite) {
    final String[] columnNames = new String[] { "", com.cubrid.common.ui.query.Messages.msgBatchRunSqlFile, com.cubrid.common.ui.query.Messages.msgBatchRunMemo, com.cubrid.common.ui.query.Messages.msgBatchRunRegdate };
    tv = CommonUITool.createCommonTableViewer(composite, null, columnNames, CommonUITool.createGridData(GridData.FILL_BOTH, 3, 1, -1, 200));
    tv.setInput(FavoriteQueryPersistUtil.getInstance().getListData());
    {
        TableLayout tableLayout = new TableLayout();
        tableLayout.addColumnData(new ColumnPixelData(0));
        tableLayout.addColumnData(new ColumnPixelData(209));
        tableLayout.addColumnData(new ColumnPixelData(80));
        tableLayout.addColumnData(new ColumnPixelData(118));
        tv.getTable().setLayout(tableLayout);
    }
    editor = new TableEditor(tv.getTable());
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;
    tv.getTable().addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            widgetDefaultSelected(e);
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            updateButtonStatus();
        }
    });
    tv.getTable().addListener(SWT.MouseUp, new Listener() {

        public void handleEvent(Event event) {
            if (event.button != 1) {
                return;
            }
            updateButtonStatus();
            Point pt = new Point(event.x, event.y);
            int newIndex = tv.getTable().getSelectionIndex();
            if (tv.getTable().getItemCount() <= newIndex || newIndex < 0) {
                return;
            }
            final TableItem item = tv.getTable().getItem(newIndex);
            if (item == null) {
                return;
            }
            Rectangle rect = item.getBounds(2);
            if (rect.contains(pt)) {
                focusCell(item, newIndex, 2);
            }
        }
    });
    tv.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            openSelectedFile(selection);
        }
    });
    createContextMenu();
}
Also used : IDoubleClickListener(org.eclipse.jface.viewers.IDoubleClickListener) TraverseListener(org.eclipse.swt.events.TraverseListener) MenuListener(org.eclipse.swt.events.MenuListener) SelectionListener(org.eclipse.swt.events.SelectionListener) Listener(org.eclipse.swt.widgets.Listener) TableItem(org.eclipse.swt.widgets.TableItem) ColumnPixelData(org.eclipse.jface.viewers.ColumnPixelData) Rectangle(org.eclipse.swt.graphics.Rectangle) DoubleClickEvent(org.eclipse.jface.viewers.DoubleClickEvent) Point(org.eclipse.swt.graphics.Point) TableEditor(org.eclipse.swt.custom.TableEditor) IDoubleClickListener(org.eclipse.jface.viewers.IDoubleClickListener) SelectionEvent(org.eclipse.swt.events.SelectionEvent) ISelection(org.eclipse.jface.viewers.ISelection) MenuEvent(org.eclipse.swt.events.MenuEvent) TraverseEvent(org.eclipse.swt.events.TraverseEvent) Event(org.eclipse.swt.widgets.Event) DoubleClickEvent(org.eclipse.jface.viewers.DoubleClickEvent) SelectionEvent(org.eclipse.swt.events.SelectionEvent) TableLayout(org.eclipse.jface.viewers.TableLayout) SelectionListener(org.eclipse.swt.events.SelectionListener)

Example 63 with TableEditor

use of org.eclipse.swt.custom.TableEditor in project cubrid-manager by CUBRID.

the class SchemaInfoEditorPart method setTableEditor.

/**
	 * 
	 * Set table editor
	 * 
	 * @param table Table
	 * @param columnIndex index
	 */
private void setTableEditor(final Table table, final int columnIndex) {
    final TableEditor editor = new TableEditor(table);
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;
    table.addListener(SWT.MouseUp, new Listener() {

        public void handleEvent(Event event) {
            if (event.button != 1) {
                return;
            }
            Point pt = new Point(event.x, event.y);
            int topIndex = table.getTopIndex();
            int selectedIndex = table.getSelectionIndex();
            if (selectedIndex < 0 || topIndex > selectedIndex) {
                return;
            }
            final TableItem item = table.getItem(selectedIndex);
            if (item == null) {
                return;
            }
            Rectangle rect = item.getBounds(columnIndex);
            if (rect.contains(pt)) {
                Control oldEditor = editor.getEditor();
                if (oldEditor != null) {
                    oldEditor.dispose();
                }
                final StyledText newEditor = new StyledText(table, SWT.READ_ONLY);
                newEditor.addListener(SWT.FocusOut, new Listener() {

                    public void handleEvent(final Event event) {
                        if (event.type == SWT.FocusOut) {
                            newEditor.dispose();
                        }
                    }
                });
                com.cubrid.common.ui.spi.util.CommonUITool.registerContextMenu(newEditor, false);
                newEditor.setText(item.getText(columnIndex));
                newEditor.selectAll();
                newEditor.setFocus();
                editor.setEditor(newEditor, item, columnIndex);
            }
        }
    });
}
Also used : Control(org.eclipse.swt.widgets.Control) IMenuListener(org.eclipse.jface.action.IMenuListener) Listener(org.eclipse.swt.widgets.Listener) StyledText(org.eclipse.swt.custom.StyledText) TableItem(org.eclipse.swt.widgets.TableItem) Rectangle(org.eclipse.swt.graphics.Rectangle) CubridNodeChangedEvent(com.cubrid.common.ui.spi.event.CubridNodeChangedEvent) Event(org.eclipse.swt.widgets.Event) Point(org.eclipse.swt.graphics.Point) TableEditor(org.eclipse.swt.custom.TableEditor)

Example 64 with TableEditor

use of org.eclipse.swt.custom.TableEditor in project cubrid-manager by CUBRID.

the class JdbcOptionComposite method createJdbcTableGroup.

/**
	 *
	 * Create JDBC table group
	 *
	 * @param composite the composite
	 */
private void createJdbcTableGroup(Composite composite) {
    final String[] columnNameArr = new String[] { Messages.tblColJdbcAttrName, Messages.tblColJdbcAttrValue };
    jdbcInfoTv = CommonUITool.createCommonTableViewer(composite, null, columnNameArr, CommonUITool.createGridData(GridData.FILL_BOTH, 3, 1, -1, 150));
    jdbcInfoTv.setInput(jdbcListData);
    TableLayout tableLayout = new TableLayout();
    jdbcInfoTv.getTable().setLayout(tableLayout);
    tableLayout.addColumnData(new ColumnWeightData(35, true));
    tableLayout.addColumnData(new ColumnWeightData(65, true));
    editor = new TableEditor(jdbcInfoTv.getTable());
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;
    jdbcInfoTv.getTable().addListener(SWT.MouseUp, new Listener() {

        public void handleEvent(Event event) {
            if (event.button != 1) {
                return;
            }
            Point pt = new Point(event.x, event.y);
            int newIndex = jdbcInfoTv.getTable().getSelectionIndex();
            if (jdbcInfoTv.getTable().getItemCount() <= newIndex || newIndex < 0) {
                return;
            }
            final TableItem item = jdbcInfoTv.getTable().getItem(newIndex);
            if (item == null) {
                return;
            }
            for (int i = 0; i < 2; i++) {
                Rectangle rect = item.getBounds(i);
                if (rect.contains(pt)) {
                    focusCell(item, newIndex, i);
                    break;
                }
            }
        }
    });
}
Also used : ColumnWeightData(org.eclipse.jface.viewers.ColumnWeightData) Listener(org.eclipse.swt.widgets.Listener) TraverseListener(org.eclipse.swt.events.TraverseListener) MouseListener(org.eclipse.swt.events.MouseListener) TableItem(org.eclipse.swt.widgets.TableItem) Rectangle(org.eclipse.swt.graphics.Rectangle) Event(org.eclipse.swt.widgets.Event) TraverseEvent(org.eclipse.swt.events.TraverseEvent) MouseEvent(org.eclipse.swt.events.MouseEvent) SelectionEvent(org.eclipse.swt.events.SelectionEvent) Point(org.eclipse.swt.graphics.Point) TableLayout(org.eclipse.jface.viewers.TableLayout) TableEditor(org.eclipse.swt.custom.TableEditor)

Example 65 with TableEditor

use of org.eclipse.swt.custom.TableEditor in project tdi-studio-se by Talend.

the class PromptDefaultValueDialog method createTextEditor.

private void createTextEditor(TableItem item, int column, String displayText) {
    TableEditor editor = new TableEditor(table);
    final Text text = new Text(table, SWT.NONE);
    text.setText(displayText);
    editor.setEditor(text, item, column);
    editor.grabHorizontal = true;
    editor.layout();
    editors.add(editor);
}
Also used : Text(org.eclipse.swt.widgets.Text) TableEditor(org.eclipse.swt.custom.TableEditor)

Aggregations

TableEditor (org.eclipse.swt.custom.TableEditor)105 TableItem (org.eclipse.swt.widgets.TableItem)55 GridData (org.eclipse.swt.layout.GridData)46 Button (org.eclipse.swt.widgets.Button)37 Table (org.eclipse.swt.widgets.Table)37 Text (org.eclipse.swt.widgets.Text)37 Point (org.eclipse.swt.graphics.Point)34 GridLayout (org.eclipse.swt.layout.GridLayout)33 SelectionEvent (org.eclipse.swt.events.SelectionEvent)28 Label (org.eclipse.swt.widgets.Label)27 TableColumn (org.eclipse.swt.widgets.TableColumn)27 Composite (org.eclipse.swt.widgets.Composite)26 Control (org.eclipse.swt.widgets.Control)20 SWT (org.eclipse.swt.SWT)19 CCombo (org.eclipse.swt.custom.CCombo)19 Rectangle (org.eclipse.swt.graphics.Rectangle)18 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)17 FocusEvent (org.eclipse.swt.events.FocusEvent)15 Event (org.eclipse.swt.widgets.Event)14 Group (org.eclipse.swt.widgets.Group)14