本文整理汇总了Java中com.intellij.openapi.actionSystem.DataKey类的典型用法代码示例。如果您正苦于以下问题:Java DataKey类的具体用法?Java DataKey怎么用?Java DataKey使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DataKey类属于com.intellij.openapi.actionSystem包,在下文中一共展示了DataKey类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: findDisposable
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
private static AsyncResult<Disposable> findDisposable(Disposable defaultValue, final DataKey<? extends Disposable> key) {
if (defaultValue == null) {
if (ApplicationManager.getApplication() != null) {
final AsyncResult<Disposable> result = new AsyncResult<Disposable>();
DataManager.getInstance().getDataContextFromFocus().doWhenDone(new Consumer<DataContext>() {
public void consume(DataContext context) {
Disposable disposable = key.getData(context);
if (disposable == null) {
disposable = Disposer.get("ui");
}
result.setDone(disposable);
}
});
return result;
}
else {
return null;
}
}
else {
return new AsyncResult.Done<Disposable>(defaultValue);
}
}
示例2: discoverPopup
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
private static Component discoverPopup(final DataKey<JBPopup> datakey, Component focusOwner) {
if (focusOwner == null) {
focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
}
if (focusOwner == null) return null;
final DataContext dataContext = DataManager.getInstance().getDataContext(focusOwner);
if (dataContext == null) return null;
final JBPopup popup = datakey.getData(dataContext);
if (popup != null && popup.isVisible()) {
return popup.getContent();
}
return null;
}
示例3: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
public void calcData(DataKey key, DataSink sink) {
if (key.equals(CommonDataKeys.PROJECT)) {
sink.put(CommonDataKeys.PROJECT, myProject);
}
else if (key.equals(CommonDataKeys.NAVIGATABLE)) {
final EditorInfo editorInfo = myTable.getSelectedObject();
if (editorInfo == null) {
return;
}
String filePath = editorInfo.getFilePath();
final int pos = filePath.lastIndexOf('/');
if (pos >= 0) {
filePath = filePath.substring(pos+1);
}
final File file = new File(editorInfo.getPath(), filePath);
final VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(file);
if (vf != null) {
sink.put(CommonDataKeys.NAVIGATABLE, new OpenFileDescriptor(myProject, vf));
}
}
}
示例4: findDisposable
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
private static AsyncResult<Disposable> findDisposable(Disposable defaultValue, final DataKey<? extends Disposable> key) {
if (defaultValue == null) {
if (ApplicationManager.getApplication() != null) {
final AsyncResult<Disposable> result = new AsyncResult<Disposable>();
DataManager.getInstance().getDataContextFromFocus().doWhenDone(new AsyncResult.Handler<DataContext>() {
public void run(DataContext context) {
Disposable disposable = key.getData(context);
if (disposable == null) {
disposable = Disposer.get("ui");
}
result.setDone(disposable);
}
});
return result;
}
else {
return null;
}
}
else {
return new AsyncResult.Done<Disposable>(defaultValue);
}
}
示例5: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
public void calcData(DataKey key, DataSink sink) {
if (key.equals(PlatformDataKeys.PROJECT)) {
sink.put(PlatformDataKeys.PROJECT, myProject);
}
else if (key.equals(PlatformDataKeys.NAVIGATABLE)) {
final EditorInfo editorInfo = myTable.getSelectedObject();
if (editorInfo == null) {
return;
}
String filePath = editorInfo.getFilePath();
final int pos = filePath.lastIndexOf('/');
if (pos >= 0) {
filePath = filePath.substring(pos+1);
}
final File file = new File(editorInfo.getPath(), filePath);
final VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(file);
if (vf != null) {
sink.put(PlatformDataKeys.NAVIGATABLE, new OpenFileDescriptor(myProject, vf));
}
}
}
示例6: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (CommonDataKeys.PSI_ELEMENT == key) {
sink.put(CommonDataKeys.PSI_ELEMENT, myPackage);
}
}
示例7: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (CommonDataKeys.PSI_ELEMENT == key) {
sink.put(CommonDataKeys.PSI_ELEMENT, getPsiClass());
}
if (UsageView.USAGE_INFO_KEY == key) {
PsiClass psiClass = getPsiClass();
if (psiClass != null) {
sink.put(UsageView.USAGE_INFO_KEY, new UsageInfo(psiClass));
}
}
}
示例8: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (CommonDataKeys.PSI_ELEMENT == key) {
sink.put(CommonDataKeys.PSI_ELEMENT, getMethod());
}
if (UsageView.USAGE_INFO_KEY == key) {
PsiMethod method = getMethod();
if (method != null) {
sink.put(UsageView.USAGE_INFO_KEY, new UsageInfo(method));
}
}
}
示例9: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (CommonDataKeys.PSI_ELEMENT == key) {
sink.put(CommonDataKeys.PSI_ELEMENT, getElement());
}
if (UsageView.USAGE_INFO_KEY == key) {
T element = getElement();
if (element != null) {
sink.put(UsageView.USAGE_INFO_KEY, new UsageInfo(element));
}
}
}
示例10: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (LangDataKeys.MODULE_CONTEXT == key) {
sink.put(LangDataKeys.MODULE_CONTEXT, myModule);
}
}
示例11: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (!isValid()) return;
if (CommonDataKeys.VIRTUAL_FILE == key) {
sink.put(CommonDataKeys.VIRTUAL_FILE, myDir);
}
if (CommonDataKeys.PSI_ELEMENT == key) {
sink.put(CommonDataKeys.PSI_ELEMENT, getDirectory());
}
}
示例12: getMaxSearchScopeToWarnOfFallingOutOf
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@NotNull
SearchScope getMaxSearchScopeToWarnOfFallingOutOf(@NotNull UsageTarget[] searchFor) {
UsageTarget target = searchFor[0];
if (target instanceof TypeSafeDataProvider) {
final SearchScope[] scope = new SearchScope[1];
((TypeSafeDataProvider)target).calcData(UsageView.USAGE_SCOPE, new DataSink() {
@Override
public <T> void put(DataKey<T> key, T data) {
scope[0] = (SearchScope)data;
}
});
return scope[0];
}
return GlobalSearchScope.allScope(myProject); // by default do not warn of falling out of scope
}
示例13: calcData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
public void calcData(final DataKey key, final DataSink sink) {
if (key == UsageView.USAGE_INFO_KEY) {
sink.put(UsageView.USAGE_INFO_KEY, getUsageInfo());
}
if (key == UsageView.USAGE_INFO_LIST_KEY) {
List<UsageInfo> list = Arrays.asList(getMergedInfos());
sink.put(UsageView.USAGE_INFO_LIST_KEY, list);
}
}
示例14: passForDataContext
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
public void passForDataContext(final DataKey key, final Object value) {
myGenericData.put(key.getName(), value);
if (haveMultipleLayers()) {
for (Pair<String, DiffRequest> pair : myAdditional) {
pair.getSecond().passForDataContext(key, value);
}
}
}
示例15: getData
import com.intellij.openapi.actionSystem.DataKey; //导入依赖的package包/类
@Override
@Nullable
public synchronized Object getData(@NonNls String dataId) {
myValue = null;
myLastKey = DataKey.create(dataId);
myProvider.calcData(myLastKey, this);
return myValue;
}