List of usage examples for org.eclipse.jface.viewers ViewerCell setForeground
public void setForeground(Color foreground)
From source file:org.openscada.da.ui.widgets.realtime.ItemCellLabelProvider.java
License:Open Source License
private void updateListEntry(final ListEntry listEntry, final ViewerCell cell) { cell.setFont(listEntry.getFont());/* w ww. java 2s .c o m*/ cell.setForeground(listEntry.getForeground()); cell.setBackground(listEntry.getBackground()); switch (cell.getColumnIndex()) { case 0: cell.setImage(listEntry.getImage()); cell.setText(listEntry.getDataItem().getItem().getId()); break; case 1: if (listEntry.getSubscriptionError() != null) { cell.setText(String.format("%s (%s)", listEntry.getSubscriptionState(), //$NON-NLS-1$ listEntry.getSubscriptionError().getMessage())); } else { cell.setText(listEntry.getSubscriptionState().name()); } break; case 2: if (listEntry.getValue() != null) { cell.setText(listEntry.getValue().getType().name()); } break; case 3: if (listEntry.getValue() != null) { cell.setText(listEntry.getValue().asString("<null>")); //$NON-NLS-1$ } break; default: break; } }
From source file:org.pepstock.jem.plugin.views.jobs.running.RunningLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { cell.setText(getColumnText(cell.getElement(), cell.getColumnIndex())); Job job = (Job) cell.getElement();/*from ww w.j a va 2 s . c om*/ // if job is waiting, sets gray color if (job.getRunningStatus() == Job.WAITING_FOR_RESOURCES) { Display display = Display.getCurrent(); Color gray = display.getSystemColor(SWT.COLOR_GRAY); cell.setForeground(gray); } else { Display display = Display.getCurrent(); Color gray = display.getSystemColor(SWT.COLOR_BLACK); cell.setForeground(gray); } }
From source file:org.polymap.p4.imports.labels.MessageCellLabelProvider.java
License:Open Source License
private void applyStyleViaSWT(ViewerCell cell, int severity) { int color = SWT.COLOR_BLACK; if (severity == IStatus.ERROR) { color = SWT.COLOR_RED;//from w ww. j a va 2 s .c o m } else if (severity == IStatus.WARNING) { color = SWT.COLOR_DARK_YELLOW; } cell.setForeground(Display.getCurrent().getSystemColor(color)); }
From source file:org.rssowl.ui.internal.dialogs.CustomizeToolbarDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite container = createContainer(parent); Label infoLabel = new Label(container, SWT.None); infoLabel.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false, 2, 1)); infoLabel.setText(Messages.CustomizeToolbarDialog_DIALOG_INFO); /* Table showing Tool Items */ Composite tableContainer = new Composite(container, SWT.NONE); tableContainer.setLayout(LayoutUtils.createGridLayout(1, 0, 0)); tableContainer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); CTable cTable = new CTable(tableContainer, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); fItemViewer = new TableViewer(cTable.getControl()); fItemViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); fItemViewer.getTable().setHeaderVisible(false); ((GridData) fItemViewer.getTable().getLayoutData()).heightHint = fItemViewer.getTable().getItemHeight() * 24;// w w w .j a v a 2 s . c om fItemViewer.getTable().setFocus(); fItemViewer.getTable().setData(ApplicationWorkbenchWindowAdvisor.FOCUSLESS_SCROLL_HOOK, new Object()); /* Custom Owner Drawn Category */ if (!OwlUI.isHighContrast()) { fItemViewer.getControl().addListener(SWT.EraseItem, new Listener() { public void handleEvent(Event event) { ToolBarItem item = (ToolBarItem) event.item.getData(); if (item.item == CoolBarItem.SEPARATOR) { Scrollable scrollable = (Scrollable) event.widget; GC gc = event.gc; Rectangle area = scrollable.getClientArea(); Rectangle rect = event.getBounds(); /* Paint the selection beyond the end of last column */ OwlUI.codExpandRegion(event, scrollable, gc, area); /* Draw Gradient Rectangle */ Color oldForeground = gc.getForeground(); Color oldBackground = gc.getBackground(); /* Gradient */ gc.setBackground(fSeparatorBg); gc.fillRectangle(0, rect.y, area.width, rect.height); /* Top / Bottom Line */ gc.setForeground(fSeparatorBorderFg); gc.drawLine(0, rect.y + rect.height - 1, area.width, rect.y + rect.height - 1); gc.drawLine(0, rect.y, area.width, rect.y); gc.setForeground(oldForeground); gc.setBackground(oldBackground); /* Mark as Background being handled */ event.detail &= ~SWT.BACKGROUND; } } }); } TableColumn nameCol = new TableColumn(fItemViewer.getTable(), SWT.NONE); CColumnLayoutData data = new CColumnLayoutData(Size.FILL, 100); cTable.manageColumn(nameCol, data, Messages.CustomizeToolbarDialog_VISIBLE_ITEMS, null, null, false, false); /* ContentProvider returns all selected Items */ fItemViewer.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { int[] itemIds = fPreferences.getIntegers(DefaultPreferences.TOOLBAR_ITEMS); ToolBarItem[] items = new ToolBarItem[itemIds.length]; for (int i = 0; i < itemIds.length; i++) { items[i] = new ToolBarItem(CoolBarItem.values()[itemIds[i]]); } return items; } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); /* Label Provider */ fItemViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { CoolBarItem item = ((ToolBarItem) cell.getElement()).item; cell.setText(item.getName()); if (item.getImg() != null) cell.setImage(fResources.createImage(item.getImg())); if (!OwlUI.isHighContrast() && item == CoolBarItem.SPACER) cell.setForeground(getShell().getDisplay().getSystemColor(SWT.COLOR_DARK_GRAY)); } }); /* Selection */ fItemViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtonEnablement(); } }); /* Support Keyboard Remove */ fItemViewer.getTable().addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { if (e.keyCode == SWT.DEL || (Application.IS_MAC && e.keyCode == SWT.BS)) onRemove(); } }); /* Drag Support */ fItemViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new DragSourceAdapter() { @Override public void dragStart(final DragSourceEvent event) { SafeRunnable.run(new LoggingSafeRunnable() { public void run() throws Exception { IStructuredSelection selection = (IStructuredSelection) fItemViewer.getSelection(); event.doit = (selection.size() < fItemViewer.getTable().getItemCount()); if (event.doit) { LocalSelectionTransfer.getTransfer().setSelection(selection); LocalSelectionTransfer.getTransfer() .setSelectionSetTime(event.time & 0xFFFFFFFFL); } ; } }); } @Override public void dragSetData(final DragSourceEvent event) { SafeRunnable.run(new LoggingSafeRunnable() { public void run() throws Exception { if (LocalSelectionTransfer.getTransfer().isSupportedType(event.dataType)) event.data = LocalSelectionTransfer.getTransfer().getSelection(); } }); } @Override public void dragFinished(DragSourceEvent event) { SafeRunnable.run(new LoggingSafeRunnable() { public void run() throws Exception { LocalSelectionTransfer.getTransfer().setSelection(null); LocalSelectionTransfer.getTransfer().setSelectionSetTime(0); } }); } }); /* Drop Support */ ViewerDropAdapter dropSupport = new ViewerDropAdapter(fItemViewer) { @Override public boolean validateDrop(Object target, int operation, TransferData transferType) { return true; } @Override public boolean performDrop(Object data) { ToolBarItem target = (ToolBarItem) getCurrentTarget(); if (target != null) { onMove((StructuredSelection) data, target, getCurrentLocation()); return true; } return false; } }; dropSupport.setFeedbackEnabled(true); dropSupport.setScrollEnabled(true); dropSupport.setSelectionFeedbackEnabled(true); fItemViewer.addDropSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, dropSupport); /* Set Dummy Input */ fItemViewer.setInput(this); /* Container for the Buttons to Manage Providers */ Composite buttonContainer = new Composite(container, SWT.None); buttonContainer.setLayout(LayoutUtils.createGridLayout(1, 0, 0)); buttonContainer.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, false)); /* Add */ fAddMenu = new Menu(getShell(), SWT.POP_UP); fAddMenu.addMenuListener(new MenuListener() { public void menuShown(MenuEvent e) { MenuItem[] items = fAddMenu.getItems(); for (MenuItem item : items) { item.dispose(); } /* Fill not yet visible Items */ int[] toolbarItemIds = fPreferences.getIntegers(DefaultPreferences.TOOLBAR_ITEMS); List<CoolBarItem> visibleItems = new ArrayList<CoolBarItem>(); for (int toolbarItemId : toolbarItemIds) { visibleItems.add(CoolBarItem.values()[toolbarItemId]); } CoolBarItem[] toolItems = getSortedItems(); int currentGroup = -1; for (final CoolBarItem toolItem : toolItems) { if (!visibleItems.contains(toolItem) || toolItem == CoolBarItem.SEPARATOR || toolItem == CoolBarItem.SPACER) { /* Divide Groups by Separators */ if (currentGroup >= 0 && currentGroup != toolItem.getGroup()) new MenuItem(fAddMenu, SWT.SEPARATOR); /* Create Menu Item */ MenuItem item = new MenuItem(fAddMenu, SWT.PUSH); if (StringUtils.isSet(toolItem.getTooltip())) item.setText(toolItem.getTooltip()); else item.setText(toolItem.getName()); if (toolItem.getImg() != null) item.setImage(fResources.createImage(toolItem.getImg())); item.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { /* Add Item */ onAdd(toolItem); /* Re-Open Menu for More */ JobRunner.runInUIThread(fAddMenu, new Runnable() { public void run() { fAddMenu.setVisible(true); }; }); } }); currentGroup = toolItem.getGroup(); } } } public void menuHidden(MenuEvent e) { } }); fAddButton = new Button(buttonContainer, SWT.DOWN); fAddButton.setText(Messages.CustomizeToolbarDialog_ADD); applyDialogFont(fAddButton); setButtonLayoutData(fAddButton); fAddButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Rectangle rect = fAddButton.getBounds(); Point pt = new Point(rect.x, rect.y + rect.height); pt = fAddButton.toDisplay(pt); fAddMenu.setLocation(pt.x, pt.y); fAddMenu.setVisible(true); } }); /* Remove */ fRemoveButton = new Button(buttonContainer, SWT.PUSH); fRemoveButton.setText(Messages.CustomizeToolbarDialog_REMOVE); fRemoveButton.setEnabled(false); applyDialogFont(fRemoveButton); setButtonLayoutData(fRemoveButton); fRemoveButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onRemove(); } }); /* Move Provider Up */ fMoveUpButton = new Button(buttonContainer, SWT.PUSH); fMoveUpButton.setText(Messages.CustomizeToolbarDialog_MOVE_UP); fMoveUpButton.setEnabled(false); applyDialogFont(fMoveUpButton); setButtonLayoutData(fMoveUpButton); ((GridData) fMoveUpButton.getLayoutData()).verticalIndent = 10; fMoveUpButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onMove(true); } }); /* Move Provider Down */ fMoveDownButton = new Button(buttonContainer, SWT.PUSH); fMoveDownButton.setText(Messages.CustomizeToolbarDialog_MOVE_DOWN); fMoveDownButton.setEnabled(false); applyDialogFont(fMoveDownButton); setButtonLayoutData(fMoveDownButton); fMoveDownButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onMove(false); } }); /* Restore Defaults */ fRestoreDefaults = new Button(buttonContainer, SWT.PUSH); fRestoreDefaults.setText(Messages.CustomizeToolbarDialog_RESTORE_DEFAULTS); applyDialogFont(fRestoreDefaults); setButtonLayoutData(fRestoreDefaults); ((GridData) fRestoreDefaults.getLayoutData()).grabExcessVerticalSpace = true; ((GridData) fRestoreDefaults.getLayoutData()).verticalAlignment = SWT.END; fRestoreDefaults.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onRestoreDefaults(); } }); /* Toolbar Mode */ Composite modeContainer = new Composite(container, SWT.None); modeContainer.setLayout(LayoutUtils.createGridLayout(2, 5, 0)); modeContainer.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, false, 2, 1)); Label showLabel = new Label(modeContainer, SWT.NONE); showLabel.setText(Messages.CustomizeToolbarDialog_SHOW); fModeViewer = new ComboViewer(modeContainer, SWT.READ_ONLY | SWT.BORDER); fModeViewer.setContentProvider(new ArrayContentProvider()); fModeViewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { if (element instanceof CoolBarMode) { switch ((CoolBarMode) element) { case IMAGE: return Messages.CustomizeToolbarDialog_ICONS; case TEXT: return Messages.CustomizeToolbarDialog_TEXT; case IMAGE_TEXT_VERTICAL: return Messages.CustomizeToolbarDialog_ICONS_AND_TEXT; case IMAGE_TEXT_HORIZONTAL: return Messages.CustomizeToolbarDialog_ICONS_AND_TEXT_SMALL; } } return super.getText(element); } }); fModeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { Object selection = ((IStructuredSelection) event.getSelection()).getFirstElement(); CoolBarMode mode = (CoolBarMode) selection; fPreferences.putInteger(DefaultPreferences.TOOLBAR_MODE, mode.ordinal()); } }); fModeViewer.setInput(CoolBarAdvisor.CoolBarMode.values()); fModeViewer.setSelection(new StructuredSelection( CoolBarMode.values()[fPreferences.getInteger(DefaultPreferences.TOOLBAR_MODE)])); /* Separator */ new Label(parent, SWT.SEPARATOR | SWT.HORIZONTAL) .setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false)); applyDialogFont(container); return container; }
From source file:org.rssowl.ui.internal.dialogs.NewsFiltersListDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { /* Separator */ new Label(parent, SWT.SEPARATOR | SWT.HORIZONTAL) .setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false)); /* Title *///from w w w. j a va 2s.c o m setTitle(Messages.NewsFiltersListDialog_NEWS_FILTERS); /* Title Image */ setTitleImage(OwlUI.getImage(fResources, "icons/wizban/filter_wiz.png")); //$NON-NLS-1$ /* Composite to hold all components */ Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(LayoutUtils.createGridLayout(2, 5, 10)); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Composite tableContainer = new Composite(composite, SWT.NONE); tableContainer.setLayout(LayoutUtils.createGridLayout(1, 0, 0)); tableContainer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); CTable cTable = new CTable(tableContainer, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); fViewer = new CheckboxTableViewer(cTable.getControl()); fViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); fViewer.getTable().setHeaderVisible(true); ((GridData) fViewer.getTable().getLayoutData()).heightHint = fViewer.getTable().getItemHeight() * 15; fViewer.getTable().setData(ApplicationWorkbenchWindowAdvisor.FOCUSLESS_SCROLL_HOOK, new Object()); TableColumn nameCol = new TableColumn(fViewer.getTable(), SWT.NONE); CColumnLayoutData data = new CColumnLayoutData(Size.FILL, 100); cTable.manageColumn(nameCol, data, Messages.NewsFiltersListDialog_NAME, null, null, false, false); /* ContentProvider returns all filters */ fViewer.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { return fSearchFilterDao.loadAll().toArray(); } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); /* Label Provider */ fViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { ISearchFilter filter = (ISearchFilter) cell.getElement(); Display display = fViewer.getControl().getDisplay(); if (filter.isEnabled()) cell.setText(filter.getName()); else cell.setText(NLS.bind(Messages.NewsFiltersListDialog_FILTER_DISABLED, filter.getName())); cell.setImage(fFilterIcon); if (!OwlUI.isHighContrast()) cell.setForeground(filter.isEnabled() ? display.getSystemColor(SWT.COLOR_BLACK) : display.getSystemColor(SWT.COLOR_DARK_GRAY)); } }); /* Sort */ fViewer.setComparator(new ViewerComparator() { @Override public int compare(Viewer viewer, Object e1, Object e2) { ISearchFilter filter1 = (ISearchFilter) e1; ISearchFilter filter2 = (ISearchFilter) e2; return filter1.getOrder() < filter2.getOrder() ? -1 : 1; } }); /* Selection */ fViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); fEditButton.setEnabled(!selection.isEmpty()); fDeleteButton.setEnabled(!selection.isEmpty()); fApplySelectedFilter.setEnabled(!selection.isEmpty() && selection.size() == 1); updateMoveEnablement(); } }); /* Doubleclick */ fViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { onEdit(); } }); /* Set input (ignored by ContentProvider anyways) */ fViewer.setInput(this); updateCheckedState(); /* Listen on Check State Changes */ fViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { ISearchFilter filter = (ISearchFilter) event.getElement(); filter.setEnabled(event.getChecked()); fSearchFilterDao.save(filter); fViewer.update(filter, null); updateTitle(); } }); /* Container for the Buttons to Manage Filters */ Composite buttonContainer = new Composite(composite, SWT.None); buttonContainer.setLayout(LayoutUtils.createGridLayout(1, 0, 0)); buttonContainer.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, false)); /* Adds a new Filter */ Button addButton = new Button(buttonContainer, SWT.PUSH); addButton.setText(Messages.NewsFiltersListDialog_NEW); addButton.setFocus(); applyDialogFont(addButton); setButtonLayoutData(addButton); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onAdd(); } }); /* Edits a selected Filter */ fEditButton = new Button(buttonContainer, SWT.PUSH); fEditButton.setText(Messages.NewsFiltersListDialog_EDIT); applyDialogFont(fEditButton); setButtonLayoutData(fEditButton); fEditButton.setEnabled(false); fEditButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onEdit(); } }); /* Deletes the selected Filter */ fDeleteButton = new Button(buttonContainer, SWT.PUSH); fDeleteButton.setText(Messages.NewsFiltersListDialog_DELETE); applyDialogFont(fDeleteButton); setButtonLayoutData(fDeleteButton); fDeleteButton.setEnabled(false); fDeleteButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onDelete(); } }); /* Move Filter Up */ fMoveUpButton = new Button(buttonContainer, SWT.PUSH); fMoveUpButton.setText(Messages.NewsFiltersListDialog_MOVE_UP); fMoveUpButton.setEnabled(false); applyDialogFont(fMoveUpButton); setButtonLayoutData(fMoveUpButton); ((GridData) fMoveUpButton.getLayoutData()).verticalIndent = 10; fMoveUpButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onMove(true); } }); /* Move Filter Down */ fMoveDownButton = new Button(buttonContainer, SWT.PUSH); fMoveDownButton.setText(Messages.NewsFiltersListDialog_MOVE_DOWN); fMoveDownButton.setEnabled(false); applyDialogFont(fMoveDownButton); setButtonLayoutData(fMoveDownButton); fMoveDownButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onMove(false); } }); Composite buttonBar = new Composite(composite, SWT.NONE); buttonBar.setLayout(LayoutUtils.createGridLayout(2, 0, 0)); buttonBar.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false, 2, 1)); /* Button to apply filter on all News */ fApplySelectedFilter = new Button(buttonBar, SWT.PUSH); fApplySelectedFilter.setText(Messages.NewsFiltersListDialog_RUN_SELECTED_FILTER); fApplySelectedFilter.setEnabled(false); applyDialogFont(fApplySelectedFilter); setButtonLayoutData(fApplySelectedFilter); ((GridData) fApplySelectedFilter.getLayoutData()).grabExcessHorizontalSpace = false; ((GridData) fApplySelectedFilter.getLayoutData()).horizontalAlignment = SWT.BEGINNING; fApplySelectedFilter.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onApplySelectedFilter(); } }); /* Close */ Button closeButton = new Button(buttonBar, SWT.PUSH); closeButton.setText(Messages.NewsFiltersListDialog_CLOSE); applyDialogFont(closeButton); setButtonLayoutData(closeButton); ((GridData) closeButton.getLayoutData()).grabExcessHorizontalSpace = true; ((GridData) closeButton.getLayoutData()).horizontalAlignment = SWT.END; closeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { close(); } }); /* Update Title Message */ updateTitle(); /* Set Selection if provided */ if (fSelectedFilter != null) fViewer.setSelection(new StructuredSelection(fSelectedFilter), true); applyDialogFont(composite); return composite; }
From source file:org.rssowl.ui.internal.dialogs.preferences.ManageLabelsPreferencePage.java
License:Open Source License
private void createViewer(Composite container) { fViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.BORDER | SWT.MULTI); fViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); ((GridData) fViewer.getTree().getLayoutData()).heightHint = 190; fViewer.getTree().setFont(OwlUI.getBold(JFaceResources.DIALOG_FONT)); fViewer.getTree().setData(ApplicationWorkbenchWindowAdvisor.FOCUSLESS_SCROLL_HOOK, new Object()); /* Content Provider */ fViewer.setContentProvider(new ITreeContentProvider() { public Object[] getElements(Object inputElement) { return CoreUtils.loadSortedLabels().toArray(); }//from www .ja v a 2s .c om public Object[] getChildren(Object parentElement) { return null; } public Object getParent(Object element) { return null; } public boolean hasChildren(Object element) { return false; } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); /* Label Provider */ final RGB listBackground = fViewer.getControl().getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND) .getRGB(); final RGB listSelectionBackground = fViewer.getControl().getDisplay() .getSystemColor(SWT.COLOR_LIST_SELECTION).getRGB(); fViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { ILabel label = (ILabel) cell.getElement(); /* Text */ cell.setText(label.getName()); /* Color */ if (!OwlUI.isHighContrast()) { RGB labelRGB = OwlUI.getRGB(label); if (!listBackground.equals(labelRGB) && !listSelectionBackground.equals(labelRGB)) cell.setForeground(OwlUI.getColor(fResources, labelRGB)); else cell.setForeground(null); } } }); /* Set dummy Input */ fViewer.setInput(new Object()); /* Edit on Doubleclick */ fViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { onEdit(); } }); }
From source file:org.rssowl.ui.internal.ManageLabelsPreferencePage.java
License:Open Source License
private void createViewer(Composite container) { fViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.BORDER | SWT.SINGLE); fViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); /* Content Provider */ fViewer.setContentProvider(new ITreeContentProvider() { public Object[] getElements(Object inputElement) { return DynamicDAO.loadAll(ILabel.class).toArray(); }//ww w .ja v a2 s. c o m public Object[] getChildren(Object parentElement) { return null; } public Object getParent(Object element) { return null; } public boolean hasChildren(Object element) { return false; } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); /* Label Provider */ fViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { ILabel label = (ILabel) cell.getElement(); /* Text */ cell.setText(label.getName()); /* Color */ cell.setForeground(OwlUI.getColor(fResources, label)); } }); /* Set dummy Input */ fViewer.setInput(new Object()); /* Edit on Doubleclick */ fViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { onEdit(); } }); }
From source file:org.rssowl.ui.internal.views.explorer.BookMarkLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { Object element = cell.getElement(); int unreadNewsCount = 0; /* Create Label for a Folder */ if (element instanceof IFolder) { IFolder folder = (IFolder) element; int newNewsCount = 0; boolean hasSticky = false; if (fIndicateState) { FolderDecorationHelper helper = new FolderDecorationHelper(); computeFolderDecoration(folder, helper); hasSticky = helper.fHasSticky; unreadNewsCount = helper.fUnreadCount; newNewsCount = helper.fNewCount; }/* www .j a va2 s . co m*/ /* Image */ if (folder.getParent() == null) cell.setImage(fBookmarkSetIcon); else if (newNewsCount == 0) cell.setImage(fFolderIcon); else cell.setImage(fFolderNewIcon); /* Font */ if (unreadNewsCount > 0) cell.setFont(fBoldFont); else cell.setFont(fDefaultFont); /* Text */ if (unreadNewsCount > 0) cell.setText( NLS.bind(Messages.BookMarkLabelProvider_NAME_UNREAD, folder.getName(), unreadNewsCount)); else cell.setText(folder.getName()); /* Reset Foreground */ cell.setForeground(null); /* Background Color */ if (hasSticky && !OwlUI.isHighContrast()) cell.setBackground(fStickyBgColor); else cell.setBackground(null); } /* Create generic Label for instances of INewsMark */ else if (element instanceof INewsMark) { boolean hasNew = false; int stickyNewsCount = 0; INewsMark newsmark = (INewsMark) element; if (fIndicateState) { unreadNewsCount = newsmark .getNewsCount(EnumSet.of(INews.State.NEW, INews.State.UNREAD, INews.State.UPDATED)); hasNew = newsmark.getNewsCount(EnumSet.of(INews.State.NEW)) != 0; } /* Font */ if (unreadNewsCount > 0) cell.setFont(fBoldFont); else cell.setFont(fDefaultFont); /* Text */ if (unreadNewsCount > 0) cell.setText( NLS.bind(Messages.BookMarkLabelProvider_NAME_UNREAD, newsmark.getName(), unreadNewsCount)); else cell.setText(newsmark.getName()); /* Background for IBookMark (TODO Support All News Marks) */ if (newsmark instanceof IBookMark && fIndicateState) stickyNewsCount = ((IBookMark) newsmark).getStickyNewsCount(); /* Background Color */ if (stickyNewsCount > 0 && !OwlUI.isHighContrast()) cell.setBackground(fStickyBgColor); else cell.setBackground(null); /* Reset Foreground */ cell.setForeground(null); /* Icon */ if (newsmark instanceof IBookMark) cell.setImage(getIconForBookMark((IBookMark) newsmark, hasNew)); else if (newsmark instanceof ISearchMark) cell.setImage(getIconForSearchMark((ISearchMark) newsmark, hasNew, unreadNewsCount)); else if (newsmark instanceof INewsBin) cell.setImage(getIconForNewsBin((INewsBin) newsmark, hasNew, unreadNewsCount)); } /* Create Label for EntityGroup */ else if (element instanceof EntityGroup) { EntityGroup group = (EntityGroup) element; /* Text */ cell.setText(group.getName()); /* Image */ cell.setImage(fGroupIcon); /* Foreground */ if (!OwlUI.isHighContrast()) cell.setForeground(fGroupFgColor); /* Reset Background */ cell.setBackground(null); /* Font */ cell.setFont(fBoldFont); } }
From source file:org.search.niem.uml.search.ui.NiemReferencesLabelProvider.java
License:Open Source License
@Override public void update(final ViewerCell cell) { final Object element = cell.getElement(); cell.setBackground(getBackground(element)); cell.setFont(getFont(element));/*ww w . ja va2 s. co m*/ cell.setForeground(getForeground(element)); cell.setImage(getImage(element)); cell.setText(getText(element)); }
From source file:org.sourcepit.b2eclipse.provider.LabelProviderForDir.java
License:Open Source License
/** * Specify the settings of the TreeViewer. *//*w ww. j a v a2 s.c o m*/ @Override public void update(ViewerCell cell) { final StyledString label = new StyledString(); Node node = ((Node) cell.getElement()); if (node instanceof NodeProject) { label.append(node.getName()); label.append(" (" + node.getFile().getAbsolutePath() + ")", StyledString.DECORATIONS_STYLER); cell.setImage(PlatformUI.getWorkbench().getSharedImages() .getImage(org.eclipse.ui.ide.IDE.SharedImages.IMG_OBJ_PROJECT)); } if (node instanceof NodeModuleProject) { label.append(node.getName() + " "); if (!node.hasConflict()) { label.append(Messages.msgModuleProject, StyledString.DECORATIONS_STYLER); } else { label.append(Messages.msgModuleProject); } cell.setImage(PlatformUI.getWorkbench().getSharedImages() .getImage(org.eclipse.ui.ide.IDE.SharedImages.IMG_OBJ_PROJECT)); } if (node instanceof NodeModule) { label.append(node.getName()); String fix = ((NodeModule) node).getPrefix(); if (fix != null) label.append(" (" + fix + ")", StyledString.DECORATIONS_STYLER); cell.setImage(Activator.getImageFromPath("org.eclipse.jdt.ui", "$nl$/icons/full/obj16/packagefolder_obj.gif")); } if (node instanceof NodeFolder) { label.append(node.getName()); cell.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER)); // TODO maybe find a better icon } if (node.hasConflict()) cell.setForeground(shell.getDisplay().getSystemColor(SWT.COLOR_GRAY)); // TODO maybe gray out the Icons cell.setText(label.toString()); cell.setStyleRanges(label.getStyleRanges()); super.update(cell); }