Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Vogel2018-03-27 15:23:49 +0000
committerMatthias Becker2019-04-23 12:57:25 +0000
commit18665e4da8e946d2f790ff270e3e49ff69f182b4 (patch)
treebd145a7cc5a73f04005874448bcd5591bcad841d
parent7c16223d190918203e646725f9d623d746e5bc1a (diff)
downloadeclipse.platform.ui-18665e4da8e946d2f790ff270e3e49ff69f182b4.tar.gz
eclipse.platform.ui-18665e4da8e946d2f790ff270e3e49ff69f182b4.tar.xz
eclipse.platform.ui-18665e4da8e946d2f790ff270e3e49ff69f182b4.zip
Bug 466511: Replace dropdown menu custom drawing with pngI20190423-1800
The custom drawing is removed and replaced with a "normal" PNG. By doing this the icons are no longer pixelated on high resolution displays. Change-Id: I758f4cd9e5d4752a798c915aeb39b1989cb33a4a Signed-off-by: Lars Vogel <Lars.Vogel@vogella.com> Also-by: Matthias Becker <ma.becker@sap.com>
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu.pngbin0 -> 192 bytes
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu@2x.pngbin0 -> 239 bytes
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java40
3 files changed, 3 insertions, 37 deletions
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu.png b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu.png
new file mode 100644
index 00000000000..53d011ae5dc
--- /dev/null
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu.png
Binary files differ
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu@2x.png b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu@2x.png
new file mode 100644
index 00000000000..5c0a029c40f
--- /dev/null
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu@2x.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 c672737b5a8..a2d79514b50 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
@@ -82,11 +82,8 @@ import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
-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;
@@ -182,6 +179,7 @@ public class StackRenderer extends LazyStackRenderer implements IPreferenceChang
private static int MIN_EDITOR_CHARS = 15;
private Image viewMenuImage;
+ private String viewMenuURI = "platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/icons/full/elcl16/view_menu.png"; //$NON-NLS-1$
@Inject
private IEventBroker eventBroker;
@@ -1353,44 +1351,12 @@ public class StackRenderer extends LazyStackRenderer implements IPreferenceChang
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, 3, 15, 3, 11, 7, 10, 7 };
- 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();
+ viewMenuImage = getImageFromURI(viewMenuURI);
}
return viewMenuImage;
}
+
private void openMenuFor(MPart part, CTabFolder folder, Point point) {
Menu tabMenu = createTabMenu(folder, part);
tabMenu.setData(STACK_SELECTED_PART, part);

Back to the top