JBoss Tools SVN: r36847 - trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2011-12-01 15:09:36 -0500 (Thu, 01 Dec 2011)
New Revision: 36847
Added:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java
Removed:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java
Log:
reverted patch with full document rebuild optimization, because it has problem with loosing events
applied previous patch which seems to have right behavior without optimization
Deleted: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java 2011-12-01 19:48:11 UTC (rev 36846)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -1,40 +0,0 @@
-package org.jboss.tools.vpe.editor;
-
-public class ActiveEditorSwitcher {
- public static final int ACTIVE_EDITOR_CANNOT = 0;
- public static final int ACTIVE_EDITOR_NONE = 1;
- public static final int ACTIVE_EDITOR_SOURCE = 2;
- public static final int ACTIVE_EDITOR_VISUAL = 3;
-
- private int type = ACTIVE_EDITOR_CANNOT;
- private VpeController vpeController;
- private VpeEditorPart editPart;
-
- public ActiveEditorSwitcher(VpeController vpeController, VpeEditorPart editPart) {
- this.vpeController = vpeController;
- this.editPart = editPart;
- }
-
- public void initActiveEditor() {
- type = ACTIVE_EDITOR_NONE;
- }
-
- public void destroyActiveEditor() {
- type = ACTIVE_EDITOR_CANNOT;
- }
-
- public boolean startActiveEditor(int newType) {
- if (type != ACTIVE_EDITOR_NONE || type == ACTIVE_EDITOR_NONE && newType == ACTIVE_EDITOR_SOURCE
- && editPart.getVisualMode() == VpeEditorPart.SOURCE_MODE) {
- return false;
- } else {
- type = newType;
- return true;
- }
- }
-
- public void stopActiveEditor() {
- vpeController.onRefresh();
- type = ACTIVE_EDITOR_NONE;
- }
-}
Added: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java (rev 0)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -0,0 +1,40 @@
+package org.jboss.tools.vpe.editor;
+
+public class ActiveEditorSwitcher {
+ public static final int ACTIVE_EDITOR_CANNOT = 0;
+ public static final int ACTIVE_EDITOR_NONE = 1;
+ public static final int ACTIVE_EDITOR_SOURCE = 2;
+ public static final int ACTIVE_EDITOR_VISUAL = 3;
+
+ private int type = ACTIVE_EDITOR_CANNOT;
+ private VpeController vpeController;
+ private VpeEditorPart editPart;
+
+ public ActiveEditorSwitcher(VpeController vpeController, VpeEditorPart editPart) {
+ this.vpeController = vpeController;
+ this.editPart = editPart;
+ }
+
+ public void initActiveEditor() {
+ type = ACTIVE_EDITOR_NONE;
+ }
+
+ public void destroyActiveEditor() {
+ type = ACTIVE_EDITOR_CANNOT;
+ }
+
+ public boolean startActiveEditor(int newType) {
+ if (type != ACTIVE_EDITOR_NONE || type == ACTIVE_EDITOR_NONE && newType == ACTIVE_EDITOR_SOURCE
+ && editPart.getVisualMode() == VpeEditorPart.SOURCE_MODE) {
+ return false;
+ } else {
+ type = newType;
+ return true;
+ }
+ }
+
+ public void stopActiveEditor() {
+ vpeController.onRefresh();
+ type = ACTIVE_EDITOR_NONE;
+ }
+}
Property changes on: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/ActiveEditorSwitcher.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2011-12-01 19:48:11 UTC (rev 36846)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -42,6 +42,8 @@
import org.eclipse.swt.custom.LineStyleListener;
import org.eclipse.swt.custom.StyleRange;
import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.events.MenuEvent;
import org.eclipse.swt.events.MenuListener;
import org.eclipse.swt.events.SelectionEvent;
@@ -562,7 +564,6 @@
return;
}
// visualBuilder.rebuildFlag = false;
- boolean rebuildWholeDocumentFlag = false;
switch (eventType) {
case INodeNotifier.CHANGE:
sourceChangeFlag = true;
@@ -575,13 +576,12 @@
boolean update = visualBuilder.setText((Node) notifier);
visualEditor.showResizer();
// Added by Max Areshkau JBIDE-1554
- if (!update) {
- rebuildWholeDocumentFlag = visualBuilder.updateNode((Node) notifier);
- }
+ if (!update)
+ visualBuilder.updateNode((Node) notifier);
} else if (type == Node.COMMENT_NODE) {
if ("yes".equals(VpePreference.SHOW_COMMENTS.getValue())) { //$NON-NLS-1$
visualBuilder.clearSelectionRectangle();
- rebuildWholeDocumentFlag = visualBuilder.updateNode((Node) notifier);
+ visualBuilder.updateNode((Node) notifier);
}
} else if (feature != null
&& ((Node) feature).getNodeType() == Node.ATTRIBUTE_NODE) {
@@ -590,7 +590,7 @@
if ((Attr) feature == lastRemovedAttr
&& !attrName.equals(lastRemovedAttrName)) {
lastRemovedAttr = null;
- rebuildWholeDocumentFlag = visualBuilder.removeAttribute((Element) notifier,
+ visualBuilder.removeAttribute((Element) notifier,
lastRemovedAttrName);
}
visualBuilder.setAttribute((Element) notifier,
@@ -598,7 +598,7 @@
} else {
lastRemovedAttr = (Attr) feature;
lastRemovedAttrName = ((Attr) feature).getName();
- rebuildWholeDocumentFlag = visualBuilder.removeAttribute((Element) notifier,
+ visualBuilder.removeAttribute((Element) notifier,
lastRemovedAttrName);
}
}
@@ -630,7 +630,7 @@
*/
if (Node.COMMENT_NODE == ((Node) feature).getNodeType()) {
commentRemoveCount++;
- rebuildWholeDocumentFlag = visualBuilder.updateNode((Node) feature);
+ visualBuilder.updateNode((Node) feature);
commentNodeChanged = true;
} else {
commentRemoveCount--;
@@ -652,7 +652,7 @@
if (!commentNodeChanged ||(commentNodeChanged && (commentAddCount != 1 || commentRemoveCount != 1))) {
visualEditor.hideResizer();
visualBuilder.clearSelectionRectangle();
- rebuildWholeDocumentFlag = visualBuilder.updateNode((Node) notifier);
+ visualBuilder.updateNode((Node) notifier);
} else {
commentNodeChanged = false;
}
@@ -678,10 +678,6 @@
}
break;
}
- if (rebuildWholeDocumentFlag) {
- // whole document rebuild occur -> so cleanup change events queue
- getChangeEvents().clear();
- }
} finally {
// fix for jbide-675, swithcer is null when vpecontroller is
// disposed
@@ -1954,7 +1950,6 @@
if (monitor.isCanceled()) {
return Status.CANCEL_STATUS;
}
- getChangeEvents().clear();
reinitImpl();
return Status.OK_STATUS;
}
Deleted: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java 2011-12-01 19:48:11 UTC (rev 36846)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -1,113 +0,0 @@
-package org.jboss.tools.vpe.editor;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.ui.progress.UIJob;
-import org.jboss.tools.vpe.VpePlugin;
-import org.jboss.tools.vpe.editor.toolbar.format.FormatControllerManager;
-import org.jboss.tools.vpe.messages.VpeUIMessages;
-
-public class VpeUpdateJob extends UIJob {
-
- protected boolean execState = false;
-
- protected VpeController vpeController;
- protected ActiveEditorSwitcher switcher;
-
- public VpeUpdateJob(VpeController vpeController, ActiveEditorSwitcher switcher) {
- super(VpeUIMessages.VPE_UPDATE_JOB_TITLE);
- this.vpeController = vpeController;
- this.switcher = switcher;
- }
-
- protected synchronized void setExecState(boolean execState) {
- this.execState = execState;
- }
-
- protected synchronized boolean isExecState() {
- return execState;
- }
-
- public void interrupt() {
- setExecState(false);
- }
-
- public void execute() {
- setExecState(true);
- schedule();
- }
-
- @Override
- public IStatus runInUIThread(IProgressMonitor monitor) {
- IStatus res = Status.OK_STATUS;
- final int totalWork = 10000;
- final int maxQueue4WholeRefresh = 30;
- monitor.beginTask(VpeUIMessages.VPE_UPDATE_JOB_TITLE, totalWork);
- final List<VpeEventBean> changeEvents = vpeController.getChangeEvents();
- while (changeEvents.size() > 0) {
- if (!isExecState()) {
- break;
- }
- if (changeEvents.size() > maxQueue4WholeRefresh) {
- changeEvents.clear();
- monitor.worked((int) (totalWork / 2));
- vpeController.reinitImpl();
- monitor.worked(totalWork);
- break;
- }
- monitor.worked((int) (totalWork / changeEvents.size()));
- VpeEventBean eventBean = changeEvents.remove(0);
- if (monitor.isCanceled()) {
- // Yahor Radtsevich: the following line is commented as fix of JBIDE-3758: VPE autorefresh is broken in
- // some cases. Now if the change events queue should be cleared, the user have to do it explicitly.
- // getChangeEvents().clear();
- res = Status.CANCEL_STATUS;
- break;
- }
- try {
- vpeController.notifyChangedInUiThread(eventBean);
- } catch (VpeDisposeException ex) {
- // JBIDE-675 we will get this exception if user
- // close editor,
- // when update visual editor job is running, we
- // shoud ignore this
- // exception
- break;
- } catch (NullPointerException ex) {
- if (switcher != null) {
- throw ex;
- } else {
- // class was disposed and exception result
- // of that we can't stop
- // refresh job in time, so we just ignore
- // this exception
- }
- } catch (RuntimeException ex) {
- VpePlugin.getPluginLog().logError(ex);
- }
- }
- if (isExecState() && res == Status.OK_STATUS) {
- // cause is to lock calls others events
- if (switcher != null && switcher.startActiveEditor(ActiveEditorSwitcher.ACTIVE_EDITOR_SOURCE)) {
- try {
- vpeController.sourceSelectionChanged();
- // https://jira.jboss.org/jira/browse/JBIDE-3619 VpeViewUpdateJob takes place after toolbar selection
- // have been updated. New nodes haven't been put into dom mapping thus toolbar becomes desabled.
- // Updating toolbar state here takes into account updated vpe nodes.
- final FormatControllerManager tfcm = vpeController.getToolbarFormatControllerManager();
- if (tfcm != null) {
- tfcm.selectionChanged();
- }
- } finally {
- switcher.stopActiveEditor();
- }
- }
- }
- monitor.done();
- return res;
- }
-
-}
\ No newline at end of file
Added: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java (rev 0)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -0,0 +1,113 @@
+package org.jboss.tools.vpe.editor;
+
+import java.util.List;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.ui.progress.UIJob;
+import org.jboss.tools.vpe.VpePlugin;
+import org.jboss.tools.vpe.editor.toolbar.format.FormatControllerManager;
+import org.jboss.tools.vpe.messages.VpeUIMessages;
+
+public class VpeUpdateJob extends UIJob {
+
+ protected boolean execState = false;
+
+ protected VpeController vpeController;
+ protected ActiveEditorSwitcher switcher;
+
+ public VpeUpdateJob(VpeController vpeController, ActiveEditorSwitcher switcher) {
+ super(VpeUIMessages.VPE_UPDATE_JOB_TITLE);
+ this.vpeController = vpeController;
+ this.switcher = switcher;
+ }
+
+ protected synchronized void setExecState(boolean execState) {
+ this.execState = execState;
+ }
+
+ protected synchronized boolean isExecState() {
+ return execState;
+ }
+
+ public void interrupt() {
+ setExecState(false);
+ }
+
+ public void execute() {
+ setExecState(true);
+ schedule();
+ }
+
+ @Override
+ public IStatus runInUIThread(IProgressMonitor monitor) {
+ IStatus res = Status.OK_STATUS;
+ final int totalWork = 10000;
+ final int maxQueue4WholeRefresh = 30;
+ monitor.beginTask(VpeUIMessages.VPE_UPDATE_JOB_TITLE, totalWork);
+ final List<VpeEventBean> changeEvents = vpeController.getChangeEvents();
+ while (changeEvents.size() > 0) {
+ if (!isExecState()) {
+ break;
+ }
+ if (changeEvents.size() > maxQueue4WholeRefresh) {
+ changeEvents.clear();
+ monitor.worked((int) (totalWork / 2));
+ vpeController.reinitImpl();
+ monitor.worked(totalWork);
+ break;
+ }
+ monitor.worked((int) (totalWork / changeEvents.size()));
+ VpeEventBean eventBean = changeEvents.remove(0);
+ if (monitor.isCanceled()) {
+ // Yahor Radtsevich: the following line is commented as fix of JBIDE-3758: VPE autorefresh is broken in
+ // some cases. Now if the change events queue should be cleared, the user have to do it explicitly.
+ // getChangeEvents().clear();
+ res = Status.CANCEL_STATUS;
+ break;
+ }
+ try {
+ vpeController.notifyChangedInUiThread(eventBean);
+ } catch (VpeDisposeException ex) {
+ // JBIDE-675 we will get this exception if user
+ // close editor,
+ // when update visual editor job is running, we
+ // shoud ignore this
+ // exception
+ break;
+ } catch (NullPointerException ex) {
+ if (switcher != null) {
+ throw ex;
+ } else {
+ // class was disposed and exception result
+ // of that we can't stop
+ // refresh job in time, so we just ignore
+ // this exception
+ }
+ } catch (RuntimeException ex) {
+ VpePlugin.getPluginLog().logError(ex);
+ }
+ }
+ if (isExecState() && res == Status.OK_STATUS) {
+ // cause is to lock calls others events
+ if (switcher != null && switcher.startActiveEditor(ActiveEditorSwitcher.ACTIVE_EDITOR_SOURCE)) {
+ try {
+ vpeController.sourceSelectionChanged();
+ // https://jira.jboss.org/jira/browse/JBIDE-3619 VpeViewUpdateJob takes place after toolbar selection
+ // have been updated. New nodes haven't been put into dom mapping thus toolbar becomes desabled.
+ // Updating toolbar state here takes into account updated vpe nodes.
+ final FormatControllerManager tfcm = vpeController.getToolbarFormatControllerManager();
+ if (tfcm != null) {
+ tfcm.selectionChanged();
+ }
+ } finally {
+ switcher.stopActiveEditor();
+ }
+ }
+ }
+ monitor.done();
+ return res;
+ }
+
+}
\ No newline at end of file
Property changes on: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeUpdateJob.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java 2011-12-01 19:48:11 UTC (rev 36846)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java 2011-12-01 20:09:36 UTC (rev 36847)
@@ -79,7 +79,6 @@
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
-@SuppressWarnings("restriction")
public class VpeVisualDomBuilder extends VpeDomBuilder {
public static final String VPE_USER_TOGGLE_ID = "vpe-user-toggle-id"; //$NON-NLS-1$
public static final String VPE_USER_TOGGLE_LOOKUP_PARENT = "vpe-user-toggle-lookup-parent"; //$NON-NLS-1$
@@ -766,26 +765,21 @@
// ==========================================================
- // return true in case if rebuild whole document occur
- public boolean updateNode(Node sourceNode) {
- boolean res = false;
+ public void updateNode(Node sourceNode) {
if (sourceNode == null) {
- return res;
+ return;
}
switch (sourceNode.getNodeType()) {
case Node.DOCUMENT_NODE:
rebuildDom((Document) sourceNode);
- res = true;
break;
default:
- res = updateElement(sourceNode);
+ updateElement(sourceNode);
}
- return res;
}
- // return true in case if rebuild whole document occur
- private boolean updateElement(Node sourceNode) {
+ private void updateElement(Node sourceNode) {
VpeElementMapping elementMapping = null;
VpeNodeMapping nodeMapping = domMapping.getNodeMapping(sourceNode);
if (nodeMapping instanceof VpeElementMapping) {
@@ -799,7 +793,7 @@
*/
if (HTML.TAG_STYLE.equalsIgnoreCase(sourceNode.getNodeName())) {
VpeStyleUtil.refreshStyleElement(this, elementMapping);
- return false;
+ return;
}
Node updateNode = elementMapping.getTemplate()
.getNodeForUpdate(pageContext,
@@ -807,11 +801,11 @@
elementMapping.getVisualNode(),
elementMapping.getData());
if ((updateNode != null) && (updateNode != sourceNode)) {
- return updateNode(updateNode);
+ updateNode(updateNode);
+ return;
}
}
}
- boolean res = false;
/*
* 1) Remove source node from mappings and lists.
*/
@@ -838,12 +832,11 @@
// node?
// looks like we haven't need do it.
if (sourceNode.getNodeType() == Node.TEXT_NODE) {
- res = updateNode(sourceNode.getParentNode());
- } else if(HTML.TAG_LINK.equalsIgnoreCase(sourceNode.getNodeName())) {
+ updateNode(sourceNode.getParentNode());
+ }else if(HTML.TAG_LINK.equalsIgnoreCase(sourceNode.getNodeName())) {
addNode(sourceNode, null, getHeadNode());
}
}
- return res;
}
public void removeNode(Node sourceNode) {
@@ -898,19 +891,16 @@
return false;
}
- // return true in case if rebuild whole document occur
- public boolean setAttribute(Element sourceElement, String name, String value) {
+ public void setAttribute(Element sourceElement, String name, String value) {
VpeElementMapping elementMapping = (VpeElementMapping) domMapping
.getNodeMapping(sourceElement);
/*
* https://jira.jboss.org/jira/browse/JBIDE-4110
* Update any template automatically on attribute adding.
*/
- boolean res = false;
if (elementMapping != null) {
- res = updateElement(sourceElement);
+ updateElement(sourceElement);
}
- return res;
}
public void stopToggle(Node sourceNode) {
@@ -1033,19 +1023,16 @@
return null;
}
- // return true in case if rebuild whole document occur
- public boolean removeAttribute(Element sourceElement, String name) {
+ public void removeAttribute(Element sourceElement, String name) {
VpeElementMapping elementMapping = (VpeElementMapping) domMapping
.getNodeMapping(sourceElement);
/*
* https://jira.jboss.org/jira/browse/JBIDE-4110
* Update any template automatically on attribute deleting.
*/
- boolean res = false;
if (elementMapping != null) {
- res = updateElement(sourceElement);
+ updateElement(sourceElement);
}
- return res;
}
public void refreshBundleValues(Element sourceElement) {
12 years, 6 months
JBoss Tools SVN: r36846 - trunk/central/plugins/org.jboss.tools.community.central.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2011-12-01 14:48:11 -0500 (Thu, 01 Dec 2011)
New Revision: 36846
Modified:
trunk/central/plugins/org.jboss.tools.community.central/plugin.xml
Log:
JBIDE-10304 JBoss Central - "JBoss AS 7 Quickstarts" => "JBoss Quickstarts"
Modified: trunk/central/plugins/org.jboss.tools.community.central/plugin.xml
===================================================================
--- trunk/central/plugins/org.jboss.tools.community.central/plugin.xml 2011-12-01 19:44:27 UTC (rev 36845)
+++ trunk/central/plugins/org.jboss.tools.community.central/plugin.xml 2011-12-01 19:48:11 UTC (rev 36846)
@@ -5,7 +5,7 @@
point="org.jboss.tools.central.tutorials">
<category
id="org.jboss.tools.central.jbossas.quickstart"
- name="JBoss AS 7 Quickstarts"
+ name="JBoss Quickstarts"
description="These quickstarts are aimed to get you up to writing applications with minimal fuss. We recommend that you work through the quickstarts in the order they are presented in this guide, however if you have previous experience with Java EE 6, you may wish to skip some or all of the quickstarts."
priority="2" />
<!--
12 years, 6 months
JBoss Tools SVN: r36845 - trunk/vpe/plugins/org.jboss.tools.vpe.browsersim.eclipse/src/org/jboss/tools/vpe/browsersim/eclipse/util.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2011-12-01 14:44:27 -0500 (Thu, 01 Dec 2011)
New Revision: 36845
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim.eclipse/src/org/jboss/tools/vpe/browsersim/eclipse/util/BrowserSimLauncher.java
Log:
https://issues.jboss.org/browse/JBIDE-9539 : Browsersim app for testing mobile/desktop web apps
- modified launcher to find swt bundles related to eclipse home dir
Modified: trunk/vpe/plugins/org.jboss.tools.vpe.browsersim.eclipse/src/org/jboss/tools/vpe/browsersim/eclipse/util/BrowserSimLauncher.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.browsersim.eclipse/src/org/jboss/tools/vpe/browsersim/eclipse/util/BrowserSimLauncher.java 2011-12-01 19:24:47 UTC (rev 36844)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.browsersim.eclipse/src/org/jboss/tools/vpe/browsersim/eclipse/util/BrowserSimLauncher.java 2011-12-01 19:44:27 UTC (rev 36845)
@@ -13,6 +13,7 @@
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.net.URL;
import java.util.ArrayList;
import java.util.List;
@@ -26,32 +27,32 @@
public class BrowserSimLauncher {
public static void launchBrowserSim(String initialUrl) {
String pathSeparator = System.getProperty("path.separator");
-
- String classPath = getBundleLocation("org.jboss.tools.vpe.browsersim")
- + pathSeparator + getBundleLocation("org.jboss.tools.vpe.browsersim.browser")
- + pathSeparator + getBundleLocation("org.eclipse.swt")
- + pathSeparator + getBundleLocation("org.eclipse.swt." + PlatformUtil.CURRENT_PLATFORM);
- String javaCommand = System.getProperty("java.home") + "/bin/java";
-
- List<String> commandElements = new ArrayList<String>();
- commandElements.add(javaCommand);
- if (Platform.OS_MACOSX.equals(Platform.getOS())) {
- commandElements.add("-XstartOnFirstThread");
- if (Platform.ARCH_X86.equals(Platform.getOSArch())) {
- commandElements.add("-d32");
+ try {
+ String classPath = getBundleLocation("org.jboss.tools.vpe.browsersim")
+ + pathSeparator + getBundleLocation("org.jboss.tools.vpe.browsersim.browser")
+ + pathSeparator + getBundleLocation("org.eclipse.swt")
+ + pathSeparator + getBundleLocation("org.eclipse.swt." + PlatformUtil.CURRENT_PLATFORM);
+ String javaCommand = System.getProperty("java.home") + "/bin/java";
+
+ List<String> commandElements = new ArrayList<String>();
+ commandElements.add(javaCommand);
+ if (Platform.OS_MACOSX.equals(Platform.getOS())) {
+ commandElements.add("-XstartOnFirstThread");
+ if (Platform.ARCH_X86.equals(Platform.getOSArch())) {
+ commandElements.add("-d32");
+ }
}
- }
-
- commandElements.add("-cp");
- commandElements.add(classPath);
- commandElements.add("org.jboss.tools.vpe.browsersim.ui.BrowserSim");
- if (initialUrl != null) {
- commandElements.add(initialUrl);
- }
+
+ commandElements.add("-cp");
+ commandElements.add(classPath);
+ commandElements.add("org.jboss.tools.vpe.browsersim.ui.BrowserSim");
+ if (initialUrl != null) {
+ commandElements.add(initialUrl);
+ }
- try {
ProcessBuilder processBuilder = new ProcessBuilder(commandElements);
processBuilder.directory(ConfigurationScope.INSTANCE.getLocation().toFile());
+
Process browserSimProcess = processBuilder.start();
final InputStream errorStream = browserSimProcess.getErrorStream();
@@ -85,8 +86,10 @@
}
}
- private static String getBundleLocation(String symbolicName) {
+ private static String getBundleLocation(String symbolicName) throws IOException {
+ String eclipseHome = new URL(System.getProperty("eclipse.home.location")).getFile();
String locationId = Platform.getBundle(symbolicName).getLocation();
+
File bundleLocation;
if (locationId.startsWith("reference:file:")) {
bundleLocation = new File(locationId.substring("reference:file:".length()));
@@ -94,6 +97,10 @@
bundleLocation = new File(locationId);
}
+ if (!bundleLocation.isAbsolute()) {
+ bundleLocation = new File(eclipseHome, bundleLocation.getPath());
+ }
+
if (bundleLocation.isDirectory()) {
File binDirectory = new File(bundleLocation, "bin");
if (binDirectory.isDirectory()) {
@@ -101,6 +108,6 @@
}
}
- return bundleLocation.getAbsolutePath();
+ return bundleLocation.getCanonicalPath();
}
}
12 years, 6 months
JBoss Tools SVN: r36844 - in trunk/central/plugins/org.jboss.tools.central: src/org/jboss/tools/central/actions and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2011-12-01 14:24:47 -0500 (Thu, 01 Dec 2011)
New Revision: 36844
Modified:
trunk/central/plugins/org.jboss.tools.central/plugin.xml
trunk/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/actions/ShowJBossCentralHandler.java
Log:
JBIDE-9993 Add the JBoss Central action to the main toolbar
Modified: trunk/central/plugins/org.jboss.tools.central/plugin.xml
===================================================================
--- trunk/central/plugins/org.jboss.tools.central/plugin.xml 2011-12-01 19:23:55 UTC (rev 36843)
+++ trunk/central/plugins/org.jboss.tools.central/plugin.xml 2011-12-01 19:24:47 UTC (rev 36844)
@@ -31,6 +31,7 @@
name="JBoss Central"/>
</extension>
+ <!--
<extension
point="org.eclipse.ui.menus">
<menuContribution
@@ -40,10 +41,24 @@
icon="icons/jboss.gif"
id="org.jboss.tools.central.show">
</command>
-
</menuContribution>
</extension>
-
+ -->
+ <extension point="org.eclipse.ui.actionSets">
+ <actionSet
+ id="org.jboss.tools.central"
+ label="JBoss Central"
+ visible="true">
+ <action
+ class="org.jboss.tools.central.actions.ShowJBossCentralHandler"
+ icon="icons/jboss.gif"
+ id="org.jboss.tools.central.actions.ShowJBossCentralHandler"
+ label="JBoss Central"
+ toolbarPath="org.eclipse.ui.workbench.help/group.application"
+ menubarPath="help/group.intro"
+ tooltip="JBoss Central" />
+ </actionSet>
+ </extension>
<extension
point="org.eclipse.ui.commands">
<command
Modified: trunk/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/actions/ShowJBossCentralHandler.java
===================================================================
--- trunk/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/actions/ShowJBossCentralHandler.java 2011-12-01 19:23:55 UTC (rev 36843)
+++ trunk/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/actions/ShowJBossCentralHandler.java 2011-12-01 19:24:47 UTC (rev 36844)
@@ -13,17 +13,36 @@
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.IWorkbenchWindowActionDelegate;
import org.jboss.tools.central.JBossCentralActivator;
/**
* @author snjeza
*
*/
-public class ShowJBossCentralHandler extends AbstractHandler {
+public class ShowJBossCentralHandler extends AbstractHandler implements IWorkbenchWindowActionDelegate {
public Object execute(ExecutionEvent event) throws ExecutionException {
JBossCentralActivator.getJBossCentralEditor();
return null;
}
+ @Override
+ public void run(IAction action) {
+ JBossCentralActivator.getJBossCentralEditor();
+ }
+
+ @Override
+ public void selectionChanged(IAction action, ISelection selection) {
+
+ }
+
+ @Override
+ public void init(IWorkbenchWindow window) {
+
+ }
+
}
12 years, 6 months
JBoss Tools SVN: r36843 - in trunk/ws/plugins: org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: bfitzpat
Date: 2011-12-01 14:23:55 -0500 (Thu, 01 Dec 2011)
New Revision: 36843
Modified:
trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/RestEasyLibUtils.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizard.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizardPage.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizard.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizardPage.java
Log:
JBIDE-10199 - Updates to JAX-RS service generation wizards per patch
Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/RestEasyLibUtils.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/RestEasyLibUtils.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/RestEasyLibUtils.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -21,6 +21,9 @@
*/
package org.jboss.tools.ws.creation.core.utils;
+import java.io.File;
+import java.io.FilenameFilter;
+
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
@@ -37,6 +40,8 @@
*/
public class RestEasyLibUtils {
+ private static final String REST_EASY = "RestEasy"; //$NON-NLS-1$
+
/**
* Simple check to see if the JBoss WS runtime associated with a project
* actually includes the RESTEasy jars. If so, returns Status.OK_STATUS.
@@ -70,4 +75,36 @@
return Status.OK_STATUS;
}
+ public static IStatus doesRuntimeHaveRootLevelRestEasyDir ( IProject project ) {
+ try {
+ IJavaProject javaProject = JavaCore.create(project);
+ if (javaProject != null) {
+ String path =
+ JBossWSCreationUtils.getJBossWSRuntimeLocation(project.getProject());
+ File runtime = new File(path);
+ if (runtime.exists()) {
+ File parent = runtime.getParentFile();
+ if (parent.exists() && parent.isDirectory()) {
+ File[] restEasyDir = parent.listFiles(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ if (name.equalsIgnoreCase(REST_EASY)) {
+ return true;
+ }
+ return false;
+ }
+ });
+ if (restEasyDir != null && restEasyDir.length > 0) {
+ return Status.OK_STATUS;
+ } else {
+ return StatusUtils.warningStatus("Root-level RESTeasy directory not found in runtime location");
+ }
+ }
+ }
+ }
+ } catch (Exception e) {
+ return StatusUtils.warningStatus("Root-level RESTeasy directory not found in runtime location");
+ }
+ return Status.OK_STATUS;
+ }
+
}
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties 2011-12-01 19:23:55 UTC (rev 36843)
@@ -7,7 +7,8 @@
# END NON-TRANSLATABLE
JBossRSGenerateWizard_RS_Wizard_Window_Title=Generate a Sample RESTful Web Service
-JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime=RESTEasy jars not found in the runtime associated with the selected project. Make sure RESTEasy is installed and try again.
+JBossRSGenerateWizardPage_AddJarsIfFoundCheckbox=Add RESTEasy Jars from root runtime directory
+JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime=RESTEasy jars not found in the runtime associated with selected project. Verify RE is installed and try again or check 'Add RESTeasy jars' below if enabled.
JBossRSGenerateWizardPage_Label_Application_Class_Name=Application Class Name:
JBossRSGenerateWizardPage_Page_title=Specify the Dynamic Web Project, service, package and class name for the sample web service and web service classes.
JBossRSGenerateWizardPage_ServiceName_Tooltip=Name added to the generated annotated JAX-RS service class as part of the service URI
@@ -72,6 +73,8 @@
Error_JBossWS_GenerateWizard_PackageName_Cannot_Be_Empty=Package name cannot be empty
Error_JBossWS_GenerateWizard_ClassName_Cannot_Be_Empty=Class name cannot be empty
Error_JBossWS_GenerateWizard_NotDynamicWebProject=The project must be a Dynamic Web Project and contain a web.xml in a right Location
+Error_JBossWS_GenerateWizard_NotDynamicWebProject2=The project must be a Dynamic Web Project
+Error_JBossWS_GenerateWizard_NoWebXML = The project must contain a web.xml file in the right Location
Error_JBossWS_GenerateWizard_ClassName_Same=The class name has been used in the web project.
Error_JBossWS_GenerateWizard_ServiceName_Empty=The Service Name may not be an empty string.
Error_JBossWS_GenerateWizard_IsOutputFolder=Name conflict with output folder
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -39,6 +39,7 @@
public static String Endorsed;
public static String JBossRSGenerateWizard_RS_Wizard_Window_Title;
+ public static String JBossRSGenerateWizardPage_AddJarsIfFoundCheckbox;
public static String JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime;
public static String JBossRSGenerateWizardPage_Label_Application_Class_Name;
public static String JBossRSGenerateWizardPage_Page_title;
@@ -102,6 +103,8 @@
public static String Error_JBossWS_Runtime_List_Field_Editor_Name_Cannot_Be_Empty;
public static String Error_JBossWS_Runtime_List_Field_Editor_Inputelement_Must_Be_An_Instance_Of_List;
public static String Error_JBossWS_GenerateWizard_NotDynamicWebProject;
+ public static String Error_JBossWS_GenerateWizard_NotDynamicWebProject2;
+ public static String Error_JBossWS_GenerateWizard_NoWebXML;
public static String Error_JBossWS_GenerateWizard_ClassName_Same;
public static String Error_JBossWS_GenerateWizard_PackageName_Cannot_Be_Empty;
public static String Error_JBossWS_GenerateWizard_ClassName_Cannot_Be_Empty;
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizard.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizard.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizard.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -62,6 +62,7 @@
private boolean useDefaultServiceName = true;
private boolean useDefaultClassName = true;
private boolean updateWebXML = true;
+ private boolean addJarsFromRootRuntime = false;
private IStructuredSelection selection;
private IProject project;
@@ -125,7 +126,9 @@
}
}
try {
- new AddRestEasyJarsCommand(model).execute(null, null);
+ if (getAddJarsFromRootRuntime())
+ new AddRestEasyJarsCommand(model).execute(null, null);
+
RSServiceSampleCreationCommand createCommand =
new RSServiceSampleCreationCommand(model);
createCommand.execute(null, null);
@@ -226,6 +229,14 @@
return updateWebXML;
}
+ public boolean getAddJarsFromRootRuntime() {
+ return addJarsFromRootRuntime;
+ }
+
+ public void setAddJarsFromRootRuntime(boolean addJarsFromRootRuntime) {
+ this.addJarsFromRootRuntime = addJarsFromRootRuntime;
+ }
+
public IProject getProject() {
return project;
}
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizardPage.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizardPage.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossRSGenerateWizardPage.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -22,6 +22,7 @@
import org.eclipse.jface.wizard.IWizardPage;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
@@ -35,6 +36,9 @@
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
+import org.eclipse.wst.common.project.facet.core.IFacetedProject;
+import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
import org.jboss.tools.ws.creation.core.data.ServiceModel;
import org.jboss.tools.ws.creation.core.utils.JBossWSCreationUtils;
import org.jboss.tools.ws.creation.core.utils.RestEasyLibUtils;
@@ -50,6 +54,7 @@
private Text className;
private Text appClassName;
private Button updateWebXML;
+ private Button addJarsIfFound;
protected JBossRSGenerateWizardPage(String pageName) {
super(pageName);
@@ -84,6 +89,7 @@
wizard.setProject(projects.getText());
name.setText(updateDefaultName());
className.setText(updateDefaultClassName());
+ setWebXMLSelectionValueBasedOnProjectFacet();
bHasChanged = true;
setPageComplete(isPageComplete());
}
@@ -134,6 +140,23 @@
}
});
+ addJarsIfFound = new Button(group2, SWT.CHECK);
+ addJarsIfFound.setText(JBossWSUIMessages.JBossRSGenerateWizardPage_AddJarsIfFoundCheckbox);
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ gd.horizontalSpan = 2;
+ addJarsIfFound.setLayoutData(gd);
+ addJarsIfFound.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(SelectionEvent e) {
+ wizard.setAddJarsFromRootRuntime(updateWebXML.getSelection());
+ setPageComplete(isPageComplete());
+ }
+ public void widgetDefaultSelected(SelectionEvent e) {
+ widgetSelected(e);
+ }
+ });
+
+ setWebXMLSelectionValueBasedOnProjectFacet();
+
Group group3 = new Group(composite, SWT.NONE);
group3.setText(JBossWSUIMessages.JBossWS_GenerateWizard_GenerateWizardPage_Class_Group);
gd = new GridData(GridData.FILL_HORIZONTAL);
@@ -325,6 +348,30 @@
return testName;
}
+ private void setWebXMLSelectionValueBasedOnProjectFacet () {
+ try {
+ IFacetedProject facetProject =
+ ProjectFacetsManager.create(((JBossRSGenerateWizard)this.getWizard()).getProject());
+ IProjectFacetVersion version =
+ facetProject.getProjectFacetVersion(IJ2EEFacetConstants.DYNAMIC_WEB_FACET);
+ if (version == null) {
+ // then we're not a dynamic web project, do nothing
+ return;
+ }
+ Double versionDouble = Double.valueOf(version.getVersionString());
+ if (versionDouble.doubleValue() == 3 || versionDouble.doubleValue() > 3) {
+ // dynamic web project 3.0, web.xml not needed
+ updateWebXML.setSelection(false);
+ } else if (versionDouble.doubleValue() < 3){
+ // dynamic web project < 3.0
+ updateWebXML.setSelection(true);
+ }
+ } catch (CoreException e1) {
+ // ignore
+ } catch (NumberFormatException nfe) {
+ // ignore
+ }
+ }
private boolean validate() {
ServiceModel model = wizard.getServiceModel();
@@ -340,22 +387,42 @@
return false;
}
+ try {
+ IFacetedProject facetProject =
+ ProjectFacetsManager.create(((JBossRSGenerateWizard)this.getWizard()).getProject());
+ IProjectFacetVersion version =
+ facetProject.getProjectFacetVersion(IJ2EEFacetConstants.DYNAMIC_WEB_FACET);
+ if (version == null) {
+ // then we're not a dynamic web project
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+ } catch (CoreException e1) {
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+
// project not a dynamic web project
IFile web = ((JBossRSGenerateWizard) this.getWizard()).getWebFile();
if (web == null || !web.exists()) {
if (updateWebXML.getSelection()) {
- setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject);
- return false;
+ setMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NoWebXML,
+ DialogPage.WARNING);
+ return true;
}
}
+ IStatus reNoREDirectoryInRuntimeRoot = RestEasyLibUtils.doesRuntimeHaveRootLevelRestEasyDir(((JBossRSGenerateWizard) this.getWizard()).getProject());
+ addJarsIfFound.setEnabled(reNoREDirectoryInRuntimeRoot.getSeverity() == IStatus.OK);
+
IStatus reInstalledStatus =
RestEasyLibUtils.doesRuntimeSupportRestEasy(((JBossRSGenerateWizard) this.getWizard()).getProject());
- if (reInstalledStatus.getSeverity() != IStatus.OK){
- setMessage(JBossWSUIMessages.JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime, DialogPage.WARNING);
+ if (reInstalledStatus.getSeverity() != IStatus.OK && !addJarsIfFound.getSelection()){
+ setMessage(JBossWSUIMessages.JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime,
+ DialogPage.WARNING);
return true;
}
-
+
// no source folder in web project
try {
if ("".equals(JBossWSCreationUtils.getJavaProjectSrcLocation(((JBossRSGenerateWizard) this.getWizard()).getProject()))) { //$NON-NLS-1$
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizard.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizard.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizard.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -69,6 +69,7 @@
private boolean useDefaultClassName = true;
private boolean updateWebXML = true;
private boolean isJAXWS = true;
+ private boolean addJarsFromRootRuntime = false;
private IStructuredSelection selection;
private IProject project;
@@ -131,7 +132,8 @@
AbstractDataModelOperation addJarsCommand = null;
AbstractDataModelOperation addClassesCommand = null;
if (!isJAXWS()) {
- addJarsCommand = new AddRestEasyJarsCommand(model);
+ if (getAddJarsFromRootRuntime())
+ addJarsCommand = new AddRestEasyJarsCommand(model);
addClassesCommand = new RSServiceCreationCommand(model);
} else {
addClassesCommand = new ServiceCreationCommand(model);
@@ -259,6 +261,14 @@
return updateWebXML;
}
+ public boolean getAddJarsFromRootRuntime() {
+ return addJarsFromRootRuntime;
+ }
+
+ public void setAddJarsFromRootRuntime(boolean addJarsFromRootRuntime) {
+ this.addJarsFromRootRuntime = addJarsFromRootRuntime;
+ }
+
public void setJAXWS(boolean isJAXWS) {
this.isJAXWS = isJAXWS;
}
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizardPage.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizardPage.java 2011-12-01 18:55:12 UTC (rev 36842)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSAnnotatedClassWizardPage.java 2011-12-01 19:23:55 UTC (rev 36843)
@@ -29,6 +29,7 @@
import org.eclipse.jface.wizard.IWizardPage;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
@@ -43,6 +44,9 @@
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.dialogs.SelectionDialog;
+import org.eclipse.wst.common.project.facet.core.IFacetedProject;
+import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
import org.jboss.tools.ws.creation.core.data.ServiceModel;
import org.jboss.tools.ws.creation.core.utils.JBossWSCreationUtils;
import org.jboss.tools.ws.creation.core.utils.RestEasyLibUtils;
@@ -61,6 +65,7 @@
private Text appClassName;
private Text name;
private Button updateWebXML;
+ private Button addJarsIfFound;
private Button btnPackageBrowse;
private Button btnServiceClassBrowse;
private Button btnAppClassBrowse;
@@ -286,6 +291,7 @@
projects.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
wizard.setProject(projects.getText());
+ setWebXMLSelectionValueBasedOnProjectFacet();
bHasChanged = true;
setPageComplete(isPageComplete());
}
@@ -340,6 +346,22 @@
}
});
+ addJarsIfFound = new Button(group, SWT.CHECK);
+ addJarsIfFound.setText(JBossWSUIMessages.JBossRSGenerateWizardPage_AddJarsIfFoundCheckbox);
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ gd.horizontalSpan = 2;
+ addJarsIfFound.setLayoutData(gd);
+ addJarsIfFound.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(SelectionEvent e) {
+ wizard.setAddJarsFromRootRuntime(updateWebXML.getSelection());
+ setPageComplete(isPageComplete());
+ }
+ public void widgetDefaultSelected(SelectionEvent e) {
+ widgetSelected(e);
+ }
+ });
+
+ setWebXMLSelectionValueBasedOnProjectFacet();
}
private void createImplementationGroup(Composite parent) {
@@ -547,6 +569,31 @@
return validate();
}
+ private void setWebXMLSelectionValueBasedOnProjectFacet () {
+ try {
+ IFacetedProject facetProject =
+ ProjectFacetsManager.create(((JBossWSAnnotatedClassWizard)this.getWizard()).getProject());
+ IProjectFacetVersion version =
+ facetProject.getProjectFacetVersion(IJ2EEFacetConstants.DYNAMIC_WEB_FACET);
+ if (version == null) {
+ // then we're not a dynamic web project, do nothing
+ return;
+ }
+ Double versionDouble = Double.valueOf(version.getVersionString());
+ if (versionDouble.doubleValue() == 3 || versionDouble.doubleValue() > 3) {
+ // dynamic web project 3.0, web.xml not needed
+ updateWebXML.setSelection(false);
+ } else if (versionDouble.doubleValue() < 3){
+ // dynamic web project < 3.0
+ updateWebXML.setSelection(true);
+ }
+ } catch (CoreException e1) {
+ // ignore
+ } catch (NumberFormatException nfe) {
+ // ignore
+ }
+ }
+
private boolean validate() {
ServiceModel model = wizard.getServiceModel();
if (wizard.isJAXWS()) {
@@ -554,6 +601,8 @@
setErrorMessage(null);
JBossWSGenerateWizardValidator.setServiceModel(model);
+
+ addJarsIfFound.setEnabled(false);
if (!projects.isDisposed() && projects.getText().length() > 0) {
model.setWebProjectName(projects.getText());
@@ -564,11 +613,26 @@
return false;
}
+ try {
+ IFacetedProject facetProject =
+ ProjectFacetsManager.create(((JBossWSAnnotatedClassWizard)this.getWizard()).getProject());
+ if (facetProject.getProjectFacetVersion(IJ2EEFacetConstants.DYNAMIC_WEB_FACET) == null) {
+ // then we're not a dynamic web project
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+ } catch (CoreException e1) {
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+
+ // project not a dynamic web project
IFile web = ((JBossWSAnnotatedClassWizard) this.getWizard()).getWebFile();
if (web == null || !web.exists()) {
if (updateWebXML.getSelection()) {
- setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject);
- return false;
+ setMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NoWebXML,
+ DialogPage.WARNING);
+ return true;
}
}
@@ -621,18 +685,36 @@
return false;
}
+ try {
+ IFacetedProject facetProject =
+ ProjectFacetsManager.create(((JBossWSAnnotatedClassWizard)this.getWizard()).getProject());
+ if (facetProject.getProjectFacetVersion(IJ2EEFacetConstants.DYNAMIC_WEB_FACET) == null) {
+ // then we're not a dynamic web project
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+ } catch (CoreException e1) {
+ setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject2);
+ return false;
+ }
+
// project not a dynamic web project
IFile web = ((JBossWSAnnotatedClassWizard) this.getWizard()).getWebFile();
if (web == null || !web.exists()) {
if (updateWebXML.getSelection()) {
- setErrorMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NotDynamicWebProject);
- return false;
+ setMessage(JBossWSUIMessages.Error_JBossWS_GenerateWizard_NoWebXML,
+ DialogPage.WARNING);
+ return true;
}
}
+
+ IStatus reNoREDirectoryInRuntimeRoot = RestEasyLibUtils.doesRuntimeHaveRootLevelRestEasyDir(
+ ((JBossWSAnnotatedClassWizard) this.getWizard()).getProject());
+ addJarsIfFound.setEnabled(reNoREDirectoryInRuntimeRoot.getSeverity() == IStatus.OK);
IStatus reInstalledStatus =
RestEasyLibUtils.doesRuntimeSupportRestEasy(((JBossWSAnnotatedClassWizard) this.getWizard()).getProject());
- if (reInstalledStatus.getSeverity() != IStatus.OK){
+ if (reInstalledStatus.getSeverity() != IStatus.OK && !addJarsIfFound.getSelection()){
setMessage(JBossWSUIMessages.JBossRSGenerateWizardPage_Error_RestEasyJarsNotFoundInRuntime, DialogPage.WARNING);
return true;
}
12 years, 6 months
JBoss Tools SVN: r36842 - in trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb: internal/proposal and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-12-01 13:55:12 -0500 (Thu, 01 Dec 2011)
New Revision: 36842
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java
Log:
JBIDE-10248
https://issues.jboss.org/browse/JBIDE-10248
ImageRegistry is used to manage images.
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -12,6 +12,9 @@
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.resource.ImageRegistry;
+import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.EclipseUtil;
import org.jboss.tools.common.log.BaseUIPlugin;
import org.jboss.tools.jst.web.WebModelPlugin;
@@ -155,4 +158,16 @@
}
}
+ public static Image getImage(Class<?> baseClass, String imageName) {
+ ImageRegistry registry = getDefault().getImageRegistry();
+ Image result = registry.get(imageName);
+ if(result == null || result.isDisposed()) {
+ result = ImageDescriptor.createFromFile(baseClass, imageName).createImage();
+ if(result != null) {
+ registry.put(imageName, result);
+ }
+ }
+ return result;
+ }
+
}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -34,7 +34,6 @@
public class ActionProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "JSFActionProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
/*
* (non-Javadoc)
@@ -69,10 +68,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -15,8 +15,6 @@
import java.util.Set;
import java.util.TreeSet;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.ICSSContainerSupport;
import org.jboss.tools.jst.web.kb.IPageContext;
@@ -37,7 +35,6 @@
*/
public class CSSClassProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
static String ID = "cssclass"; //$NON-NLS-1$
static String QUOTE_1 = "'"; //$NON-NLS-1$
@@ -149,10 +146,7 @@
proposal.setPosition(b + text.length() - predicateLength);
proposal.setStart(b - predicateLength);
proposal.setEnd(e - predicateLength);
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -31,7 +31,6 @@
public class ConverterIDProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
public ConverterIDProposalType() {}
@@ -52,10 +51,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -13,8 +13,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.IPageContext;
import org.jboss.tools.jst.web.kb.KbQuery;
@@ -26,7 +24,6 @@
public class EnumerationProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
/* (non-Javadoc)
* @see org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType#getProposals(org.jboss.tools.jst.web.kb.KbQuery)
@@ -44,10 +41,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -33,7 +33,6 @@
@SuppressWarnings("restriction")
public class IDProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
static String ID = "id"; //$NON-NLS-1$
static String QUOTE_1 = "'"; //$NON-NLS-1$
@@ -93,10 +92,7 @@
proposal.setPosition(b + text.length());
proposal.setStart(b);
proposal.setEnd(e);
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -29,7 +29,6 @@
public class ResourceBundleNameProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "MessageBundleProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
/* (non-Javadoc)
* @see org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType#getProposals(org.jboss.tools.jst.web.kb.KbQuery)
@@ -53,10 +52,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java 2011-12-01 18:40:38 UTC (rev 36841)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java 2011-12-01 18:55:12 UTC (rev 36842)
@@ -38,7 +38,6 @@
public class ResourcePathProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "ResourcePathProposal.gif"; //$NON-NLS-1$
- private static Image ICON;
private static Set<String> GRAPHIC_FILE_EXTENSIONS = new HashSet<String>();
private static Set<String> PAGE_FILE_EXTENSIONS = new HashSet<String>();
private static Set<String> CSS_FILE_EXTENSIONS = new HashSet<String>();
@@ -127,10 +126,7 @@
}
proposal.setReplacementString(replacementString);
proposal.setPosition(replacementString.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
if(newValue == value) {
proposals.add(proposal);
}
@@ -153,10 +149,7 @@
proposal.setAutoActivationContentAssistantAfterApplication(false);
proposal.setReplacementString(replacementString);
proposal.setPosition(replacementString.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
return proposals.toArray(new TextProposal[0]);
12 years, 6 months
JBoss Tools SVN: r36841 - in trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal: utils and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-12-01 13:40:38 -0500 (Thu, 01 Dec 2011)
New Revision: 36841
Added:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/utils/UIUtils.java
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java
Log:
[JBIDE-10305] selecting the whole username and password on focus gained.
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java 2011-12-01 18:16:50 UTC (rev 36840)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java 2011-12-01 18:40:38 UTC (rev 36841)
@@ -40,6 +40,7 @@
import org.jboss.tools.common.ui.databinding.DataBindingUtils;
import org.jboss.tools.common.ui.databinding.ParametrizableWizardPageSupport;
import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
+import org.jboss.tools.openshift.express.internal.utils.UIUtils;
/**
* @author André Dietisheim
@@ -71,14 +72,16 @@
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(rhLoginLabel);
Text rhLoginText = new Text(container, SWT.BORDER);
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1).applyTo(rhLoginText);
+ UIUtils.selectAllOnFocus(rhLoginText);
DataBindingUtils.bindMandatoryTextField(
rhLoginText, "Username", CredentialsWizardPageModel.PROPERTY_RHLOGIN, model, dbc);
-
+
Label passwordLabel = new Label(container, SWT.NONE);
passwordLabel.setText("&Password");
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(passwordLabel);
Text passwordText = new Text(container, SWT.BORDER | SWT.PASSWORD);
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1).applyTo(passwordText);
+ UIUtils.selectAllOnFocus(passwordText);
DataBindingUtils.bindMandatoryTextField(
passwordText, "Password", CredentialsWizardPageModel.PROPERTY_PASSWORD, model, dbc);
Added: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/utils/UIUtils.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/utils/UIUtils.java (rev 0)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/utils/UIUtils.java 2011-12-01 18:40:38 UTC (rev 36841)
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.openshift.express.internal.utils;
+
+import org.eclipse.swt.events.FocusAdapter;
+import org.eclipse.swt.events.FocusEvent;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * @author André Dietisheim
+ */
+public class UIUtils {
+
+ public static void selectAllOnFocus(final Text text) {
+ text.addFocusListener(new FocusAdapter() {
+
+ @Override
+ public void focusGained(FocusEvent e) {
+ text.selectAll();
+ }
+ });
+
+ }
+
+}
Property changes on: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/utils/UIUtils.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
12 years, 6 months
JBoss Tools SVN: r36840 - trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2011-12-01 13:16:50 -0500 (Thu, 01 Dec 2011)
New Revision: 36840
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
Log:
https://issues.jboss.org/browse/JBIDE-10016 NullPointerException in VPE when an attribute is intensively changed
fixed compilation error after merging in patch from vitaly
Modified: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2011-12-01 18:01:03 UTC (rev 36839)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2011-12-01 18:16:50 UTC (rev 36840)
@@ -162,6 +162,7 @@
MozillaContextMenuListener, MozillaResizeListener,
MozillaAfterPaintListener, MozillaScrollListener {
+ public static final int DEFAULT_UPDATE_DELAY_TIME = 400;
private boolean visualEditorVisible = true;
private boolean synced = true;
StructuredTextEditor sourceEditor;
12 years, 6 months
JBoss Tools SVN: r36839 - in trunk/common/plugins/org.jboss.tools.common.ui: src/org/jboss/tools/common/ui and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-12-01 13:01:03 -0500 (Thu, 01 Dec 2011)
New Revision: 36839
Modified:
trunk/common/plugins/org.jboss.tools.common.ui/META-INF/MANIFEST.MF
trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/CommonUIPlugin.java
trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/marker/ConfigureProblemSeverityMarkerResolution.java
Log:
JBIDE-10246
https://issues.jboss.org/browse/JBIDE-10246
ImageRegistry is used to manage images.
Modified: trunk/common/plugins/org.jboss.tools.common.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/META-INF/MANIFEST.MF 2011-12-01 17:48:52 UTC (rev 36838)
+++ trunk/common/plugins/org.jboss.tools.common.ui/META-INF/MANIFEST.MF 2011-12-01 18:01:03 UTC (rev 36839)
@@ -1,6 +1,8 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
+Bundle-ActivationPolicy: lazy
Bundle-Name: %Bundle-Name.0
+Bundle-Activator: org.jboss.tools.common.ui.CommonUIPlugin
Bundle-SymbolicName: org.jboss.tools.common.ui;singleton:=true
Bundle-Version: 3.3.0.qualifier
Require-Bundle: org.eclipse.osgi;bundle-version="3.7.0",
Modified: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/CommonUIPlugin.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/CommonUIPlugin.java 2011-12-01 17:48:52 UTC (rev 36838)
+++ trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/CommonUIPlugin.java 2011-12-01 18:01:03 UTC (rev 36839)
@@ -29,6 +29,7 @@
* The constructor
*/
public CommonUIPlugin() {
+ plugin = this;
}
/*
@@ -37,7 +38,6 @@
*/
public void start(BundleContext context) throws Exception {
super.start(context);
- plugin = this;
}
/*
@@ -45,7 +45,6 @@
* @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext context) throws Exception {
- plugin = null;
super.stop(context);
}
Modified: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/marker/ConfigureProblemSeverityMarkerResolution.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/marker/ConfigureProblemSeverityMarkerResolution.java 2011-12-01 17:48:52 UTC (rev 36838)
+++ trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/marker/ConfigureProblemSeverityMarkerResolution.java 2011-12-01 18:01:03 UTC (rev 36839)
@@ -17,11 +17,13 @@
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.debug.internal.ui.DebugUIPlugin;
import org.eclipse.jdt.internal.ui.JavaPluginImages;
+import org.eclipse.jface.resource.ImageRegistry;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.IMarkerResolution2;
import org.eclipse.ui.dialogs.PreferencesUtil;
import org.eclipse.ui.progress.UIJob;
import org.jboss.tools.common.ui.CommonUIMessages;
+import org.jboss.tools.common.ui.CommonUIPlugin;
/**
* @author Daniel Azarov
@@ -60,7 +62,14 @@
}
public Image getImage() {
- return JavaPluginImages.DESC_ELCL_CONFIGURE_PROBLEM_SEVERITIES.createImage();
+ String key = "DESC_ELCL_CONFIGURE_PROBLEM_SEVERITIES";
+ ImageRegistry registry = CommonUIPlugin.getDefault().getImageRegistry();
+ Image image = registry.get(key);
+ if(image == null) {
+ image = JavaPluginImages.DESC_ELCL_CONFIGURE_PROBLEM_SEVERITIES.createImage();
+ registry.put(key, image);
+ }
+ return image;
}
}
12 years, 6 months
JBoss Tools SVN: r36838 - trunk/openshift/plugins/org.jboss.tools.openshift.express.ui.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-12-01 12:48:52 -0500 (Thu, 01 Dec 2011)
New Revision: 36838
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml
Log:
[JBIDE-10147] added a wizard shortcut to the JBoss Perspective with the NewWizard "OpenShift Express Application"
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml 2011-12-01 17:39:27 UTC (rev 36837)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml 2011-12-01 17:48:52 UTC (rev 36838)
@@ -16,10 +16,19 @@
category="org.jboss.ide.eclipse.as.openshift.express.ui.wizard.category"
class="org.jboss.tools.openshift.express.internal.ui.wizard.ImportProjectWizard"
icon="icons/openshift-logo-white-icon.png"
- id="org.jboss.ide.eclipse.as.openshift.express.ui.wizard.NewServerAdapter"
+ id="org.jboss.ide.eclipse.as.openshift.express.ui.wizard.ImportProjectNewWizard"
name="OpenShift Express Application">
</wizard>
</extension>
+ <extension
+ point="org.eclipse.ui.perspectiveExtensions">
+ <perspectiveExtension
+ targetID="org.jboss.tools.common.ui.JBossPerspective">
+ <newWizardShortcut
+ id="org.jboss.ide.eclipse.as.openshift.express.ui.wizard.ImportProjectNewWizard">
+ </newWizardShortcut>
+ </perspectiveExtension>
+ </extension>
<extension
point="org.eclipse.wst.server.ui.serverImages">
12 years, 6 months