Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeffrey Overbey2007-11-10 05:45:21 +0000
committerJeffrey Overbey2007-11-10 05:45:21 +0000
commit3426388dcb824d1c82cca734c83e6996aed4f2ee (patch)
tree858c59f8aa9183a56b7d87b3d53db61ee0f06add
parent68b0d0653162c02dcb271ac921201020301727b6 (diff)
downloadorg.eclipse.photran-3426388dcb824d1c82cca734c83e6996aed4f2ee.tar.gz
org.eclipse.photran-3426388dcb824d1c82cca734c83e6996aed4f2ee.tar.xz
org.eclipse.photran-3426388dcb824d1c82cca734c83e6996aed4f2ee.zip
Added frivolous label to Intro Implicit dialog to prevent strange blocking dialog bug on Mac OS Xv20080210-PreASTFix
-rw-r--r--org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/IntroImplicitNoneRefactoring.java8
-rw-r--r--org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/infrastructure/FortranRefactoring.java1
-rw-r--r--org.eclipse.photran.ui.vpg/src/org/eclipse/photran/internal/refactoring/ui/IntroImplicitNoneAction.java26
3 files changed, 33 insertions, 2 deletions
diff --git a/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/IntroImplicitNoneRefactoring.java b/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/IntroImplicitNoneRefactoring.java
index 4bc50a9b..3dbcfa5b 100644
--- a/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/IntroImplicitNoneRefactoring.java
+++ b/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/IntroImplicitNoneRefactoring.java
@@ -33,6 +33,7 @@ import org.eclipse.photran.internal.core.parser.ASTVisitor;
import org.eclipse.photran.internal.core.parser.Parser.InteriorNode;
import org.eclipse.photran.internal.core.refactoring.infrastructure.FortranRefactoring;
import org.eclipse.photran.internal.core.refactoring.infrastructure.SourceEditor;
+import org.eclipse.photran.internal.core.refactoring.infrastructure.SourcePrinter;
/**
* Refactoring to add an IMPLICIT NONE statement and explicit declarations for all implicitly-declared variables
@@ -55,6 +56,13 @@ public class IntroImplicitNoneRefactoring extends FortranRefactoring
return "Introduce Implicit None";
}
+ public String getScopeDescription()
+ {
+ return selectedScope == null || selectedScope.getHeaderStmt() == null
+ ? "the selected scope..."
+ : "\n" + SourcePrinter.getSourceCodeFromASTNode(selectedScope.getHeaderStmt());
+ }
+
///////////////////////////////////////////////////////////////////////////
// Initial Preconditions
///////////////////////////////////////////////////////////////////////////
diff --git a/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/infrastructure/FortranRefactoring.java b/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/infrastructure/FortranRefactoring.java
index b5e19887..a2875c06 100644
--- a/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/infrastructure/FortranRefactoring.java
+++ b/org.eclipse.photran.core.vpg/src/org/eclipse/photran/internal/core/refactoring/infrastructure/FortranRefactoring.java
@@ -117,7 +117,6 @@ public abstract class FortranRefactoring extends Refactoring
vpg.ensureVPGIsUpToDate(pm);
pm.done();
- pm.beginTask("Analyzing program", IProgressMonitor.UNKNOWN);
this.astOfFileInEditor = vpg.acquireTransientAST(fileInEditor);
logVPGErrors(status);
if (astOfFileInEditor == null)
diff --git a/org.eclipse.photran.ui.vpg/src/org/eclipse/photran/internal/refactoring/ui/IntroImplicitNoneAction.java b/org.eclipse.photran.ui.vpg/src/org/eclipse/photran/internal/refactoring/ui/IntroImplicitNoneAction.java
index d965afb9..8274d3e0 100644
--- a/org.eclipse.photran.ui.vpg/src/org/eclipse/photran/internal/refactoring/ui/IntroImplicitNoneAction.java
+++ b/org.eclipse.photran.ui.vpg/src/org/eclipse/photran/internal/refactoring/ui/IntroImplicitNoneAction.java
@@ -10,7 +10,16 @@
*******************************************************************************/
package org.eclipse.photran.internal.refactoring.ui;
+import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
import org.eclipse.photran.internal.core.refactoring.IntroImplicitNoneRefactoring;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.IEditorActionDelegate;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
@@ -41,7 +50,22 @@ public class IntroImplicitNoneAction
protected void doAddUserInputPages()
{
- // No user input required!
+ addPage(new UserInputWizardPage(refactoring.getName())
+ {
+ public void createControl(Composite parent)
+ {
+ Composite top = new Composite(parent, SWT.NONE);
+ initializeDialogUnits(top);
+ setControl(top);
+
+ top.setLayout(new GridLayout(1, false));
+
+ Label lbl = new Label(top, SWT.NONE);
+ lbl.setText("Click OK to introduce implicit none in "
+ + refactoring.getScopeDescription()
+ + "\nTo see what changes will be made, click Preview.");
+ }
+ });
}
}
}

Back to the top