You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by tv...@apache.org on 2009/09/30 20:39:49 UTC

svn commit: r820380 - /incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java

Author: tvolkert
Date: Wed Sep 30 18:39:48 2009
New Revision: 820380

URL: http://svn.apache.org/viewvc?rev=820380&view=rev
Log:
Added "columnSelectionHorizontalGridColor" style to TerraTableViewSkin

Modified:
    incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java

Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java?rev=820380&r1=820379&r2=820380&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java Wed Sep 30 18:39:48 2009
@@ -66,6 +66,7 @@
     private Color highlightBackgroundColor;
     private Color alternateRowColor;
     private Color columnSelectionColor;
+    private Color columnSelectionHorizontalGridColor;
     private Color horizontalGridColor;
     private Color verticalGridColor;
     private boolean showHighlight;
@@ -93,6 +94,7 @@
         highlightBackgroundColor = theme.getColor(10);
         alternateRowColor = theme.getColor(11);
         columnSelectionColor = null;
+        columnSelectionHorizontalGridColor = null;
         horizontalGridColor = theme.getColor(11);
         verticalGridColor = theme.getColor(11);
 
@@ -390,7 +392,7 @@
             }
         }
 
-        // Paint the horizontal grid line
+        // Paint the horizontal grid lines
         graphics.setPaint(horizontalGridColor);
 
         if (showHorizontalGridLines) {
@@ -404,6 +406,34 @@
                     GraphicsUtilities.drawLine(graphics, 0, gridY, width, Orientation.HORIZONTAL);
                 }
             }
+
+            if (columnSelectionHorizontalGridColor != null) {
+                graphics.setColor(columnSelectionHorizontalGridColor);
+
+                columnX = 0;
+
+                for (int columnIndex = 0, columnCount = columns.getLength();
+                    columnIndex < columnCount; columnIndex++) {
+                    TableView.Column column = columns.get(columnIndex);
+                    int columnWidth = getColumnWidth(columnIndex);
+
+                    String columnName = column.getName();
+                    SortDirection sortDirection = tableView.getSort().get(columnName);
+                    if (sortDirection != null) {
+                        for (int rowIndex = rowStart; rowIndex <= rowEnd; rowIndex++) {
+                            int gridY = (rowIndex + 1) * (rowHeight + 1) - 1;
+
+                            if (rowIndex < rowCount - 1
+                                || includeTrailingHorizontalGridLine) {
+                                GraphicsUtilities.drawLine(graphics, columnX, gridY, columnWidth,
+                                    Orientation.HORIZONTAL);
+                            }
+                        }
+                    }
+
+                    columnX += columnWidth + 1;
+                }
+            }
         }
     }
 
@@ -801,6 +831,32 @@
         setColumnSelectionColor(theme.getColor(columnSelectionColor));
     }
 
+    public Color getColumnSelectionHorizontalGridColor() {
+        return columnSelectionHorizontalGridColor;
+    }
+
+    public void setColumnSelectionHorizontalGridColor(Color columnSelectionHorizontalGridColor) {
+        if (columnSelectionHorizontalGridColor == null) {
+            throw new IllegalArgumentException("columnSelectionHorizontalGridColor is null.");
+        }
+
+        this.columnSelectionHorizontalGridColor = columnSelectionHorizontalGridColor;
+        repaintComponent();
+    }
+
+    public final void setColumnSelectionHorizontalGridColor(String columnSelectionHorizontalGridColor) {
+        if (columnSelectionHorizontalGridColor == null) {
+            throw new IllegalArgumentException("columnSelectionHorizontalGridColor is null.");
+        }
+
+        setColumnSelectionHorizontalGridColor(GraphicsUtilities.decodeColor(columnSelectionHorizontalGridColor));
+    }
+
+    public final void setColumnSelectionHorizontalGridColor(int columnSelectionHorizontalGridColor) {
+        TerraTheme theme = (TerraTheme)Theme.getTheme();
+        setColumnSelectionHorizontalGridColor(theme.getColor(columnSelectionHorizontalGridColor));
+    }
+
     public Color getHorizontalGridColor() {
         return horizontalGridColor;
     }