avoid CCE on plugin-contributed editors (EA-20115 - CCE: CutProviderRule.getData)

This commit is contained in:
Dmitry Jemerov
2010-04-22 22:23:07 +04:00
parent 02dafea28d
commit 6bbe71a99e
3 changed files with 15 additions and 13 deletions
@@ -17,14 +17,15 @@ package com.intellij.ide.impl.dataRules;
import com.intellij.openapi.actionSystem.DataProvider;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.ex.EditorEx;
public class CopyProviderRule implements GetDataRule {
public Object getData(DataProvider dataProvider) {
final EditorEx editor = (EditorEx)dataProvider.getData(PlatformDataKeys.EDITOR.getName());
if (editor == null) {
return null;
final Editor editor = PlatformDataKeys.EDITOR.getData(dataProvider);
if (editor instanceof EditorEx) {
return ((EditorEx) editor).getCopyProvider();
}
return editor.getCopyProvider();
return null;
}
}
@@ -17,14 +17,15 @@ package com.intellij.ide.impl.dataRules;
import com.intellij.openapi.actionSystem.DataProvider;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.ex.EditorEx;
public class CutProviderRule implements GetDataRule {
public Object getData(DataProvider dataProvider) {
final EditorEx editor = (EditorEx)dataProvider.getData(PlatformDataKeys.EDITOR.getName());
if (editor == null) {
return null;
final Editor editor = PlatformDataKeys.EDITOR.getData(dataProvider);
if (editor instanceof EditorEx) {
return ((EditorEx) editor).getCutProvider();
}
return editor.getCutProvider();
return null;
}
}
@@ -17,15 +17,15 @@ package com.intellij.ide.impl.dataRules;
import com.intellij.openapi.actionSystem.DataProvider;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.ex.EditorEx;
public class PasteProviderRule implements GetDataRule {
public Object getData(DataProvider dataProvider) {
final EditorEx editor = (EditorEx)dataProvider.getData(PlatformDataKeys.EDITOR.getName());
if (editor == null) {
return null;
final Editor editor = PlatformDataKeys.EDITOR.getData(dataProvider);
if (editor instanceof EditorEx) {
return ((EditorEx) editor).getPasteProvider();
}
return editor.getPasteProvider();
return null;
}
}