|
From: <caw...@us...> - 2007-02-19 17:35:35
|
Revision: 1972
http://svn.sourceforge.net/rubyeclipse/?rev=1972&view=rev
Author: cawilliams
Date: 2007-02-19 09:35:12 -0800 (Mon, 19 Feb 2007)
Log Message:
-----------
Modified Paths:
--------------
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/NodeFactory.java
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/offsetprovider/BeforeFirstMethodInClassOffsetProvider.java
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/ui/pages/ExtractMethodPage.java
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/util/NameValidator.java
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/NodeFactory.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/NodeFactory.java 2007-02-19 17:34:40 UTC (rev 1971)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/NodeFactory.java 2007-02-19 17:35:12 UTC (rev 1972)
@@ -44,6 +44,7 @@
import org.jruby.ast.ClassVarNode;
import org.jruby.ast.Colon2Node;
import org.jruby.ast.CommentNode;
+import org.jruby.ast.ConstDeclNode;
import org.jruby.ast.ConstNode;
import org.jruby.ast.DVarNode;
import org.jruby.ast.DefnNode;
@@ -363,4 +364,8 @@
public static Node createLocalVarNode(String argName) {
return new LocalVarNode(pos, 0, argName);
}
+
+ public static Node createConstDeclNode(String name, Node valueNode) {
+ return new ConstDeclNode(pos, null, name, valueNode);
+ }
}
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/offsetprovider/BeforeFirstMethodInClassOffsetProvider.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/offsetprovider/BeforeFirstMethodInClassOffsetProvider.java 2007-02-19 17:34:40 UTC (rev 1971)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/offsetprovider/BeforeFirstMethodInClassOffsetProvider.java 2007-02-19 17:35:12 UTC (rev 1972)
@@ -31,6 +31,7 @@
package org.rubypeople.rdt.refactoring.offsetprovider;
import org.jruby.ast.DefnNode;
+import org.jruby.ast.ModuleNode;
import org.jruby.ast.Node;
import org.rubypeople.rdt.refactoring.core.NodeProvider;
import org.rubypeople.rdt.refactoring.nodewrapper.ClassNodeWrapper;
@@ -38,28 +39,36 @@
public class BeforeFirstMethodInClassOffsetProvider extends OffsetProvider {
- private PartialClassNodeWrapper classPart;
-
+ private Node bodyNode;
+ private Node declEndNode;
+
public BeforeFirstMethodInClassOffsetProvider(ClassNodeWrapper classNode, String document) {
this(classNode.getFirstPartialClassNode(), document);
}
public BeforeFirstMethodInClassOffsetProvider(PartialClassNodeWrapper classPart, String document){
super(document);
- this.classPart = classPart;
+ this.bodyNode = classPart.getClassBodyNode();
+ this.declEndNode = classPart.getDeclarationEndNode();
}
+
+ public BeforeFirstMethodInClassOffsetProvider(ModuleNode classNode, String document){
+ super(document);
+ this.bodyNode = classNode.getBodyNode();
+ this.declEndNode = classNode.getCPath();
+ }
@Override
public Node getInsertAfterNode() {
- if (NodeProvider.hasChildNode(classPart.getClassBodyNode(), DefnNode.class)) {
- Node contentNode = classPart.getClassBodyNode();
+ if (NodeProvider.hasChildNode(bodyNode, DefnNode.class)) {
+ Node contentNode = bodyNode;
Node firstMethodNode = NodeProvider.getFirstChildNode(contentNode, DefnNode.class);
if (NodeProvider.hasNodeBefore(contentNode, firstMethodNode)) {
return NodeProvider.getNodeBefore(contentNode, firstMethodNode);
}
- return classPart.getDeclarationEndNode();
+ return declEndNode;
}
- return classPart.getClassBodyNode();
+ return bodyNode;
}
}
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/ui/pages/ExtractMethodPage.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/ui/pages/ExtractMethodPage.java 2007-02-19 17:34:40 UTC (rev 1971)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/ui/pages/ExtractMethodPage.java 2007-02-19 17:35:12 UTC (rev 1972)
@@ -33,6 +33,7 @@
import java.util.Observable;
import java.util.Observer;
+import org.eclipse.jface.dialogs.IMessageProvider;
import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Button;
@@ -196,7 +197,7 @@
private HashMap<Object, Boolean> completedValidators = new HashMap<Object, Boolean>();
public void setError(String message) {
- setMessage(message, ConvertTempToFieldPage.ERROR);
+ setMessage(message, IMessageProvider.ERROR);
}
public void setComplete(Object source, boolean complete) {
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/util/NameValidator.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/util/NameValidator.java 2007-02-19 17:34:40 UTC (rev 1971)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/util/NameValidator.java 2007-02-19 17:35:12 UTC (rev 1972)
@@ -57,4 +57,9 @@
return valid && Keyword.getKeyword(stringToValidate, stringToValidate.length()) == null;
}
+ public static boolean isValidConstantName(String newName) {
+ // FIXME Check for valid constant name
+ return isValidClassName(newName);
+ }
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|