# This patch file was generated by NetBeans IDE # Following Index: paths are relative to: /home/matthias/NetBeansProjects/core-main # This patch can be applied using context Tools: Patch action on respective folder. # It uses platform neutral UTF-8 encoding and \n newlines. # Above lines and this line are ignored by the patching process. Index: db.dataview/src/org/netbeans/modules/db/dataview/output/DataViewTableUI.java --- db.dataview/src/org/netbeans/modules/db/dataview/output/DataViewTableUI.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/output/DataViewTableUI.java Locally Modified (Based On LOCAL) @@ -146,17 +146,8 @@ @Override public TableCellRenderer getCellRenderer(int row, int column) { - try { - if (getModel().hasUpdates( - convertRowIndexToModel(row), - convertColumnIndexToModel(column))) { return new UpdatedResultSetCellRenderer(); } - } catch (IndexOutOfBoundsException ex) { - // Swallow it, caused by pack from JXTable - Bug #228753 - } - return super.getCellRenderer(row, column); - } @Override protected KeyListener createControKeyListener() { @@ -164,29 +155,24 @@ } private static class UpdatedResultSetCellRenderer extends ResultSetCellRenderer { - static int borderThickness = 1; - static Color emptyNullForeground; + static int borderThickness = 2; static Color selectedForeground; static Color unselectedForeground; private JComponent holder = new JComponent() {}; static { - Color emptyNullFromMngr = UIManager.getColor( - "nb.dataview.tablecell.edited.selected.emptyNull.foreground"); //NOI18N - emptyNullForeground = emptyNullFromMngr != null - ? emptyNullFromMngr - : new Color(245, 245, 245); // gray color Color selectedFgFromMngr = UIManager.getColor( "nb.dataview.tablecell.edited.selected.foreground"); //NOI18N selectedForeground = selectedFgFromMngr != null ? selectedFgFromMngr - : Color.ORANGE; + : new Color(229, 148, 0); Color unselectedFgFromMngr = UIManager.getColor( "nb.dataview.tablecell.edited.unselected.foreground"); //NOI18N unselectedForeground = unselectedFgFromMngr != null ? unselectedFgFromMngr : new Color(0, 128, 0); // green color } + public UpdatedResultSetCellRenderer() { holder.setLayout(new BorderLayout()); } @@ -202,32 +188,24 @@ DataViewTableUIModel model = (DataViewTableUIModel) table.getModel(); - Color color; + Color color = null; boolean override = false; + if (model.hasUpdates(modelRow, modelColumn)) { if (isSelected) { - if (! model.hasUpdates(modelRow, modelColumn)) { - color = emptyNullForeground; - override = true; - } else { color = selectedForeground; - override = true; - } } else { - if (! model.hasUpdates(modelRow, modelColumn)) { - color = table.getForeground(); - } else { color = unselectedForeground; + } override = true; } - } if(override && c instanceof JRendererCheckBox) { holder.removeAll(); holder.setBorder(new LineBorder(color, borderThickness)); holder.add(c); return holder; - } else { + } else if (color != null) { c.setForeground(color); } return c; @@ -251,6 +229,7 @@ editor.stopCellEditing(); } handler.deleteRecordActionPerformed(); + e.consume(); } else if (e.isControlDown() && e.getKeyChar() == KeyEvent.VK_0) { int row = getSelectedRow(); int col = getSelectedColumn(); @@ -266,6 +245,7 @@ setValueAt("", row, col); } setRowSelectionInterval(row, row); + e.consume(); } else if (e.isControlDown() && e.getKeyChar() == KeyEvent.VK_1) { int row = getSelectedRow(); int col = getSelectedColumn(); @@ -284,6 +264,7 @@ setValueAt("", row, col); } setRowSelectionInterval(row, row); + e.consume(); } } Index: db.dataview/src/org/netbeans/modules/db/dataview/table/CellFocusCustomRenderer.java --- db.dataview/src/org/netbeans/modules/db/dataview/table/CellFocusCustomRenderer.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/table/CellFocusCustomRenderer.java Locally Modified (Based On LOCAL) @@ -45,14 +45,17 @@ import java.awt.Color; import java.awt.Component; import javax.swing.JTable; +import javax.swing.UIManager; import javax.swing.table.DefaultTableCellRenderer; -/** - * - * @author Shankari - */ public class CellFocusCustomRenderer extends DefaultTableCellRenderer { + private final static Color selectedCellBackgroundMgr = UIManager.getColor( + "nb.dataview.tablecell.focused"); //NOI18N + private final static Color selectedCellBackground = selectedCellBackgroundMgr != null + ? selectedCellBackgroundMgr + : new Color(204,204,255); + public CellFocusCustomRenderer() { setOpaque(true); } @@ -61,8 +64,8 @@ public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row, int column) { super.getTableCellRendererComponent(table,value,isSelected,hasFocus,row,column); if (hasFocus) { - setBackground(new Color(204,204,255)); - setForeground(Color.BLACK); + setBackground(selectedCellBackground); + setForeground(table.getForeground()); } else if (isSelected) { setBackground(table.getSelectionBackground()); setForeground(table.getSelectionForeground()); Index: db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetCellRenderer.java --- db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetCellRenderer.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetCellRenderer.java Locally Modified (Based On LOCAL) @@ -202,10 +202,6 @@ Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); c.setFont(new Font(c.getFont().getFamily(), Font.ITALIC, 9)); ((JLabel) c).setToolTipText(value.toString()); - if (!isSelected) { - c.setForeground(Color.DARK_GRAY); - } - return c; } } Index: db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetJXTable.java --- db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetJXTable.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/table/ResultSetJXTable.java Locally Modified (Based On LOCAL) @@ -75,7 +75,6 @@ import org.jdesktop.swingx.renderer.CheckBoxProvider; import org.jdesktop.swingx.renderer.JRendererCheckBox; import org.jdesktop.swingx.renderer.StringValues; -import org.jdesktop.swingx.table.DatePickerCellEditor; import org.netbeans.modules.db.dataview.meta.DBColumn; import org.netbeans.modules.db.dataview.table.celleditor.*; import org.netbeans.modules.db.dataview.util.BinaryToStringConverter; @@ -218,7 +217,7 @@ setDefaultEditor(Boolean.class, new BooleanTableCellEditor(b)); try { - DatePickerCellEditor dateEditor = new DatePickerCellEditor(new SimpleDateFormat (DateType.DEFAULT_FOMAT_PATTERN)); + DateTimePickerCellEditor dateEditor = new DateTimePickerCellEditor(new SimpleDateFormat (DateType.DEFAULT_FOMAT_PATTERN)); setDefaultEditor(java.sql.Date.class, dateEditor); } catch (NullPointerException npe) { mLogger.log(Level.WARNING, "While creating DatePickerCellEditor was thrown " + npe, npe); Index: db.dataview/src/org/netbeans/modules/db/dataview/table/celleditor/DateTimePickerCellEditor.java --- db.dataview/src/org/netbeans/modules/db/dataview/table/celleditor/DateTimePickerCellEditor.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/table/celleditor/DateTimePickerCellEditor.java Locally Modified (Based On LOCAL) @@ -57,8 +57,6 @@ import javax.swing.UIManager; import javax.swing.table.TableCellEditor; import org.jdesktop.swingx.JXDatePicker; -import org.netbeans.modules.db.dataview.meta.DBColumn; -import org.netbeans.modules.db.dataview.table.ResultSetJXTable; import org.netbeans.modules.db.dataview.util.DataViewUtils; import org.netbeans.modules.db.dataview.util.JXDateTimePicker; import org.netbeans.modules.db.dataview.util.TimestampType; @@ -138,17 +136,16 @@ protected Timestamp getValueAsTimestamp(Object value) { if (isEmpty(value) || DataViewUtils.isSQLConstantString(value, null)) { return new Timestamp(System.currentTimeMillis()); - } - - if (value instanceof Timestamp) { + } else if (value instanceof Timestamp) { return (Timestamp) value; - } - if (value instanceof Long) { + } else if (value instanceof java.util.Date) { + return new Timestamp(((java.util.Date) value).getTime()); + } else if (value instanceof java.util.Calendar) { + return new Timestamp(((java.util.Calendar) value).getTime().getTime()); + } else if (value instanceof Long) { return new Timestamp((Long) value); - } - if (value instanceof String) { + } else if (value instanceof String) { try { - return new Timestamp(dateFormat.parse((String) value).getTime()); } catch (ParseException e) { //mLogger.log(Level.SEVERE, e.getMessage(), e.getMessage()); Index: db.dataview/src/org/netbeans/modules/db/dataview/util/BasicDateTimePickerUI.java --- db.dataview/src/org/netbeans/modules/db/dataview/util/BasicDateTimePickerUI.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/util/BasicDateTimePickerUI.java Locally Modified (Based On LOCAL) Index: db.dataview/src/org/netbeans/modules/db/dataview/util/JXDateTimePicker.java --- db.dataview/src/org/netbeans/modules/db/dataview/util/JXDateTimePicker.java Base (BASE) +++ db.dataview/src/org/netbeans/modules/db/dataview/util/JXDateTimePicker.java Locally Modified (Based On LOCAL) @@ -378,10 +378,10 @@ _monthView.setMonthStringForeground(UIManager.getColor("nb.dataview.jxdatetimepicker.monthStringForeground")); //NOI18N } if (UIManager.getColor("nb.dataview.jxdatetimepicker.daysOfTheWeekForeground") != null) { //NOI18N - _monthView.setMonthStringForeground(UIManager.getColor("nb.dataview.jxdatetimepicker.daysOfTheWeekForeground")); //NOI18N + _monthView.setDaysOfTheWeekForeground(UIManager.getColor("nb.dataview.jxdatetimepicker.daysOfTheWeekForeground")); //NOI18N } if (UIManager.getColor("nb.dataview.jxdatetimepicker.todayBackground") != null) { //NOI18N - _monthView.setMonthStringForeground(UIManager.getColor("nb.dataview.jxdatetimepicker.todayBackground")); //NOI18N + _monthView.setTodayBackground(UIManager.getColor("nb.dataview.jxdatetimepicker.todayBackground")); //NOI18N } _monthView.addPropertyChangeListener(getMonthViewListener()); }