Lines 104-115
Link Here
|
104 |
private JXLabel limitRow; |
104 |
private JXLabel limitRow; |
105 |
private JXButton[] editButtons = new JXButton[5]; |
105 |
private JXButton[] editButtons = new JXButton[5]; |
106 |
private DataViewTableUI dataPanel; |
106 |
private DataViewTableUI dataPanel; |
|
|
107 |
private JXTableRowHeader rowHeader; |
107 |
private JScrollPane dataPanelScrollPane; |
108 |
private JScrollPane dataPanelScrollPane; |
108 |
private final DataViewPageContext pageContext; |
109 |
private final DataViewPageContext pageContext; |
109 |
private JXButton cancel; |
110 |
private JXButton cancel; |
110 |
private DataViewActionHandler actionHandler; |
111 |
private DataViewActionHandler actionHandler; |
111 |
private String imgPrefix = "/org/netbeans/modules/db/dataview/images/"; // NOI18N |
112 |
private String imgPrefix = "/org/netbeans/modules/db/dataview/images/"; // NOI18N |
112 |
|
113 |
|
|
|
114 |
private boolean showAbsoluteRowNumbers = DataViewSettings.getShowAbsoluteRowNumbers(); |
115 |
|
113 |
private static final int MAX_TAB_LENGTH = 25; |
116 |
private static final int MAX_TAB_LENGTH = 25; |
114 |
|
117 |
|
115 |
private final PropertyChangeListener pageContextListener = |
118 |
private final PropertyChangeListener pageContextListener = |
Lines 117-122
Link Here
|
117 |
@Override |
120 |
@Override |
118 |
public void propertyChange(PropertyChangeEvent evt) { |
121 |
public void propertyChange(PropertyChangeEvent evt) { |
119 |
updateTotalCountLabel(); |
122 |
updateTotalCountLabel(); |
|
|
123 |
updateRowOffset(); |
120 |
} |
124 |
} |
121 |
}; |
125 |
}; |
122 |
|
126 |
|
Lines 174-180
Link Here
|
174 |
//add resultset data panel |
178 |
//add resultset data panel |
175 |
dataPanel = new DataViewTableUI(this, actionHandler, dataView, pageContext); |
179 |
dataPanel = new DataViewTableUI(this, actionHandler, dataView, pageContext); |
176 |
dataPanelScrollPane = new JScrollPane(dataPanel); |
180 |
dataPanelScrollPane = new JScrollPane(dataPanel); |
177 |
JXTableRowHeader rowHeader = new JXTableRowHeader(dataPanel); |
181 |
rowHeader = new JXTableRowHeader(dataPanel); |
|
|
182 |
rowHeader.getHeaderTable().addMouseListener(createRowHeaderMouseListener()); |
178 |
dataPanelScrollPane.setRowHeaderView(rowHeader); |
183 |
dataPanelScrollPane.setRowHeaderView(rowHeader); |
179 |
dataPanelScrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, rowHeader.getTableHeader()); |
184 |
dataPanelScrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, rowHeader.getTableHeader()); |
180 |
|
185 |
|
Lines 185-190
Link Here
|
185 |
dataPanel.setModel(pageContext.getModel()); |
190 |
dataPanel.setModel(pageContext.getModel()); |
186 |
pageContext.addPropertyChangeListener(pageContextListener); |
191 |
pageContext.addPropertyChangeListener(pageContextListener); |
187 |
updateTotalCountLabel(); |
192 |
updateTotalCountLabel(); |
|
|
193 |
updateRowOffset(); |
188 |
} |
194 |
} |
189 |
|
195 |
|
190 |
void handleColumnUpdated() { |
196 |
void handleColumnUpdated() { |
Lines 213-218
Link Here
|
213 |
} |
219 |
} |
214 |
} |
220 |
} |
215 |
|
221 |
|
|
|
222 |
final void updateRowOffset() { |
223 |
rowHeader.updateRowOffset(showAbsoluteRowNumbers ? pageContext.getCurrentPos() - 1 : 0); |
224 |
} |
225 |
|
216 |
boolean isCommitEnabled() { |
226 |
boolean isCommitEnabled() { |
217 |
return commit.isEnabled(); |
227 |
return commit.isEnabled(); |
218 |
} |
228 |
} |
Lines 369-374
Link Here
|
369 |
|
379 |
|
370 |
return outputListener; |
380 |
return outputListener; |
371 |
} |
381 |
} |
|
|
382 |
|
383 |
private MouseListener createRowHeaderMouseListener() { |
384 |
final JPopupMenu popupMenu = new JPopupMenu(); |
385 |
final JCheckBoxMenuItem absoluteRowNumbers = new JCheckBoxMenuItem(NbBundle.getMessage(DataViewTableUI.class, "DataViewUI_ShowAbsoluteRowNumbers")); |
386 |
absoluteRowNumbers.setSelected(showAbsoluteRowNumbers); |
387 |
absoluteRowNumbers.addActionListener(new ActionListener() { |
388 |
@Override |
389 |
public void actionPerformed(ActionEvent e) { |
390 |
showAbsoluteRowNumbers = !showAbsoluteRowNumbers; |
391 |
updateRowOffset(); |
392 |
} |
393 |
}); |
394 |
popupMenu.add(absoluteRowNumbers); |
395 |
|
396 |
return new MouseUtils.PopupMouseAdapter() { |
397 |
@Override |
398 |
protected void showPopup(MouseEvent e) { |
399 |
popupMenu.show(rowHeader, e.getX(), e.getY()); |
400 |
} |
401 |
}; |
402 |
} |
403 |
|
372 |
private static final Insets BUTTON_INSETS = new Insets(2, 1, 0, 1); |
404 |
private static final Insets BUTTON_INSETS = new Insets(2, 1, 0, 1); |
373 |
|
405 |
|
374 |
private void processButton(AbstractButton button) { |
406 |
private void processButton(AbstractButton button) { |