From 134ecc1161f2dc02b535b8a48447a6c8c88de34d Mon Sep 17 00:00:00 2001
From: David Bohn <davbohn@googlemail.com>
Date: Fri, 8 Jul 2016 02:47:28 +0200
Subject: [PATCH] Retina on click support added. Please check wiki for details
 on this branch

---
 src/main/java/fucoin/gui/gephi/GraphWindow.java         | 6 +-----
 src/main/java/fucoin/gui/gephi/ItemBuilderTemplate.java | 4 ----
 src/main/java/fucoin/gui/gephi/PreviewSketch.java       | 1 +
 src/main/java/fucoin/gui/gephi/RendererTemplate.java    | 1 -
 4 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/src/main/java/fucoin/gui/gephi/GraphWindow.java b/src/main/java/fucoin/gui/gephi/GraphWindow.java
index 04cdc06..e2d1a85 100644
--- a/src/main/java/fucoin/gui/gephi/GraphWindow.java
+++ b/src/main/java/fucoin/gui/gephi/GraphWindow.java
@@ -40,8 +40,6 @@ public class GraphWindow extends JFrame {
     }
 
     public static boolean isRetina() {
-        //TODO: OS and JVM specific checks...
-        //if (SystemInfo.isJavaVersionAtLeast("1.7.0_40") && SystemInfo.isOracleJvm) {
         GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
         final GraphicsDevice device = env.getDefaultScreenDevice();
 
@@ -52,14 +50,12 @@ public class GraphWindow extends JFrame {
                 field.setAccessible(true);
                 Object scale = field.get(device);
 
-                if (scale instanceof Integer && ((Integer) scale).intValue() == 2) {
+                if (scale instanceof Integer && (Integer) scale == 2) {
                     return true;
                 }
             }
         } catch (Exception ignore) {
         }
-        //}
-        //...
         return false;
     }
 }
diff --git a/src/main/java/fucoin/gui/gephi/ItemBuilderTemplate.java b/src/main/java/fucoin/gui/gephi/ItemBuilderTemplate.java
index 2d62f90..defce3e 100644
--- a/src/main/java/fucoin/gui/gephi/ItemBuilderTemplate.java
+++ b/src/main/java/fucoin/gui/gephi/ItemBuilderTemplate.java
@@ -13,10 +13,6 @@ import java.util.Arrays;
 public class ItemBuilderTemplate implements ItemBuilder {
     @Override
     public Item[] getItems(Graph graph) {
-        Node n = graph.getNodes().toArray()[0];
-        Edge[] edges = graph.getEdges(n).toArray();
-        Arrays.stream(edges).filter(edge -> edge.getSource() == n).map(Edge::getTarget);
-        //return new Item[]{new LabelItem(n)};
         return new Item[0];
     }
 
diff --git a/src/main/java/fucoin/gui/gephi/PreviewSketch.java b/src/main/java/fucoin/gui/gephi/PreviewSketch.java
index 40db173..255cc1f 100644
--- a/src/main/java/fucoin/gui/gephi/PreviewSketch.java
+++ b/src/main/java/fucoin/gui/gephi/PreviewSketch.java
@@ -161,6 +161,7 @@ public class PreviewSketch extends JPanel implements MouseListener, MouseWheelLi
 
         Vector modelPos = new Vector(screenPos.x, screenPos.y);
         modelPos.sub(scaledTrans);
+        modelPos.mult((isRetina) ? 2f : 1f);
         modelPos.div(target.getScaling());
         modelPos.sub(target.getTranslate());
         return modelPos;
diff --git a/src/main/java/fucoin/gui/gephi/RendererTemplate.java b/src/main/java/fucoin/gui/gephi/RendererTemplate.java
index 20dc753..7a69717 100644
--- a/src/main/java/fucoin/gui/gephi/RendererTemplate.java
+++ b/src/main/java/fucoin/gui/gephi/RendererTemplate.java
@@ -26,7 +26,6 @@ public class RendererTemplate implements Renderer, MouseResponsiveRenderer {
         //Retrieve clicked node for the label:
         LabelItem label = (LabelItem) item;
         Node node = label.node;
-        System.out.println("Rendering");
 
         //Finally draw your graphics for the node label in each target
         if (target instanceof G2DTarget) {
-- 
GitLab