Search in sources :

Example 46 with ColumnWeightData

use of org.eclipse.jface.viewers.ColumnWeightData in project yamcs-studio by yamcs.

the class SwitchProcessorDialog method createDialogArea.

@Override
protected Control createDialogArea(Composite parent) {
    Composite area = (Composite) super.createDialogArea(parent);
    Composite composite = new Composite(area, SWT.NONE);
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));
    composite.setLayout(new GridLayout());
    Composite tableWrapper = new Composite(composite, SWT.NONE);
    TableColumnLayout tcl = new TableColumnLayout();
    tableWrapper.setLayoutData(new GridData(GridData.FILL_BOTH));
    tableWrapper.setLayout(tcl);
    processorsTable = new TableViewer(tableWrapper, SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION);
    processorsTable.getTable().setHeaderVisible(true);
    processorsTable.getTable().setLinesVisible(true);
    TableViewerColumn instanceColumn = new TableViewerColumn(processorsTable, SWT.NONE);
    instanceColumn.getColumn().setText("Instance");
    instanceColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            ProcessorInfo info = (ProcessorInfo) element;
            return info.getInstance();
        }
    });
    tcl.setColumnData(instanceColumn.getColumn(), new ColumnPixelData(100));
    TableViewerColumn nameColumn = new TableViewerColumn(processorsTable, SWT.NONE);
    nameColumn.getColumn().setText("Processor");
    nameColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            ProcessorInfo info = (ProcessorInfo) element;
            return info.getName();
        }
    });
    tcl.setColumnData(nameColumn.getColumn(), new ColumnWeightData(100));
    TableViewerColumn typeColumn = new TableViewerColumn(processorsTable, SWT.NONE);
    typeColumn.getColumn().setText("Type");
    typeColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            ProcessorInfo info = (ProcessorInfo) element;
            return info.getType();
        }
    });
    tcl.setColumnData(typeColumn.getColumn(), new ColumnPixelData(100));
    processorsTable.setContentProvider(ArrayContentProvider.getInstance());
    processorsTable.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    processorsTable.setComparator(new ViewerComparator() {

        @Override
        public int compare(Viewer viewer, Object e1, Object e2) {
            if (e1 == null || e2 == null)
                return 0;
            ProcessorInfo p1 = (ProcessorInfo) e1;
            ProcessorInfo p2 = (ProcessorInfo) e2;
            int c = p1.getInstance().compareTo(p2.getInstance());
            return (c != 0) ? c : p1.getName().compareTo(p2.getName());
        }
    });
    ManagementCatalogue catalogue = ManagementCatalogue.getInstance();
    processorsTable.setInput(catalogue.getProcessors());
    return composite;
}
Also used : ColumnWeightData(org.eclipse.jface.viewers.ColumnWeightData) Composite(org.eclipse.swt.widgets.Composite) ProcessorInfo(org.yamcs.protobuf.YamcsManagement.ProcessorInfo) ViewerComparator(org.eclipse.jface.viewers.ViewerComparator) ColumnPixelData(org.eclipse.jface.viewers.ColumnPixelData) TableViewer(org.eclipse.jface.viewers.TableViewer) Viewer(org.eclipse.jface.viewers.Viewer) ManagementCatalogue(org.yamcs.studio.core.model.ManagementCatalogue) ColumnLabelProvider(org.eclipse.jface.viewers.ColumnLabelProvider) GridLayout(org.eclipse.swt.layout.GridLayout) TableColumnLayout(org.eclipse.jface.layout.TableColumnLayout) GridData(org.eclipse.swt.layout.GridData) TableViewer(org.eclipse.jface.viewers.TableViewer) TableViewerColumn(org.eclipse.jface.viewers.TableViewerColumn)

Example 47 with ColumnWeightData

use of org.eclipse.jface.viewers.ColumnWeightData in project yamcs-studio by yamcs.

the class ThemeColorBlock method createMasterPart.

