Update of /cvsroot/pydev/org.python.pydev/src/org/python/pydev/ui/interpreters
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31519/src/org/python/pydev/ui/interpreters
Modified Files:
AbstractInterpreterManager.java
Log Message:
<li>Fixed NPE when creating editor with no interpreter configured</li>
<li>Hyperlink works in the same way that F3 (saves file before search)</li>
<li>Fixed problem while navigating pydev package explorer ( https://sourceforge.net/tracker/index.php?func=detail&aid=2008015&group_id=85796&atid=577329 )</li>
<li>Applied patch that fixes race condition in PythonNature (thanks to Radim Kubacki)</li>
<li><strong>Eclipse 3.4</strong>: Move / rename working</li>
Index: AbstractInterpreterManager.java
===================================================================
RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/ui/interpreters/AbstractInterpreterManager.java,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -d -r1.39 -r1.40
*** AbstractInterpreterManager.java 14 Jun 2008 22:14:55 -0000 1.39
--- AbstractInterpreterManager.java 31 Jul 2008 01:47:36 -0000 1.40
***************
*** 32,36 ****
import org.python.pydev.core.structure.FastStringBuffer;
import org.python.pydev.plugin.PydevPlugin;
- import org.python.pydev.plugin.nature.PythonNature;
import org.python.pydev.ui.NotConfiguredInterpreterException;
import org.python.pydev.ui.pythonpathconf.InterpreterInfo;
--- 32,35 ----
***************
*** 453,468 ****
}
! //update the natures...
! List<IPythonNature> pythonNatures = PythonNature.getAllPythonNatures();
! for (IPythonNature nature : pythonNatures) {
! try {
! //if they have the same type of the interpreter manager.
! if (this.isPython() == nature.isPython() || this.isJython() == nature.isJython()) {
! nature.rebuildPath(defaultSelectedInterpreter, monitor);
! }
! } catch (Throwable e) {
! PydevPlugin.log(e);
! }
! }
}
}
--- 452,486 ----
}
! //Commented out: this is not really needed, as the information on the interpreter is mainly kept separated
! //from the projects info (this was initially done on an attempt to track dependencies through different
! //modules, but it proved too time consuming in a dynamic language such as python).
!
! // final Boolean[] restoreNatures = new Boolean[]{false};
! //
! // final Display def = Display.getDefault();
! // def.syncExec(new Runnable(){
! //
! // public void run() {
! // Shell shell = def.getActiveShell();
! // restoreNatures[0] = MessageDialog.openQuestion(shell, "Interpreter info changed",
! // "The interpreter info has been changed, do you want to make a full build?\n" +
! // "(the same thing can be later achieved through the menu: Project > Clean)");
! // }
! // });
! //
! // //update the natures...
! // if(restoreNatures[0]){
! // List<IPythonNature> pythonNatures = PythonNature.getAllPythonNatures();
! // for (IPythonNature nature : pythonNatures) {
! // try {
! // //if they have the same type of the interpreter manager.
! // if (this.isPython() == nature.isPython() || this.isJython() == nature.isJython()) {
! // nature.rebuildPath(defaultSelectedInterpreter, monitor);
! // }
! // } catch (Throwable e) {
! // PydevPlugin.log(e);
! // }
! // }
! // }
}
}
|