Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 131943 Details for
Bug 269195
Keyboard accessibility for 3.0 Session Bean wizard
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
patch
269195_patch.txt (text/plain), 7.23 KB, created by
Kaloyan Raev
on 2009-04-15 11:05:31 EDT
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Kaloyan Raev
Created:
2009-04-15 11:05:31 EDT
Size:
7.23 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jst.ejb.ui >Index: ejb_ui/org/eclipse/jst/ejb/ui/internal/wizard/Session2xInterfacesTable.java >=================================================================== >RCS file: /cvsroot/webtools/ejbtools/plugins/org.eclipse.jst.ejb.ui/ejb_ui/org/eclipse/jst/ejb/ui/internal/wizard/Session2xInterfacesTable.java,v >retrieving revision 1.3 >diff -u -r1.3 Session2xInterfacesTable.java >--- ejb_ui/org/eclipse/jst/ejb/ui/internal/wizard/Session2xInterfacesTable.java 13 Apr 2009 12:56:34 -0000 1.3 >+++ ejb_ui/org/eclipse/jst/ejb/ui/internal/wizard/Session2xInterfacesTable.java 15 Apr 2009 14:44:58 -0000 >@@ -20,7 +20,9 @@ > import org.eclipse.jface.dialogs.IDialogConstants; > import org.eclipse.jface.viewers.CellEditor; > import org.eclipse.jface.viewers.ICellModifier; >+import org.eclipse.jface.viewers.ISelection; > import org.eclipse.jface.viewers.IStructuredContentProvider; >+import org.eclipse.jface.viewers.IStructuredSelection; > import org.eclipse.jface.viewers.ITableLabelProvider; > import org.eclipse.jface.viewers.LabelProvider; > import org.eclipse.jface.viewers.TableViewer; >@@ -31,8 +33,12 @@ > import org.eclipse.swt.custom.TableEditor; > import org.eclipse.swt.events.ControlAdapter; > import org.eclipse.swt.events.ControlEvent; >+import org.eclipse.swt.events.FocusAdapter; >+import org.eclipse.swt.events.FocusEvent; > import org.eclipse.swt.events.SelectionEvent; > import org.eclipse.swt.events.SelectionListener; >+import org.eclipse.swt.events.TraverseEvent; >+import org.eclipse.swt.events.TraverseListener; > import org.eclipse.swt.graphics.Image; > import org.eclipse.swt.graphics.Point; > import org.eclipse.swt.graphics.Rectangle; >@@ -58,6 +64,8 @@ > > private Table table; > private TableViewer viewer; >+ private TextCellEditor textEditor; >+ > private IDataModel model; > private final static String ABBREVIATION_COLUMN = "abbreviation"; > private final static String CLASS_NAME_COLUMN = "className"; >@@ -130,7 +138,7 @@ > for(int i = 0; i < items.length; i++) { > final TableItem item = items[i]; > TableEditor editor = new TableEditor(getTable()); >- Button button = new Button(getTable(), SWT.FLAT); >+ final Button button = new Button(getTable(), SWT.FLAT); > button.setText("..."); > button.pack(); > >@@ -153,6 +161,17 @@ > } > > }); >+ >+ // accessibility: trigger button push when the RETURN hit is hit and the button is on focus >+ button.addTraverseListener(new TraverseListener() { >+ public void keyTraversed(TraverseEvent e) { >+ if (e.detail == SWT.TRAVERSE_RETURN) { >+ e.doit = false; >+ button.notifyListeners(SWT.Selection, new Event()); >+ } >+ } >+ }); >+ > editor.minimumWidth = 24; > editor.grabHorizontal = true; > editor.horizontalAlignment = SWT.LEFT; >@@ -186,16 +205,13 @@ > private void createTable() { > int style = SWT.SINGLE | SWT.BORDER | SWT.FULL_SELECTION; > >- setTable(new Table(this, style)); >+ table = new Table(this, style); > GridData gridData = new GridData(); >- //gridData.grabExcessVerticalSpace = true; >- //gridData.horizontalSpan = 2; > gridData.grabExcessHorizontalSpace = true; >-// gridData.horizontalAlignment = GridData.FILL; >- getTable().setLayoutData(gridData); >+ table.setLayoutData(gridData); > >- getTable().setLinesVisible(true); >- getTable().setHeaderVisible(false); >+ table.setLinesVisible(true); >+ table.setHeaderVisible(false); > > // 1st column abbreviation > TableColumn column = new TableColumn(getTable(), SWT.CENTER, 0); >@@ -208,8 +224,33 @@ > column = new TableColumn(getTable(), SWT.LEFT, 2); > column.setWidth(25); > >+ // accessibility: switch to cell editing when the RETURN key is hit >+ table.addTraverseListener(new TraverseListener() { >+ public void keyTraversed(TraverseEvent e) { >+ if (e.detail == SWT.TRAVERSE_RETURN) { >+ e.doit = false; >+ ISelection selection = viewer.getSelection(); >+ if (selection instanceof IStructuredSelection) { >+ IStructuredSelection ssel = (IStructuredSelection) selection; >+ Object element = ssel.getFirstElement(); >+ if (element != null) { >+ viewer.editElement(element, 1); >+ } >+ } >+ } >+ } >+ }); >+ >+ // accessibility: if there is no selection select the first row by default >+ table.addFocusListener(new FocusAdapter() { >+ public void focusGained(FocusEvent e) { >+ if (table.getSelectionCount() == 0) { >+ table.select(0); >+ } >+ } >+ }); >+ > this.addControlListener(new ControlAdapter() { >- > @Override > public void controlResized(ControlEvent e) { > Rectangle area = table.getParent().getClientArea(); >@@ -228,10 +269,7 @@ > column2.setWidth(tmp); > Point size = table.getSize(); > } >- > }); >- >- > } > > /** >@@ -254,18 +292,12 @@ > > // Create the cell editors > CellEditor[] editors = new CellEditor[columnNames.length]; >- >- TextCellEditor textEditor = new TextCellEditor(getTable()); >- ((Text) textEditor.getControl()).setTextLimit(60); >- // Column 1 : Completed (Checkbox) >+ textEditor = new TextCellEditor(getTable()); >+ ((Text) textEditor.getControl()).setTextLimit(256); >+ // Column 1 : business interface type - read only > editors[0] = null; >- >- // Column 2 : Description (Free text) >- >+ // Column 2 : business interface name > editors[1] = textEditor; >- >- // Column 3 : Owner (Combo Box) >- > > // Assign the cell editors to the viewer > viewer.setCellEditors(editors); >@@ -273,7 +305,7 @@ > viewer.setCellModifier(new ICellModifier() { > > public boolean canModify(Object element, String property) { >- if(property.equals(CLASS_NAME_COLUMN)) { >+ if (property.equals(CLASS_NAME_COLUMN)) { > return true; > } > return false; >@@ -281,7 +313,7 @@ > > public Object getValue(Object element, String property) { > Session2xInterfacesTableRow row = (Session2xInterfacesTableRow) element; >- if(property.equals(CLASS_NAME_COLUMN)) { >+ if (property.equals(CLASS_NAME_COLUMN)) { > return row.getClassName(); > } > return null; >@@ -290,7 +322,7 @@ > public void modify(Object element, String property, Object value) { > TableItem item = (TableItem) element; > Session2xInterfacesTableRow row = (Session2xInterfacesTableRow) item.getData(); >- if(property.equals(CLASS_NAME_COLUMN)) { >+ if (property.equals(CLASS_NAME_COLUMN)) { > row.setClassName((String) value); > } > viewer.update(row, null); >@@ -301,16 +333,10 @@ > viewer.setLabelProvider(new IntfTableLabelProvider()); > } > >- public void setTable(Table table) { >- this.table = table; >- } >- > public Table getTable() { > return table; > } > >- >- > /** > * <p>This method has been derived from example > * <a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet125.java?view=co">Snippet 125</a></p>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 269195
:
129215
| 131943