[vcs-log] paintFadeOut can be static
authorJulia Beliaeva <Julia.Beliaeva@jetbrains.com>
Tue, 18 Oct 2016 14:36:36 +0000 (17:36 +0300)
committerJulia Beliaeva <Julia.Beliaeva@jetbrains.com>
Thu, 27 Oct 2016 15:19:37 +0000 (18:19 +0300)
This allows to remove a weird extra customize call used just to set a background color.

platform/vcs-log/impl/src/com/intellij/vcs/log/ui/render/GraphCommitCellRenderer.java
platform/vcs-log/impl/src/com/intellij/vcs/log/ui/render/LabelPainter.java

index da6fab9b128815e756d0d24db57be62987431539..0f0f2f1745dc84a07eae2105d2ecb4deec79528f 100644 (file)
@@ -284,18 +284,13 @@ public class GraphCommitCellRenderer extends TypeSafeTableCellRenderer<GraphComm
           nextWidth = myEmptyPainter.getSize().width;
         }
 
-        if (row == 0 && table.getRowCount() == 1) {
-          customizeRefsPainter(myEmptyPainter, ContainerUtil.emptyList(), foreground, myLogData, myComponent);
-        }
         myWidth = Math.max(Math.max(prevWidth, nextWidth), LabelPainter.GRADIENT_WIDTH);
       }
     }
 
     public void paint(@NotNull Graphics2D g2, int x, int y, int height) {
       GraphicsConfig config = GraphicsUtil.setupAAPainting(g2);
-
-      myEmptyPainter.paintFadeOut(g2, x, y, myWidth, height);
-
+      LabelPainter.paintFadeOut(g2, x, y, myWidth, height, myComponent.getBackground());
       config.restore();
     }
 
index 0877bda5f63d20861332653e867d4e421f354d2c..46418cb56607e24f51f2efcb80d9267f71e09bbf 100644 (file)
@@ -153,7 +153,7 @@ public class LabelPainter implements ReferencePainter {
     g2.setFont(getReferenceFont());
     g2.setStroke(new BasicStroke(1.5f));
 
-    x = paintFadeOut(g2, x, y, myWidth, height);
+    x = paintFadeOut(g2, x, y, myWidth, height, myBackground);
 
     FontMetrics fontMetrics = g2.getFontMetrics();
     for (Pair<String, LabelIcon> label : myLabels) {
@@ -171,14 +171,16 @@ public class LabelPainter implements ReferencePainter {
     config.restore();
   }
 
-  public int paintFadeOut(@NotNull Graphics2D g2, int x, int y, int width, int height) {
-    g2.setPaint(
-      new GradientPaint(x, y, new Color(myBackground.getRed(), myBackground.getGreen(), myBackground.getBlue(), 0), x + GRADIENT_WIDTH, y,
-                        myBackground));
+  public static int paintFadeOut(@NotNull Graphics2D g2, int x, int y, int width, int height, @NotNull Color background) {
+    //noinspection UseJBColor
+    g2.setPaint(new GradientPaint(x, y,
+                                  new Color(background.getRed(), background.getGreen(), background.getBlue(), 0),
+                                  x + GRADIENT_WIDTH, y,
+                                  background));
     g2.fill(new Rectangle(x, y, GRADIENT_WIDTH, height));
     x += GRADIENT_WIDTH;
 
-    g2.setColor(myBackground);
+    g2.setColor(background);
     g2.fillRect(x, y, width - GRADIENT_WIDTH, height);
     return x;
   }