Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XText.java49
1 files changed, 28 insertions, 21 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XText.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XText.java
index 3127085660a..2f558562cfc 100644
--- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XText.java
+++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XText.java
@@ -22,6 +22,8 @@ import org.eclipse.osee.framework.ui.swt.ALayout;
import org.eclipse.osee.framework.ui.swt.Widgets;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.events.FocusAdapter;
+import org.eclipse.swt.events.FocusListener;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@@ -117,20 +119,6 @@ public class XText extends XWidget {
}
this.parent = parent;
-
- ModifyListener textListener = new ModifyListener() {
-
- @Override
- public void modifyText(ModifyEvent e) {
- if (sText != null) {
- debug("modifyText");
- text = sText.getText();
- validate();
- notifyXModifiedListeners();
- }
- }
- };
-
if (fillVertically) {
composite = new Composite(parent, SWT.NONE);
GridLayout layout = ALayout.getZeroMarginLayout(1, false);
@@ -188,7 +176,26 @@ public class XText extends XWidget {
sText.setLayoutData(gd);
sText.setMenu(getDefaultMenu());
- sText.addModifyListener(textListener);
+ sText.addModifyListener(new ModifyListener() {
+
+ @Override
+ public void modifyText(ModifyEvent e) {
+ if (Widgets.isAccessible(sText)) {
+ text = sText.getText();
+ notifyXModifiedListeners();
+ }
+ }
+ });
+ sText.addFocusListener(new FocusAdapter() {
+
+ @Override
+ public void focusLost(org.eclipse.swt.events.FocusEvent e) {
+ if (Widgets.isAccessible(sText)) {
+ text = sText.getText();
+ validate();
+ }
+ }
+ });
if (text != null) {
sText.setText(text);
}
@@ -412,6 +419,12 @@ public class XText extends XWidget {
}
}
+ public void addFocusListener(FocusListener focusListener) {
+ if (sText != null) {
+ sText.addFocusListener(focusListener);
+ }
+ }
+
public String get() {
if (debug) {
System.err.println("text set *" + text + "*");
@@ -511,12 +524,6 @@ public class XText extends XWidget {
this.dragableArtifact = dragableArtifact;
}
- public void debug(String str) {
- if (debug) {
- System.err.println("AText :" + str);
- }
- }
-
@Override
public IStatus isValid() {
IStatus status = super.isValid();

Back to the top