Hi Christopher,
Thanks a lot! This bug is not present in a nightly build now
indeed. Sorry for disturbing you.
Best regards,
Vadym
From: nebula-dev-bounces@xxxxxxxxxxx
[mailto:nebula-dev-bounces@xxxxxxxxxxx] On Behalf Of Christopher J Gross
Sent: Wednesday, January 02, 2008 6:44 PM
To: Nebula Dev
Subject: Re: [nebula-dev] Pressing Arrow Down Key right after focusing
and selection of some cell in Grid programmatically leads to
NullPointerException.
Hi Vadym,
I just tried
your snippet and I can't reproduce the problem. Your description does
sounds familar though. Perhaps its a bug that was recently fixed.
Could you try downloading a recent nightly build and see if that fixes
the problem?
Thanks,
-Chris
From:
|
"Vadym
Yepishov" <vye@xxxxxxxxxxx>
|
To:
|
<nebula-dev@xxxxxxxxxxx>
|
Date:
|
12/26/2007
12:14 PM
|
Subject:
|
[nebula-dev]
Pressing Arrow Down Key right after focusing and
selection of some cell in Grid programmatically leads to
NullPointerException.
|
Hi guys,
When I try to
focus and select some cell in a grid and right after this to press “Arrow Down”
key, I have got NullPointerException.
I have used
the first snippet of grid (and changed it a little bit J) to reproduce the problem. Here is
the snippet:
package
com.maconomy.widgets.snippets;
import
org.eclipse.nebula.widgets.grid.Grid;
import
org.eclipse.nebula.widgets.grid.GridColumn;
import
org.eclipse.nebula.widgets.grid.GridItem;
import
org.eclipse.swt.SWT;
import
org.eclipse.swt.events.SelectionAdapter;
import
org.eclipse.swt.events.SelectionEvent;
import
org.eclipse.swt.graphics.Point;
import
org.eclipse.swt.layout.GridLayout;
import
org.eclipse.swt.widgets.Button;
import
org.eclipse.swt.widgets.Display;
import
org.eclipse.swt.widgets.Shell;
/**
*
Creates a simple grid and a button for focusing and selection of the first cell
* of
the grid.
*/
public class
MxSnippet001GridCellFocusingAndSelection {
/**
* Main entry.
* @param args command line arguments
*/
public
static void main(final String [] args) {
final Display display = new Display ();
final Shell shell = new Shell (display);
//
shell.setLayout(new FillLayout());
// The following code line was inserted instead of the line commented
out above in
// order to be able to add a button below the grid.
shell.setLayout(new GridLayout(1, false));
final Grid grid = new Grid(shell, SWT.BORDER | SWT.V_SCROLL |
SWT.H_SCROLL);
grid.setHeaderVisible(true);
final GridColumn column = new GridColumn(grid, SWT.NONE);
column.setTree(true);
column.setText("Column 1");
column.setWidth(100);
final GridItem item1 = new GridItem(grid, SWT.NONE);
item1.setText("Root Item");
//
final GridItem item2 = new GridItem(item1, SWT.NONE);
// The following line was inserted instead of the line commented out
above.
final GridItem item2 = new GridItem(grid, SWT.NONE);
item2.setText("Second item");
//
final GridItem item3 = new GridItem(item2, SWT.NONE);
// The following line was inserted instead of the line commented out
above.
final GridItem item3 = new GridItem(grid, SWT.NONE);
item3.setText("Third Item");
// The following code is added to demonstrate the defect with the grid
cell
// focusing and selection.
grid.setCellSelectionEnabled(true);
// The following button is used to focus and select the first cell of
the grid.
// Try to press "Arrow Down" key right after clicking on this
button.
final Button button = new Button(shell, SWT.BORDER);
button.addSelectionListener(new SelectionAdapter() {
/** {@inheritDoc} */
@Override
public void widgetSelected(final SelectionEvent e) {
grid.forceFocus();
// We tried to use the following three code lines in order
to both focus and
// select some cell of the grid, but as it was found, the
third code line leads
// to the NullPointerException. If we do not use the third
line, the cell is in
// fact selected, but NOT FOCUSED (and focusing is what we
need).
grid.setCellSelection(new Point(0, 0));
grid.setFocusItem(grid.getItem(0));
// When you comment out the following code line the first
cell will be selected
// but NOT FOCUSED. You will see that the first cell of
the grid being not
// focused is indicated by the fact that the border of the
cell is not present.
// If you do not comment the line the first cell will be
both focused and selected,
// but pressing "Arrow Down" key leads to
NullPointerException.
grid.setFocusColumn(grid.getColumn(0));
}
});
button.setText("Click this button to select and focus the first
cell of the grid. " +
"Right after clicking this button press \"Arrow
Down\" key.");
//shell.setSize(200,200);
// The following line was inserted instead of the line commented out
above.
shell.pack();
shell.open ();
while (!shell.isDisposed()) {
if (!display.readAndDispatch ()) display.sleep ();
}
display.dispose ();
}
}
Do you know
why it might be a problem?
Best regards,
Vadym
Yepishov
_______________________________________________
nebula-dev mailing list
nebula-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/nebula-dev