Example usage for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn

List of usage examples for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn.

Prototype

public TableViewerColumn(TableViewer viewer, int style, int index) 

Source Link

Document

Creates a new viewer column for the given TableViewer on a new TableColumn with the given style bits.

Usage

From source file:alma.acs.eventbrowser.parts.ArchivingListPart.java

License:Open Source License

@PostConstruct
public void postConstruct(Composite parent, IEventBroker eventBroker) {
    try {/*  ww  w  . j  a  v a2 s. c  o  m*/
        em = EventModel.getInstance();
    } catch (Throwable thr) {
        thr.printStackTrace();
        IStatus someStatus = statusReporter.newStatus(IStatus.ERROR, "Connection with NCs failed.", thr);
        statusReporter.report(someStatus, StatusReporter.SHOW);
        throw new RuntimeException(thr);
    }

    logger = em.getLogger();

    GridLayout gridLayout = new GridLayout();
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    gridLayout.verticalSpacing = 0;
    parent.setLayout(gridLayout);

    //      buildCustomToolBar(parent);

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    /*
     * "Time "+timeStamp+" "+m_channelName+" "+component+" "+count+"
     * "+channelEventCount+" " +" "+evtTypeName+"
     * "+evtCounter.get(evtTypeName)
     */

    TableViewerColumn tvcol = new TableViewerColumn(viewer, SWT.NONE, 0);
    tvcol.setLabelProvider(new TimeStampLabelProvider());
    TableColumn col = tvcol.getColumn();
    col.setText("Timestamp");
    col.setWidth(190);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 1);
    tvcol.setLabelProvider(new EventSourceLabelProvider());
    col = tvcol.getColumn();
    col.setText("Device");
    col.setWidth(100);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 2);
    tvcol.setLabelProvider(new BaciParameterLabelProvider());
    col = tvcol.getColumn();
    col.setText("Property");
    col.setWidth(100);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 3);
    tvcol.setLabelProvider(new BaciPropertyValueLabelProvider());
    col = tvcol.getColumn();
    col.setText("Value");
    col.setWidth(100);
    col.setAlignment(SWT.LEFT);

    GridDataFactory.fillDefaults().grab(true, true).applyTo(viewer.getTable());

    viewer.setContentProvider(new ArchivingListContentProvider(em));
    viewer.setInput(new Object());

    pel = new PopulateEventList(logger, viewer, new StatusLineWriter(eventBroker), em.getArchQueue(),
            "Monitor points");

    eventListThread = pel.getThreadForEventList();
    eventListThread.start();
}

From source file:alma.acs.eventbrowser.parts.EventDetailPart.java

License:Open Source License

@PostConstruct
public void createPartControl(Composite parent, EMenuService menuService) {
    try {//from ww w.ja va  2s.  c o  m
        em = EventModel.getInstance();
    } catch (Throwable thr) {
        thr.printStackTrace();
        IStatus someStatus = statusReporter.newStatus(IStatus.ERROR, "Connection with NCs failed.", thr);
        statusReporter.report(someStatus, StatusReporter.SHOW);
        throw new RuntimeException(thr);
    }
    logger = em.getLogger();

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);

    Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    GridLayout gridLayout = new GridLayout();
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    gridLayout.verticalSpacing = 0;
    parent.setLayout(gridLayout);

    TableViewerColumn tvcol = new TableViewerColumn(viewer, SWT.NONE, 0);
    tvcol.setLabelProvider(new DetailNameLabelProvider());
    TableColumn col = tvcol.getColumn();
    col.setText("Name");
    col.setWidth(200);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 1);
    tvcol.setLabelProvider(new DetailTypeLabelProvider());
    col = tvcol.getColumn();
    col.setText("Type");
    col.setWidth(100);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 2);
    tvcol.setLabelProvider(new DetailValueLabelProvider());
    col = tvcol.getColumn();
    col.setText("Value");
    col.setWidth(200);
    col.setAlignment(SWT.LEFT);

    GridDataFactory.fillDefaults().grab(true, true).applyTo(viewer.getTable());

    viewer.setContentProvider(new DetailContentProvider());

    hookContextMenu(menuService);

    // Attach a selection listener to our table, which will post selections to the ESelectionService
    // to be processed by CopyDetailsToClipboardHandler
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();

            List<ParsedAnyData> parsedAnyList = new ArrayList<ParsedAnyData>();
            for (Iterator<?> iterator = selection.iterator(); iterator.hasNext();) {
                ParsedAnyData parsedAny = (ParsedAnyData) iterator.next();
                parsedAnyList.add(parsedAny);
            }
            selectionService.setSelection(parsedAnyList.toArray(new ParsedAnyData[0]));
        }
    });
}

