Lines 13-18
Link Here
|
13 |
* Benjamin Muskalla <b.muskalla@gmx.net> - https://bugs.eclipse.org/bugs/show_bug.cgi?id=41573 |
13 |
* Benjamin Muskalla <b.muskalla@gmx.net> - https://bugs.eclipse.org/bugs/show_bug.cgi?id=41573 |
14 |
* Stephan Wahlbrink <stephan.wahlbrink@walware.de> - Wrong operations mode/feedback for text drag over/drop in text editors - https://bugs.eclipse.org/bugs/show_bug.cgi?id=206043 |
14 |
* Stephan Wahlbrink <stephan.wahlbrink@walware.de> - Wrong operations mode/feedback for text drag over/drop in text editors - https://bugs.eclipse.org/bugs/show_bug.cgi?id=206043 |
15 |
* Tom Eicher (Avaloq Evolution AG) - block selection mode |
15 |
* Tom Eicher (Avaloq Evolution AG) - block selection mode |
|
|
16 |
* Renato Silva - out-of-sync extension point (http://bugs.eclipse.org/bugs/show_bug.cgi?id=261716) |
17 |
* |
16 |
*******************************************************************************/ |
18 |
*******************************************************************************/ |
17 |
package org.eclipse.ui.texteditor; |
19 |
package org.eclipse.ui.texteditor; |
18 |
|
20 |
|
Lines 107-112
Link Here
|
107 |
import org.eclipse.jface.viewers.SelectionChangedEvent; |
109 |
import org.eclipse.jface.viewers.SelectionChangedEvent; |
108 |
import org.eclipse.jface.viewers.StructuredSelection; |
110 |
import org.eclipse.jface.viewers.StructuredSelection; |
109 |
import org.eclipse.jface.window.IShellProvider; |
111 |
import org.eclipse.jface.window.IShellProvider; |
|
|
112 |
import org.eclipse.jface.window.Window; |
110 |
|
113 |
|
111 |
import org.eclipse.jface.text.AbstractInformationControlManager; |
114 |
import org.eclipse.jface.text.AbstractInformationControlManager; |
112 |
import org.eclipse.jface.text.BadLocationException; |
115 |
import org.eclipse.jface.text.BadLocationException; |
Lines 4943-4954
Link Here
|
4943 |
} |
4946 |
} |
4944 |
|
4947 |
|
4945 |
if (isNotSynchronizedException(exception) && fErrorCorrectionOnSave == 1 && !isSynchronized) { |
4948 |
if (isNotSynchronizedException(exception) && fErrorCorrectionOnSave == 1 && !isSynchronized) { |
4946 |
String title= EditorMessages.Editor_error_save_outofsync_title; |
4949 |
|
4947 |
String msg= NLSUtility.format(EditorMessages.Editor_error_save_outofsync_message, getEditorInput().getToolTipText()); |
4950 |
OutOfSyncHandler handler = selectOutOfSycHandler(OutOfSyncHandler.getContributors()); |
4948 |
|
4951 |
if (handler != null) { |
4949 |
if (MessageDialog.openQuestion(getSite().getShell(), title, msg)) |
4952 |
handler.handle(p, getEditorInput(), progressMonitor); |
4950 |
performSave(true, progressMonitor); |
4953 |
} else |
4951 |
else { |
|
|
4952 |
/* |
4954 |
/* |
4953 |
* 1GEUPKR: ITPJUI:ALL - Loosing work with simultaneous edits |
4955 |
* 1GEUPKR: ITPJUI:ALL - Loosing work with simultaneous edits |
4954 |
* Set progress monitor to canceled in order to report back |
4956 |
* Set progress monitor to canceled in order to report back |
Lines 4956-4962
Link Here
|
4956 |
*/ |
4958 |
*/ |
4957 |
if (progressMonitor != null) |
4959 |
if (progressMonitor != null) |
4958 |
progressMonitor.setCanceled(true); |
4960 |
progressMonitor.setCanceled(true); |
4959 |
} |
4961 |
|
4960 |
} else { |
4962 |
} else { |
4961 |
String title= EditorMessages.Editor_error_save_title; |
4963 |
String title= EditorMessages.Editor_error_save_title; |
4962 |
String msg= EditorMessages.Editor_error_save_message; |
4964 |
String msg= EditorMessages.Editor_error_save_message; |
Lines 4974-4979
Link Here
|
4974 |
-- fErrorCorrectionOnSave; |
4976 |
-- fErrorCorrectionOnSave; |
4975 |
} |
4977 |
} |
4976 |
} |
4978 |
} |
|
|
4979 |
|
4980 |
/** |
4981 |
* Presents a dialog for asking what to do on out-of-sync saving errors. |
4982 |
* @param handlers the available handlers |
4983 |
* @return the selected handler or null otherwise |
4984 |
*/ |
4985 |
protected OutOfSyncHandler selectOutOfSycHandler(OutOfSyncHandler[] handlers) { |
4986 |
OutOfSyncHandler defaultHandler = new OutOfSyncHandler(){ |
4987 |
public String getAnswer() { |
4988 |
return EditorMessages.Editor_error_save_outofsync_overwrite; |
4989 |
} |
4990 |
public boolean handle(IDocumentProvider documentProvider, IEditorInput editorInput, IProgressMonitor progressMonitor) { |
4991 |
performSave(true, progressMonitor); |
4992 |
return true; |
4993 |
} |
4994 |
}; |
4995 |
OutOfSyncHandlerSelectionDialog dialog = new OutOfSyncHandlerSelectionDialog(getSite().getShell(), handlers, defaultHandler, getEditorInput().getToolTipText()); |
4996 |
if (dialog.open() == Window.OK) |
4997 |
return dialog.getSelected(); |
4998 |
return null; |
4999 |
} |
4977 |
|
5000 |
|
4978 |
/** |
5001 |
/** |
4979 |
* Presents an error dialog to the user when a problem |
5002 |
* Presents an error dialog to the user when a problem |