@Override
protected void createMasterPart(IManagedForm managedForm, Composite parent) {
    FormToolkit tk = managedForm.getToolkit();
    Section section = tk.createSection(parent, Section.NO_TITLE);
    section.marginWidth = 10;
    section.marginHeight = 5;
    Composite client = tk.createComposite(section, SWT.WRAP);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.marginWidth = 2;
    layout.marginHeight = 2;
    client.setLayout(layout);
    Composite tableWrapper = tk.createComposite(client, SWT.NONE);
    tableWrapper.setLayoutData(new GridData(GridData.FILL_VERTICAL));
    TableColumnLayout tcl = new TableColumnLayout();
    tableWrapper.setLayout(tcl);
    Table t = tk.createTable(tableWrapper, SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);
    t.setHeaderVisible(false);
    t.setLinesVisible(false);
    tk.paintBordersFor(client);
    Composite buttonWrapper = tk.createComposite(client);
    buttonWrapper.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_CENTER));
    GridLayout gl = new GridLayout();
    gl.marginHeight = 0;
    gl.marginWidth = 0;
    buttonWrapper.setLayout(gl);
    Button b = tk.createButton(buttonWrapper, "Add", SWT.PUSH);
    GridData gd = new GridData(GridData.FILL_HORIZONTAL);
    b.setLayoutData(gd);
    b = tk.createButton(buttonWrapper, "Remove", SWT.PUSH);
    gd = new GridData(GridData.FILL_HORIZONTAL);
    b.setLayoutData(gd);
    b = tk.createButton(buttonWrapper, "Up", SWT.PUSH);
    b.setImage(upImage);
    b.setToolTipText("Move Up");
    gd = new GridData(GridData.FILL_HORIZONTAL);
    b.setLayoutData(gd);
    b = tk.createButton(buttonWrapper, "Down", SWT.PUSH);
    b.setImage(downImage);
    b.setToolTipText("Move Down");
    gd = new GridData(GridData.FILL_HORIZONTAL);
    b.setLayoutData(gd);
    section.setClient(client);
    SectionPart spart = new SectionPart(section);
    managedForm.addPart(spart);
    TableViewer viewer = new TableViewer(t);
    viewer.setContentProvider(ArrayContentProvider.getInstance());
    viewer.addSelectionChangedListener(evt -> {
        managedForm.fireSelectionChanged(spart, evt.getSelection());
    });
    TableViewerColumn colorColumn = new TableViewerColumn(viewer, SWT.NONE);
    colorColumn.setLabelProvider(new ColorLabelProvider() {

        @Override
        public Color getColor(Object element) {
            ThemeColor color = (ThemeColor) element;
            return colorMap.get(color.getRGB());
        }

        @Override
        public Color getBorderColor(Object element) {
            return parent.getDisplay().getSystemColor(SWT.COLOR_BLACK);
        }
    });
    tcl.setColumnData(colorColumn.getColumn(), new ColumnWeightData(50, 50, false));
    TableViewerColumn textColumn = new TableViewerColumn(viewer, SWT.NONE);
    textColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            ThemeColor color = (ThemeColor) element;
            return color.getLabel();
        }
    });
    tcl.setColumnData(textColumn.getColumn(), new ColumnWeightData(200, 200, true));
    viewer.setInput(def.getColors());
}
Also used : ColumnWeightData(org.eclipse.jface.viewers.ColumnWeightData) Table(org.eclipse.swt.widgets.Table) FormToolkit(org.eclipse.ui.forms.widgets.FormToolkit) Composite(org.eclipse.swt.widgets.Composite) Color(org.eclipse.swt.graphics.Color) Section(org.eclipse.ui.forms.widgets.Section) ColumnLabelProvider(org.eclipse.jface.viewers.ColumnLabelProvider) GridLayout(org.eclipse.swt.layout.GridLayout) SectionPart(org.eclipse.ui.forms.SectionPart) TableColumnLayout(org.eclipse.jface.layout.TableColumnLayout) Button(org.eclipse.swt.widgets.Button) GridData(org.eclipse.swt.layout.GridData) ColorLabelProvider(org.yamcs.studio.core.ui.utils.ColorLabelProvider) TableViewer(org.eclipse.jface.viewers.TableViewer) TableViewerColumn(org.eclipse.jface.viewers.TableViewerColumn)

Example 48 with ColumnWeightData