From source file:alma.acs.eventbrowser.parts.EventListPart.java

License:Open Source License

/**
 *///from  w w w .  j  a  va  2  s .  co m
@PostConstruct
public void postConstruct(Composite parent, final IEclipseContext context, IEventBroker eventBroker,
        EMenuService menuService) {
    try {
        em = EventModel.getInstance();
    } catch (Throwable thr) {
        thr.printStackTrace();
        IStatus someStatus = statusReporter.newStatus(IStatus.ERROR, "Connection with NCs failed.", thr);
        statusReporter.report(someStatus, StatusReporter.SHOW);
        throw new RuntimeException(thr);
    }

    logger = em.getLogger();

    GridLayout gridLayout = new GridLayout();
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    gridLayout.verticalSpacing = 0;
    parent.setLayout(gridLayout);

    // TODO: We currently have the filter text control in the regular view toolbar.
    //       The e3 eventGUI had a "custom tool bar" inserted here.
    //       We should decide which way it's better.

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    /*
     * "Time "+timeStamp+" "+m_channelName+" "+component+" "+count+"
     * "+channelEventCount+" " +" "+evtTypeName+"
     * "+evtCounter.get(evtTypeName)
     */

    TableViewerColumn tvcol = new TableViewerColumn(viewer, SWT.NONE, 0);
    tvcol.setLabelProvider(new TimeStampLabelProvider());
    TableColumn col = tvcol.getColumn();
    col.setText("Timestamp");
    col.setWidth(180);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 1);
    tvcol.setLabelProvider(new EventSourceLabelProvider());
    col = tvcol.getColumn();
    col.setText("Event source");
    col.setWidth(150);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 2);
    tvcol.setLabelProvider(new CountLabelProvider());
    col = tvcol.getColumn();
    col.setText("# Events in channel");
    col.setWidth(50);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 3);
    tvcol.setLabelProvider(new EventTypeLabelProvider());
    col = tvcol.getColumn();
    col.setText("Event type");
    col.setWidth(150);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 4);
    tvcol.setLabelProvider(new EventTypeCountLabelProvider());
    col = tvcol.getColumn();
    col.setText("# Events this type");
    col.setWidth(50);
    col.setAlignment(SWT.LEFT);

    GridDataFactory.fillDefaults().grab(true, true).applyTo(viewer.getTable());

    viewer.setContentProvider(new EventListViewContentProvider(em));

    // Attach a selection listener to our event list that will post the selected event for the event details list
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            if (selection.size() == 1) {
                selectionService.setSelection(selection.getFirstElement());
            }
        }
    });

    viewer.setInput(new Object());

    hookContextMenu(menuService);

    pel = new PopulateEventList(logger, viewer, new StatusLineWriter(eventBroker), em.getEventQueue(),
            "NC Events");
    eventListThread = pel.getThreadForEventList();
    eventListThread.start();
}

From source file:alma.acs.eventbrowser.parts.ServiceSummaryPart.java

License:Open Source License

@PostConstruct
public void createComposite(Composite parent, EMenuService menuService) {
    try {/*from   w  ww.  ja v  a  2  s  . c  o m*/
        eventModel = EventModel.getInstance();
    } catch (Throwable thr) {
        thr.printStackTrace();
        IStatus someStatus = statusReporter.newStatus(IStatus.ERROR, "Connection with NCs failed.", thr);
        statusReporter.report(someStatus, StatusReporter.SHOW);
        throw new RuntimeException(thr);
    }

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);

    Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    TableViewerColumn tvcol = new TableViewerColumn(viewer, SWT.NONE, 0);
    tvcol.setLabelProvider(new ServiceNameLabelProvider());
    TableColumn col = tvcol.getColumn();
    col.setText("Notify Service");
    col.setWidth(110);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 1);
    tvcol.setLabelProvider(new NumConsumersLabelProvider());
    col = tvcol.getColumn();
    col.setText("#consumers");
    col.setWidth(50);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(viewer, SWT.NONE, 2);
    tvcol.setLabelProvider(new NumSuppliersLabelProvider());
    col = tvcol.getColumn();
    col.setText("#suppliers");
    col.setWidth(50);
    col.setAlignment(SWT.LEFT);

    viewer.setContentProvider(new ViewContentProvider());
    viewer.setComparator(new ServiceViewerComparator());
    viewer.setInput(new Object()); //was: getViewSite() -- the dummy arg seems to become the input arg for ViewContentProvider#getElements(Object)

    hookContextMenu(menuService);

}

