< prev index next >

src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTableUI.java

Print this page

        

@@ -1318,10 +1318,16 @@
                 return;
             }
 
             if (!loc.isInsertRow() && !loc.isInsertColumn()) {
                 Rectangle rect = table.getCellRect(loc.getRow(), loc.getColumn(), false);
+                if(table.getClientProperty("Table.showWholeRowAsDropTarget") == Boolean.TRUE) {
+                    // used by WindowsFileChooserUI in Details view
+                    
+                    rect.x = 0;
+                    rect.width = table.getWidth();
+                }
                 if (rect != null) {
                     table.repaint(rect);
                 }
                 return;
             }

@@ -2050,10 +2056,14 @@
         }
         return -1;
     }
 
     private void paintCells(Graphics g, int rMin, int rMax, int cMin, int cMax) {
+        boolean cellWidthHack = table.getClientProperty(
+                "BasicTableUI.cellWidthHack") == Boolean.TRUE;
+        // used by WindowsFileTableUI to remove borders between cells event when a row is selected
+        
         JTableHeader header = table.getTableHeader();
         TableColumn draggedColumn = (header == null) ? null : header.getDraggedColumn();
 
         TableColumnModel cm = table.getColumnModel();
         int columnMargin = cm.getColumnMargin();

@@ -2066,10 +2076,12 @@
                 cellRect = table.getCellRect(row, cMin, false);
                 for(int column = cMin; column <= cMax; column++) {
                     aColumn = cm.getColumn(column);
                     columnWidth = aColumn.getWidth();
                     cellRect.width = columnWidth - columnMargin;
+                    if(cellWidthHack)
+                        cellRect.width += 1;
                     if (aColumn != draggedColumn) {
                         paintCell(g, cellRect, row, column);
                     }
                     cellRect.x += columnWidth;
                 }
< prev index next >