Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Vogel2014-03-12 14:42:45 +0000
committerLars Vogel2014-03-12 23:47:16 +0000
commit2cc39fc98fc6e7e4901c82cbeaab40ac60cde46b (patch)
treec356b61f746b3d02891b3b1d4092d3786c3db22e
parentb97659ac5a6ae3424e14d5a5a5699ea6f2141677 (diff)
downloadeclipse.platform.ui-2cc39fc98fc6e7e4901c82cbeaab40ac60cde46b.tar.gz
eclipse.platform.ui-2cc39fc98fc6e7e4901c82cbeaab40ac60cde46b.tar.xz
eclipse.platform.ui-2cc39fc98fc6e7e4901c82cbeaab40ac60cde46b.zip
Bug 430166 - Replace view menu button with png to make it look good on a
dark background Change-Id: Id62a0c8cbd5c1c1ead9d0138b9194118632cdee0 Signed-off-by: Lars Vogel <Lars.Vogel@gmail.com>
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/etool16/view_dropdown.pngbin0 -> 332 bytes
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java61
2 files changed, 16 insertions, 45 deletions
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/etool16/view_dropdown.png b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/etool16/view_dropdown.png
new file mode 100644
index 00000000000..7919c95573f
--- /dev/null
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/etool16/view_dropdown.png
Binary files differ
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
index 8a9590171e5..44b6cc83f7e 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
@@ -7,10 +7,11 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
- * Lars Vogel <Lars.Vogel@gmail.com> - Bug 429728
+ * Lars Vogel <Lars.Vogel@gmail.com> - Bug 429728, 430166
*******************************************************************************/
package org.eclipse.e4.ui.workbench.renderers.swt;
+import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -20,6 +21,8 @@ import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.inject.Inject;
import javax.inject.Named;
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.Path;
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.eclipse.e4.core.di.annotations.Optional;
import org.eclipse.e4.core.services.events.IEventBroker;
@@ -57,6 +60,7 @@ import org.eclipse.e4.ui.workbench.swt.util.ISWTResourceUtilities;
import org.eclipse.jface.action.IContributionItem;
import org.eclipse.jface.action.LegacyActionTools;
import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.accessibility.ACC;
import org.eclipse.swt.accessibility.Accessible;
@@ -78,10 +82,7 @@ import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.events.TraverseEvent;
import org.eclipse.swt.events.TraverseListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.RowData;
@@ -97,6 +98,8 @@ import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.swt.widgets.ToolItem;
import org.eclipse.swt.widgets.Widget;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.FrameworkUtil;
import org.osgi.service.event.Event;
import org.osgi.service.event.EventHandler;
import org.w3c.dom.css.CSSValue;
@@ -123,9 +126,9 @@ public class StackRenderer extends LazyStackRenderer {
private static final String STACK_SELECTED_PART = "stack_selected_part"; //$NON-NLS-1$
/**
- * Add this tag to prevent the next tab's activation from granting focus toac
- * the part. This is used to keep the focus on the CTF when traversing the
- * tabs using the keyboard.
+ * Add this tag to prevent the next tab's activation from granting focus
+ * toac the part. This is used to keep the focus on the CTF when traversing
+ * the tabs using the keyboard.
*/
private static final String INHIBIT_FOCUS = "InhibitFocus"; //$NON-NLS-1$
@@ -1290,42 +1293,12 @@ public class StackRenderer extends LazyStackRenderer {
private Image getViewMenuImage() {
if (viewMenuImage == null) {
- Display d = Display.getCurrent();
-
- Image viewMenu = new Image(d, 16, 16);
- Image viewMenuMask = new Image(d, 16, 16);
-
- Display display = Display.getCurrent();
- GC gc = new GC(viewMenu);
- GC maskgc = new GC(viewMenuMask);
- gc.setForeground(display
- .getSystemColor(SWT.COLOR_WIDGET_DARK_SHADOW));
- gc.setBackground(display.getSystemColor(SWT.COLOR_LIST_BACKGROUND));
-
- int[] shapeArray = new int[] { 6, 1, 15, 1, 11, 5, 10, 5 };
- gc.fillPolygon(shapeArray);
- gc.drawPolygon(shapeArray);
-
- Color black = display.getSystemColor(SWT.COLOR_BLACK);
- Color white = display.getSystemColor(SWT.COLOR_WHITE);
-
- maskgc.setBackground(black);
- maskgc.fillRectangle(0, 0, 16, 16);
-
- maskgc.setBackground(white);
- maskgc.setForeground(white);
- maskgc.fillPolygon(shapeArray);
- maskgc.drawPolygon(shapeArray);
- gc.dispose();
- maskgc.dispose();
-
- ImageData data = viewMenu.getImageData();
- data.transparentPixel = data.getPixel(0, 0);
-
- viewMenuImage = new Image(d, viewMenu.getImageData(),
- viewMenuMask.getImageData());
- viewMenu.dispose();
- viewMenuMask.dispose();
+ Bundle bundle = FrameworkUtil.getBundle(this.getClass());
+ URL url = FileLocator.find(bundle, new Path(
+ "icons/full/etool16/view_dropdown.png"), null); //$NON-NLS-1$
+ ImageDescriptor imageDescriptor = ImageDescriptor
+ .createFromURL(url);
+ viewMenuImage = imageDescriptor.createImage();
}
return viewMenuImage;
}
@@ -1650,6 +1623,4 @@ public class StackRenderer extends LazyStackRenderer {
}
}
-
-
}

Back to the top