From source file:alma.acs.eventbrowser.views.EventDetailTestHarness.java

License:Open Source License

public EventDetailTestHarness(Shell shell) {
    final TableViewer v = new TableViewer(shell, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);

    viewer = v;//from  www . j a va  2  s .co m

    Table table = v.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    GridLayout gridLayout = new GridLayout();
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    gridLayout.verticalSpacing = 0;
    shell.setLayout(gridLayout);

    TableViewerColumn tvcol = new TableViewerColumn(v, SWT.NONE, 0);
    tvcol.setLabelProvider(new DetailNameLabelProvider());
    TableColumn col = tvcol.getColumn();
    col.setText("Name");
    col.setWidth(180);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(v, SWT.NONE, 1);
    tvcol.setLabelProvider(new DetailTypeLabelProvider());
    col = tvcol.getColumn();
    col.setText("Type");
    col.setWidth(100);
    col.setAlignment(SWT.LEFT);

    tvcol = new TableViewerColumn(v, SWT.NONE, 2);
    tvcol.setLabelProvider(new DetailValueLabelProvider());
    col = tvcol.getColumn();
    col.setText("Value");
    col.setWidth(50);
    col.setAlignment(SWT.LEFT);

    GridDataFactory.fillDefaults().grab(true, true).applyTo(v.getTable());

    v.setContentProvider(new MyContentProvider());
    ParsedAnyData[] model = createModel();
    v.setInput(model);
    v.getTable().setLinesVisible(true);

    Menu popUpMenu = new Menu(shell, SWT.POP_UP);
    viewer.getControl().setMenu(popUpMenu);
    MenuItem copyItem = new MenuItem(popUpMenu, SWT.PUSH);
    copyItem.setText("Copy");
    cb = new Clipboard(Display.getDefault());
    copyItem.addSelectionListener(new SelectionListener() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            copySelection();

        }

        @SuppressWarnings("unchecked")
        private void copySelection() {
            List<ParsedAnyData> personList = new ArrayList<ParsedAnyData>();
            ISelection selection = viewer.getSelection();
            if (selection != null && selection instanceof IStructuredSelection) {
                IStructuredSelection sel = (IStructuredSelection) selection;
                for (Iterator iterator = sel.iterator(); iterator.hasNext();) {
                    ParsedAnyData person = (ParsedAnyData) iterator.next();
                    personList.add(person);
                }
            } else
                return;
            StringBuilder sb = new StringBuilder();
            for (ParsedAnyData person : personList) {
                sb.append(parsedAnyDataToString(person));
            }
            TextTransfer textTransfer = TextTransfer.getInstance();
            cb.setContents(new Object[] { sb.toString() }, new Transfer[] { textTransfer });
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        private String parsedAnyDataToString(ParsedAnyData person) {
            return person.getName() + "\t" + person.getType() + "\t" + person.getValue()
                    + System.getProperty("line.separator");
        }
    });
}

From source file:cc.warlock.rcp.prefs.MacrosPreferencePage.java

License:Open Source License

