anti_aliasing on
[jalview.git] / src / jalview / gui / SeqCanvas.java
index f9ab015..d3e5d6d 100755 (executable)
@@ -10,7 +10,7 @@ public class SeqCanvas extends JPanel
 {\r
      FeatureRenderer fr;\r
     Image             img;\r
-    Graphics          gg;\r
+    Graphics2D          gg;\r
     int               imgWidth;\r
     int               imgHeight;\r
 \r
@@ -72,8 +72,9 @@ public class SeqCanvas extends JPanel
       imgWidth  = getWidth();\r
       imgHeight = getHeight();\r
       img = createImage(imgWidth,imgHeight);\r
-      gg  = img.getGraphics();\r
+      gg  = (Graphics2D)img.getGraphics();\r
       gg.setFont(av.getFont());\r
+      gg.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);\r
       paintFlag = false;\r
     }\r
 \r
@@ -84,7 +85,8 @@ public class SeqCanvas extends JPanel
     av.setChunkHeight(chunkHeight);\r
     av.setChunkWidth(chunkWidth);\r
 \r
-    fillBackground(gg,Color.WHITE,0,0,imgWidth,imgHeight);\r
+    gg.setColor(Color.WHITE);\r
+    gg.fillRect(0,0,imgWidth,imgHeight);\r
 \r
     if (av.getWrapAlignment())\r
       drawWrappedPanel(gg, getWidth(), getHeight(), av.startRes);\r
@@ -122,9 +124,10 @@ public class SeqCanvas extends JPanel
   }\r
 \r
 \r
-  public void drawPanel(Graphics g,int x1,int x2, int y1, int y2,int startx, int starty,int offset) {\r
+  public void drawPanel(Graphics g1,int x1,int x2, int y1, int y2,int startx, int starty,int offset) {\r
 \r
 \r
+   Graphics2D g = (Graphics2D)g1;\r
     g.setFont(av.getFont());\r
     RendererI sr = av.getRenderer();\r
 \r
@@ -213,9 +216,15 @@ public class SeqCanvas extends JPanel
               oldY = sy;\r
               inGroup = true;\r
               if (group == av.getSelectionGroup())\r
-                g.setColor(Color.RED.brighter());\r
+              {\r
+                g.setStroke(new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 3f, new float[]{5f,2f,2f}, 0f ));\r
+                g.setColor(Color.RED);\r
+              }\r
               else\r
+              {\r
+                g.setStroke(new BasicStroke());\r
                 g.setColor(group.getOutlineColour());\r
+              }\r
             }\r
           }\r
           else\r
@@ -272,10 +281,6 @@ public class SeqCanvas extends JPanel
 \r
   }\r
 \r
-  public void fillBackground(Graphics g,Color c, int x1,int y1,int width,int height) {\r
-    g.setColor(c);\r
-    g.fillRect(x1,y1,width,height);\r
-  }\r
 \r
   public int getChunkWidth() {\r
     return chunkWidth;\r