From 7385129e5a0bcbbc5b6cc7dd8ba5390d563ab9b5 Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Mon, 8 Oct 2007 10:50:49 +0000 Subject: [205668] Provide buddies example https://bugs.eclipse.org/bugs/show_bug.cgi?id=205668 --- .../cdo/internal/ui/editor/CDOLabelProvider.java | 10 +--- .../icons/full/obj16/buddy_lonesome.gif | Bin 0 -> 334 bytes .../net4j/buddies/internal/ui/SharedIcons.java | 2 + .../internal/ui/views/BuddiesItemProvider.java | 60 +++++++++++++++++++++ .../buddies/internal/ui/views/BuddiesView.java | 14 ++--- .../src/org/eclipse/net4j/util/ui/UIUtil.java | 20 +++++++ .../eclipse/net4j/util/ui/views/ItemProvider.java | 9 +++- 7 files changed, 99 insertions(+), 16 deletions(-) create mode 100644 plugins/org.eclipse.net4j.buddies.ui/icons/full/obj16/buddy_lonesome.gif diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/editor/CDOLabelProvider.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/editor/CDOLabelProvider.java index af4d0fe5ec..59e0d78100 100644 --- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/editor/CDOLabelProvider.java +++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/editor/CDOLabelProvider.java @@ -16,9 +16,6 @@ import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.graphics.Font; -import org.eclipse.swt.graphics.FontData; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Display; /** * @author Eike Stepper @@ -40,12 +37,7 @@ public class CDOLabelProvider extends AdapterFactoryLabelProvider implements ICo super(adapterFactory); this.view = view; this.viewer = viewer; - - Control control = viewer.getControl(); - FontData[] datas = control.getFont().getFontData().clone(); - datas[0].setStyle(SWT.BOLD); - Display display = control.getShell().getDisplay(); - bold = new Font(display, datas); + bold = UIUtil.getBoldFont(viewer.getControl()); } public CDOView getView() diff --git a/plugins/org.eclipse.net4j.buddies.ui/icons/full/obj16/buddy_lonesome.gif b/plugins/org.eclipse.net4j.buddies.ui/icons/full/obj16/buddy_lonesome.gif new file mode 100644 index 0000000000..1b87e3ccc4 Binary files /dev/null and b/plugins/org.eclipse.net4j.buddies.ui/icons/full/obj16/buddy_lonesome.gif differ diff --git a/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/SharedIcons.java b/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/SharedIcons.java index aee44cdd6d..f09c096733 100644 --- a/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/SharedIcons.java +++ b/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/SharedIcons.java @@ -39,6 +39,8 @@ public class SharedIcons public static final String OBJ_BUDDY = OBJ + "buddy"; + public static final String OBJ_BUDDY_LONESOME = OBJ + "buddy_lonesome"; + public static final String OBJ_BUDDY_AWAY = OBJ + "buddy_away"; public static final String OBJ_BUDDY_DO_NOT_DISTURB = OBJ + "buddy_do_not_disturb"; diff --git a/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/views/BuddiesItemProvider.java b/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/views/BuddiesItemProvider.java index d9830e0ffd..4a088d8227 100644 --- a/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/views/BuddiesItemProvider.java +++ b/plugins/org.eclipse.net4j.buddies.ui/src/org/eclipse/net4j/buddies/internal/ui/views/BuddiesItemProvider.java @@ -14,6 +14,7 @@ import org.eclipse.net4j.buddies.internal.ui.SharedIcons; import org.eclipse.net4j.buddies.protocol.IBuddy; import org.eclipse.net4j.util.container.IContainer; import org.eclipse.net4j.util.lifecycle.LifecycleUtil; +import org.eclipse.net4j.util.ui.UIUtil; import org.eclipse.net4j.util.ui.actions.LongRunningAction; import org.eclipse.net4j.util.ui.views.ContainerItemProvider; import org.eclipse.net4j.util.ui.views.ContainerView; @@ -21,6 +22,10 @@ import org.eclipse.net4j.util.ui.views.IElementFilter; import org.eclipse.jface.action.IMenuManager; import org.eclipse.jface.viewers.ITreeSelection; +import org.eclipse.jface.viewers.Viewer; +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Font; import org.eclipse.swt.graphics.Image; /** @@ -28,6 +33,10 @@ import org.eclipse.swt.graphics.Image; */ public class BuddiesItemProvider extends ContainerItemProvider> { + private static final Color GRAY = UIUtil.getDisplay().getSystemColor(SWT.COLOR_GRAY); + + private Font bold; + public BuddiesItemProvider() { } @@ -37,6 +46,13 @@ public class BuddiesItemProvider extends ContainerItemProvider extends StructuredContentProvider implements ITreeContentProvider, - ILabelProvider, IColorProvider + ILabelProvider, IColorProvider, IFontProvider { public static final Object[] NO_ELEMENTS = {}; @@ -77,6 +79,11 @@ public abstract class ItemProvider extends StructuredContentProvider