@Override
protected Control createContents(Composite parent) {

    createProfileDropDown(parent);/*from  w  w w .  ja va  2  s.c o m*/

    Composite main = new Composite(parent, SWT.NONE);
    main.setLayout(new GridLayout(2, false));

    Composite filterComposite = new Composite(main, SWT.NONE);
    GridLayout layout = new GridLayout(3, false);
    layout.marginWidth = layout.marginHeight = 0;
    filterComposite.setLayout(layout);
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, false);
    //      data.horizontalSpan = 2;
    filterComposite.setLayoutData(data);

    new Label(filterComposite, SWT.NONE).setText("Filter: ");

    filterBook = new PageBook(filterComposite, SWT.NONE);
    filterBook.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    commandText = new Text(filterBook, SWT.BORDER);
    commandText.addModifyListener(new ModifyListener() {
        public void modifyText(ModifyEvent e) {
            macroTableView.refresh();
        }
    });

    keyComboText = new KeyStrokeText(filterBook, SWT.BORDER);
    keyComboText.addKeyStrokeLockListener(new KeyStrokeLockListener() {
        public void keyStrokeLocked() {
            macroTableView.refresh();
        }

        public void keyStrokeUnlocked() {
            macroTableView.refresh();
        }
    });

    filterBook.showPage(commandText);

    Button filterButton = new Button(filterComposite, SWT.ARROW | SWT.DOWN);
    filterMenu = new Menu(filterButton);
    filterButton.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event event) {
            filterMenu.setVisible(true);
        }
    });

    MenuItem filterByCommand = new MenuItem(filterMenu, SWT.RADIO);
    filterByCommand.setText("Filter by command");
    filterByCommand.setSelection(true);
    filterByCommand.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            MacrosPreferencePage.this.filterByCommand = true;
            filterBook.showPage(commandText);
            macroTableView.refresh();
        }
    });

    MenuItem filterByKeyCombo = new MenuItem(filterMenu, SWT.RADIO);
    filterByKeyCombo.setText("Filter by key combo");
    filterByKeyCombo.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            MacrosPreferencePage.this.filterByCommand = false;
            filterBook.showPage(keyComboText.getText());
            macroTableView.refresh();
        }
    });
    filterButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, false));

    new Label(main, SWT.NONE);
    macroTableView = new TableViewer(main, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL);
    TableViewerColumn commandColumn = new TableViewerColumn(macroTableView, SWT.NONE, 0);
    commandColumn.getColumn().setText("Command");
    commandColumn.getColumn().setWidth(225);
    commandColumn.setEditingSupport(new CommandEditingSupport(macroTableView));

    TableViewerColumn keyColumn = new TableViewerColumn(macroTableView, SWT.NONE, 1);
    keyColumn.getColumn().setText("Key Combination");
    keyColumn.getColumn().setWidth(125);
    keyColumn.setEditingSupport(new KeyStrokeEditingSupport(macroTableView));

    macroTableView.setUseHashlookup(true);
    macroTableView.setColumnProperties(new String[] { COLUMN_COMMAND, COLUMN_KEY });
    macroTableView.setContentProvider(ArrayContentProvider.getInstance());
    macroTableView.setLabelProvider(new LabelProvider());
    macroTableView.addFilter(new ViewerFilter() {
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            IMacro macro = (IMacro) element;
            IMacroHandler handler = macro.getHandler();

            if (handler != null && handler instanceof CommandMacroHandler)
                return true;
            else
                return false;
        }
    });
    macroTableView.addFilter(new MacroFilter());

    macroTableView.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            if (macroTableView.getSelection().isEmpty()) {
                removeMacroButton.setEnabled(false);
            } else {
                selectedMacro = (IMacro) ((IStructuredSelection) macroTableView.getSelection())
                        .getFirstElement();
                removeMacroButton.setEnabled(true);
            }
        }
    });

    //macroTableView.setInput(getSettings().getMacros());
    macroTableView.getTable().setHeaderVisible(true);
    int listHeight = macroTableView.getTable().getItemHeight() * 8;
    Rectangle trim = macroTableView.getTable().computeTrim(0, 0, 0, listHeight);
    data = new GridData(GridData.FILL, GridData.FILL, true, true);
    data.heightHint = trim.height;

    macroTableView.getTable().setLayoutData(data);

    Composite macroButtons = new Composite(main, SWT.NONE);
    macroButtons.setLayout(new GridLayout(1, true));
    macroButtons.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));

    addMacroButton = new Button(macroButtons, SWT.PUSH);
    addMacroButton.setText("Add Macro");
    addMacroButton.setImage(WarlockSharedImages.getImage(WarlockSharedImages.IMG_ADD));
    addMacroButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            addMacroSelected();
        }
    });
    addMacroButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    removeMacroButton = new Button(macroButtons, SWT.PUSH);
    removeMacroButton.setText("Remove Macro");
    removeMacroButton.setImage(WarlockSharedImages.getImage(WarlockSharedImages.IMG_REMOVE));
    removeMacroButton.setEnabled(false);
    removeMacroButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            removeMacroSelected();
        }
    });
    removeMacroButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    Label filler = new Label(macroButtons, SWT.NONE);
    filler.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    clearMacrosButton = new Button(macroButtons, SWT.PUSH);
    clearMacrosButton.setText("Clear Macros");
    clearMacrosButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            clearMacros();
        }
    });
    clearMacrosButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    defaultMacrosButton = new Button(macroButtons, SWT.PUSH);
    defaultMacrosButton.setText("Reset to Defaults");
    defaultMacrosButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            setupDefaultMacros();
        }
    });
    defaultMacrosButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    updateData();

    return main;
}