use of org.eclipse.jface.viewers.ColumnWeightData in project yamcs-studio by yamcs.

the class DataLinkTableViewer method addFixedColumns.

private void addFixedColumns(TableColumnLayout tcl) {
    TableViewerColumn nameColumn = new TableViewerColumn(this, SWT.LEFT);
    nameColumn.getColumn().setText(COL_NAME);
    tcl.setColumnData(nameColumn.getColumn(), new ColumnWeightData(18));
    TableViewerColumn typeColumn = new TableViewerColumn(this, SWT.LEFT);
    typeColumn.getColumn().setText(COL_TYPE);
    tcl.setColumnData(typeColumn.getColumn(), new ColumnWeightData(18));
    TableViewerColumn specColumn = new TableViewerColumn(this, SWT.LEFT);
    specColumn.getColumn().setText(COL_SPEC);
    tcl.setColumnData(specColumn.getColumn(), new ColumnWeightData(18));
    TableViewerColumn streamColumn = new TableViewerColumn(this, SWT.LEFT);
    streamColumn.getColumn().setText(COL_STREAM);
    tcl.setColumnData(streamColumn.getColumn(), new ColumnWeightData(18));
    TableViewerColumn statusColumn = new TableViewerColumn(this, SWT.CENTER);
    statusColumn.getColumn().setText(COL_STATUS);
    tcl.setColumnData(statusColumn.getColumn(), new ColumnWeightData(18));
    TableViewerColumn datacount = new TableViewerColumn(this, SWT.RIGHT);
    datacount.getColumn().setText(COL_DATACOUNT);
    tcl.setColumnData(datacount.getColumn(), new ColumnWeightData(10));
    // Common properties to all columns
    List<TableViewerColumn> columns = new ArrayList<>();
    columns.add(nameColumn);
    columns.add(typeColumn);
    columns.add(specColumn);
    columns.add(streamColumn);
    columns.add(statusColumn);
    columns.add(datacount);
    for (TableViewerColumn column : columns) {
        // prevent resize to 0
        column.getColumn().addControlListener(new ControlListener() {

            @Override
            public void controlMoved(ControlEvent e) {
            }

            @Override
            public void controlResized(ControlEvent e) {
                if (column.getColumn().getWidth() < 5)
                    column.getColumn().setWidth(5);
            }
        });
    }
}
Also used : ColumnWeightData(org.eclipse.jface.viewers.ColumnWeightData) ArrayList(java.util.ArrayList) ControlListener(org.eclipse.swt.events.ControlListener) ControlEvent(org.eclipse.swt.events.ControlEvent) TableViewerColumn(org.eclipse.jface.viewers.TableViewerColumn)

Aggregations

ColumnWeightData (org.eclipse.jface.viewers.ColumnWeightData)48 TableLayout (org.eclipse.jface.viewers.TableLayout)23 GridData (org.eclipse.swt.layout.GridData)23 Composite (org.eclipse.swt.widgets.Composite)20 TableColumn (org.eclipse.swt.widgets.TableColumn)20 Table (org.eclipse.swt.widgets.Table)17 TableViewer (org.eclipse.jface.viewers.TableViewer)15 TableViewerColumn (org.eclipse.jface.viewers.TableViewerColumn)14 GridLayout (org.eclipse.swt.layout.GridLayout)14 TableColumnLayout (org.eclipse.jface.layout.TableColumnLayout)10 SelectionEvent (org.eclipse.swt.events.SelectionEvent)10 ColumnLabelProvider (org.eclipse.jface.viewers.ColumnLabelProvider)9 ColumnPixelData (org.eclipse.jface.viewers.ColumnPixelData)8 Label (org.eclipse.swt.widgets.Label)7 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)6 Viewer (org.eclipse.jface.viewers.Viewer)6 ArrayList (java.util.ArrayList)5 ISelectionChangedListener (org.eclipse.jface.viewers.ISelectionChangedListener)5 TreeViewer (org.eclipse.jface.viewers.TreeViewer)5 BrokerEnvStatusColumn (com.cubrid.cubridmanager.ui.broker.editor.internal.BrokerEnvStatusColumn)4