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 276863 Details for
Bug 344898
An extra SWT.FocusOut event occurs when I click on a combo box's "down arrow" to show it's list
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
snippet
Snippet.java (text/x-java), 3.02 KB, created by
Xi Yan
on 2018-12-07 11:42:40 EST
(
hide
)
Description:
snippet
Filename:
MIME Type:
Creator:
Xi Yan
Created:
2018-12-07 11:42:40 EST
Size:
3.02 KB
patch
obsolete
>/******************************************************************************* > * Copyright (c) 2000, 2016 IBM Corporation and others. > * > * This program and the accompanying materials > * are made available under the terms of the Eclipse Public License 2.0 > * which accompanies this distribution, and is available at > * https://www.eclipse.org/legal/epl-2.0/ > * > * SPDX-License-Identifier: EPL-2.0 > * > * Contributors: > * IBM Corporation - initial API and implementation > *******************************************************************************/ >package org.eclipse.swt.snippets; > >/* > * TableEditor example snippet: edit a cell in a table (in place, fancy) > * > * For a list of all SWT example snippets see > * http://www.eclipse.org/swt/snippets/ > */ >import org.eclipse.swt.*; >import org.eclipse.swt.custom.*; >import org.eclipse.swt.graphics.*; >import org.eclipse.swt.layout.*; >import org.eclipse.swt.widgets.*; > >public class Snippet124 { >public static void main (String[] args) { > Display display = new Display (); > Shell shell = new Shell (display); > shell.setLayout (new FillLayout ()); > final Table table = new Table(shell, SWT.BORDER | SWT.MULTI); > table.setLinesVisible (true); > for (int i=0; i<3; i++) { > TableColumn column = new TableColumn (table, SWT.NONE); > column.setWidth(100); > } > for (int i=0; i<3; i++) { > TableItem item = new TableItem (table, SWT.NONE); > item.setText(new String [] {"" + i, "" + i , "" + i}); > } > final TableEditor editor = new TableEditor (table); > editor.horizontalAlignment = SWT.LEFT; > editor.grabHorizontal = true; > table.addListener (SWT.MouseDown, event -> { > Rectangle clientArea = table.getClientArea (); > Point pt = new Point (event.x, event.y); > int index = table.getTopIndex (); > while (index < table.getItemCount ()) { > boolean visible = false; > final TableItem item = table.getItem (index); > for (int i=0; i<table.getColumnCount (); i++) { > Rectangle rect = item.getBounds (i); > if (rect.contains (pt)) { > final int column = i; > final Combo text = new Combo (table, SWT.NONE); > Listener textListener = e -> { > switch (e.type) { > case SWT.FocusOut: > item.setText (column, text.getText ()); > text.dispose (); > System.out.println("FocusOut"); > break; > case SWT.Traverse: > switch (e.detail) { > case SWT.TRAVERSE_RETURN: > item.setText (column, text.getText ()); > //FALL THROUGH > case SWT.TRAVERSE_ESCAPE: > text.dispose (); > e.doit = false; > } > break; > } > }; > text.addListener (SWT.FocusOut, textListener); > text.addListener (SWT.Traverse, textListener); > editor.setEditor (text, item, i); > text.setText (item.getText (i)); > text.add("hello"); > text.setFocus (); > return; > } > if (!visible && rect.intersects (clientArea)) { > visible = true; > } > } > if (!visible) return; > index++; > } > }); > shell.pack (); > shell.open (); > while (!shell.isDisposed ()) { > if (!display.readAndDispatch ()) display.sleep (); > } > display.dispose (); >} >} >
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 Raw
Actions:
View
Attachments on
bug 344898
: 276863