From source file:com.agynamix.simidude.clipboard.ClipboardTable.java

License:Open Source License

private TableViewer createTableViewer(final Composite parent) {
    tableParent = parent;/*from w ww  .j ava2 s  .c o  m*/
    final TableViewer tableViewer = new TableViewer(tableParent,
            SWT.SINGLE | SWT.FULL_SELECTION | SWT.HIDE_SELECTION | SWT.FLAT | SWT.BORDER | SWT.V_SCROLL);

    tableViewer.getTable().setLinesVisible(true);
    tableViewer.getTable().setHeaderVisible(false);

    ColumnViewerToolTipSupport.enableFor(tableViewer, ToolTip.NO_RECREATE);

    final OptimizedIndexSearcher searcher = new OptimizedIndexSearcher();

    itemColumn = new TableViewerColumn(tableViewer, SWT.LEFT, NAME_COL);
    itemColumn.getColumn().setText("Item");
    itemColumn.setLabelProvider(new ColumnLabelProvider() {
        boolean even = true;
        Color oddColor = null;

        @Override
        public String getText(Object element) {
            String text = "";
            IClipboardItem item = (IClipboardItem) element;
            text = item.getShortDescription();
            return text;
        }

        @Override
        /**
         * Display an icon depending of the type of clipboard entry.
         */
        public Image getImage(Object element) {
            return ((IClipboardItem) element).getImage();
        }

        public Color getBackground(Object element) {
            if (even) {
                return null;
            } else {
                if (oddColor == null) {
                    oddColor = PlatformColors.get(PlatformColors.TRANSFER_TABLE_ALT_COLOR);
                }
                return oddColor;
            }
        }

        public String getToolTipText(Object element) {
            IClipboardItem item = (IClipboardItem) element;
            return item.getTooltip();
        }

        public Point getToolTipShift(Object object) {
            return new Point(5, 5);
        }

        public int getToolTipDisplayDelayTime(Object object) {
            return 200;
        }

        public int getToolTipTimeDisplayed(Object object) {
            return 10000;
        }

        public void update(ViewerCell cell) {
            even = searcher.isEven((TableItem) cell.getItem());
            super.update(cell);
        }
    });

    tableViewer.setContentProvider(new ClipboardTableContentProvider());
    //    tableViewer.setLabelProvider(new ClipboardTableLabelProvider());

    tableParent.addControlListener(new ControlAdapter() {
        public void controlResized(ControlEvent e) {
            adjustTableSize();
        }
    });

    tableViewer.getTable().setMenu(createPopupMenu(tableViewer));
    hookListeners(tableViewer);

    return tableViewer;
}

From source file:com.archimatetool.editor.propertysections.UsedInRelationshipsSection.java

License:Open Source License

private void createTableControl(Composite parent) {
    createLabel(parent, Messages.UsedInRelationshipsSection_0, ITabbedLayoutConstants.STANDARD_LABEL_WIDTH,
            SWT.NONE);/*from  w  w  w . j  av  a2 s.c o  m*/

    // Table
    Composite tableComp = createTableComposite(parent, SWT.NONE);
    fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout();
    fTableViewer = new TableViewer(tableComp, SWT.BORDER | SWT.FULL_SELECTION);

    // Column
    TableViewerColumn column = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    fTableLayout.setColumnData(column.getColumn(), new ColumnWeightData(100, false));

    // On Mac shows alternate table row colours
    fTableViewer.getTable().setLinesVisible(true);

    // Help ID
    PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID);

    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return ArchimateModelUtils.getRelationships((IArchimateElement) inputElement).toArray();
        }
    });

    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            IRelationship relationship = (IRelationship) element;
            String name = ArchimateLabelProvider.INSTANCE.getLabel(relationship) + " ("; //$NON-NLS-1$
            name += ArchimateLabelProvider.INSTANCE.getLabel(relationship.getSource());
            name += " - "; //$NON-NLS-1$
            name += ArchimateLabelProvider.INSTANCE.getLabel(relationship.getTarget());
            name += ")"; //$NON-NLS-1$
            return name;
        }

        @Override
        public Image getImage(Object element) {
            return ArchimateLabelProvider.INSTANCE.getImage(element);
        }
    });

    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            if (isAlive()) {
                Object o = ((IStructuredSelection) event.getSelection()).getFirstElement();
                if (o instanceof IArchimateElement) {
                    IRelationship relation = (IRelationship) o;
                    ITreeModelView view = (ITreeModelView) ViewManager.findViewPart(ITreeModelView.ID);
                    if (view != null) {
                        view.getViewer().setSelection(new StructuredSelection(relation), true);
                    }
                }
            }
        }
    });

    fTableViewer.setSorter(new ViewerSorter());
}

