Lines 43-53
Link Here
|
43 |
*/ |
43 |
*/ |
44 |
package org.netbeans.modules.db.dataview.output; |
44 |
package org.netbeans.modules.db.dataview.output; |
45 |
|
45 |
|
46 |
import java.awt.AWTEvent; |
|
|
47 |
import java.awt.Component; |
46 |
import java.awt.Component; |
48 |
import java.awt.Container; |
47 |
import java.awt.Container; |
49 |
import java.awt.Dimension; |
48 |
import java.awt.Dimension; |
50 |
import java.awt.EventQueue; |
|
|
51 |
import java.awt.FocusTraversalPolicy; |
49 |
import java.awt.FocusTraversalPolicy; |
52 |
import java.awt.Rectangle; |
50 |
import java.awt.Rectangle; |
53 |
import org.netbeans.modules.db.dataview.table.JXTableRowHeader; |
51 |
import org.netbeans.modules.db.dataview.table.JXTableRowHeader; |
Lines 126-147
Link Here
|
126 |
if (rowIndex != -1 && columnIndex != -1 && getModel().getRowCount() > 1) { |
124 |
if (rowIndex != -1 && columnIndex != -1 && getModel().getRowCount() > 1) { |
127 |
removeBtn.setEnabled(true); |
125 |
removeBtn.setEnabled(true); |
128 |
} |
126 |
} |
129 |
AWTEvent awtEvent = EventQueue.getCurrentEvent(); |
|
|
130 |
if (awtEvent instanceof KeyEvent) { |
131 |
KeyEvent keyEvt = (KeyEvent) awtEvent; |
132 |
if (keyEvt.getSource() != InsertRecordDialog.this) { |
133 |
return; |
134 |
} |
135 |
if (rowIndex == 0 && columnIndex == 0 && KeyStroke.getKeyStrokeForEvent(keyEvt).equals(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0))) { |
136 |
appendEmptyRow(); |
137 |
rowIndex = getRowCount() - 1; //Otherwise the selection switches to the first row |
138 |
editCellAt(rowIndex, 0); |
139 |
} else if (KeyStroke.getKeyStrokeForEvent(keyEvt).equals(KeyStroke.getKeyStroke(KeyEvent.VK_SHIFT + KeyEvent.VK_TAB, 0))) { |
140 |
editCellAt(rowIndex, columnIndex); |
141 |
} else { |
142 |
editCellAt(rowIndex, columnIndex); |
143 |
} |
144 |
} |
145 |
super.changeSelection(rowIndex, columnIndex, toggle, extend); |
127 |
super.changeSelection(rowIndex, columnIndex, toggle, extend); |
146 |
} |
128 |
} |
147 |
}; |
129 |
}; |