Update of /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/hyperlink
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31519/src/org/python/pydev/editor/hyperlink
Modified Files:
PythonHyperlink.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: PythonHyperlink.java
===================================================================
RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/hyperlink/PythonHyperlink.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PythonHyperlink.java 4 Feb 2008 02:01:35 -0000 1.1
--- PythonHyperlink.java 31 Jul 2008 01:47:36 -0000 1.2
***************
*** 4,7 ****
--- 4,9 ----
import org.eclipse.jface.text.IRegion;
import org.eclipse.jface.text.hyperlink.IHyperlink;
+ import org.eclipse.ui.IWorkbench;
+ import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
import org.python.pydev.core.docutils.PySelection;
***************
*** 48,51 ****
--- 50,63 ----
public void open() {
IPyRefactoring pyRefactoring = PyRefactoring.getPyRefactoring();
+
+ //saves the dirty editors so that hyperlink is correct.
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ if(workbench != null){
+ IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
+ if(workbenchWindow != null){
+ workbenchWindow.getActivePage().saveAllEditors(false);
+ }
+ }
+
RefactoringRequest refactoringRequest = PyRefactorAction.createRefactoringRequest(null, this.fEditor, new PySelection(this.fEditor));
try{
***************
*** 55,59 ****
PyGoToDefinition.openDefinition(pointers, fEditor, fEditor.getSite().getShell());
}else{
! PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell().getDisplay().beep();
}
}catch(Throwable t){
--- 67,71 ----
PyGoToDefinition.openDefinition(pointers, fEditor, fEditor.getSite().getShell());
}else{
! workbench.getActiveWorkbenchWindow().getShell().getDisplay().beep();
}
}catch(Throwable t){
|