From source file:com.archimatetool.editor.propertysections.UsedInViewsSection.java

License:Open Source License

private void createTableControl(Composite parent) {
    createLabel(parent, Messages.UsedInViewsSection_0, ITabbedLayoutConstants.STANDARD_LABEL_WIDTH, SWT.NONE);

    // Table/*from ww w .  j a  va  2s.  c om*/
    Composite tableComp = createTableComposite(parent, SWT.NONE);
    fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout();
    fTableViewer = new TableViewer(tableComp, SWT.BORDER | SWT.FULL_SELECTION);

    // Column
    TableViewerColumn column = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    fTableLayout.setColumnData(column.getColumn(), new ColumnWeightData(100, false));

    // On Mac shows alternate table row colours
    fTableViewer.getTable().setLinesVisible(true);

    // Help ID
    PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID);

    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return DiagramModelUtils.findReferencedDiagramsForElement((IArchimateElement) inputElement)
                    .toArray();
        }
    });

    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return ((IDiagramModel) element).getName();
        }

        @Override
        public Image getImage(Object element) {
            return IArchimateImages.ImageFactory.getImage(IArchimateImages.ICON_DIAGRAM_16);
        }
    });

    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            if (!isAlive()) {
                return;
            }
            Object o = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (o instanceof IDiagramModel) {
                IDiagramModel diagramModel = (IDiagramModel) o;
                IDiagramModelEditor editor = EditorManager.openDiagramEditor(diagramModel);
                if (editor instanceof IArchimateDiagramEditor) {
                    ((IArchimateDiagramEditor) editor)
                            .selectElements(new IArchimateElement[] { fArchimateElement });
                }
            }
        }
    });

    fTableViewer.setSorter(new ViewerSorter());
}

From source file:com.archimatetool.editor.propertysections.UserPropertiesManagerDialog.java

License:Open Source License

private void createTableControl(Composite parent) {
    Composite tableComp = new Composite(parent, SWT.BORDER);
    TableColumnLayout tableLayout = new TableColumnLayout();
    tableComp.setLayout(tableLayout);/*from   w ww  .ja  v a  2  s  .  c  o m*/
    tableComp.setLayoutData(new GridData(GridData.FILL_BOTH));

    fTableViewer = new TableViewer(tableComp, SWT.MULTI | SWT.FULL_SELECTION);
    fTableViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));

    fTableViewer.getTable().setHeaderVisible(true);
    fTableViewer.getTable().setLinesVisible(true);

    fTableViewer.setSorter(new ViewerSorter());

    // Columns
    TableViewerColumn columnOldKey = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    columnOldKey.getColumn().setText(Messages.UserPropertiesManagerDialog_6);
    tableLayout.setColumnData(columnOldKey.getColumn(), new ColumnWeightData(40, true));

    TableViewerColumn columnNewKey = new TableViewerColumn(fTableViewer, SWT.NONE, 1);
    columnNewKey.getColumn().setText(Messages.UserPropertiesManagerDialog_7);
    tableLayout.setColumnData(columnNewKey.getColumn(), new ColumnWeightData(40, true));
    columnNewKey.setEditingSupport(new KeyEditingSupport(fTableViewer));

    TableViewerColumn columnUsedNumber = new TableViewerColumn(fTableViewer, SWT.NONE, 2);
    columnUsedNumber.getColumn().setText("# " + Messages.UserPropertiesManagerDialog_8); //$NON-NLS-1$
    tableLayout.setColumnData(columnUsedNumber.getColumn(), new ColumnWeightData(20, true));

    // Content Provider
    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return fKeysTable.entrySet().toArray();
        }
    });

    // Label Provider
    fTableViewer.setLabelProvider(new LabelCellProvider());

    fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            fActionDelete.setEnabled(!event.getSelection().isEmpty());
            fButtonDelete.setEnabled(!event.getSelection().isEmpty());

            fActionRename.setEnabled(!event.getSelection().isEmpty());
            fButtonRename.setEnabled(!event.getSelection().isEmpty());
        }
    });

    fTableViewer.setInput(""); // anything will do //$NON-NLS-1$
}