List of usage examples for com.intellij.openapi.actionSystem PlatformDataKeys HELP_ID
DataKey HELP_ID
To view the source code for com.intellij.openapi.actionSystem PlatformDataKeys HELP_ID.
Click Source Link
From source file:com.headwire.aem.tooling.intellij.console.ConsoleLogToolWindowFactory.java
License:Apache License
static void createContent(Project project, ToolWindow toolWindow, ConsoleLogConsole console, String title) { // update default Event Log tab title ContentManager contentManager = toolWindow.getContentManager(); Content generalContent = contentManager.getContent(0); if (generalContent != null && contentManager.getContentCount() == 1) { generalContent.setDisplayName("General"); }// w ww. ja v a2 s. c o m final Editor editor = console.getConsoleEditor(); SimpleToolWindowPanel panel = new SimpleToolWindowPanel(false, true) { @Override public Object getData(@NonNls String dataId) { return PlatformDataKeys.HELP_ID.is(dataId) ? ConsoleLog.HELP_ID : super.getData(dataId); } }; panel.setContent(editor.getComponent()); panel.addAncestorListener(new LogShownTracker(project)); ActionToolbar toolbar = createToolbar(project, editor, console); toolbar.setTargetComponent(editor.getContentComponent()); panel.setToolbar(toolbar.getComponent()); Content content = ContentFactory.SERVICE.getInstance().createContent(panel, title, false); contentManager.addContent(content); contentManager.setSelectedContent(content); }
From source file:com.intellij.codeInsight.documentation.DocumentationComponent.java
License:Apache License
public DocumentationComponent(final DocumentationManager manager, final AnAction[] additionalActions) { myManager = manager;/*from w w w.java 2 s. c o m*/ myIsEmpty = true; myIsShown = false; myEditorPane = new JEditorPane(UIUtil.HTML_MIME, "") { @Override public EditorKit getEditorKit() { return new HTMLEditorKit(); } @Override public Dimension getPreferredScrollableViewportSize() { int em = myEditorPane.getFont().getSize(); int prefWidth = PREFERRED_WIDTH_EM * em; int prefHeightMin = PREFERRED_HEIGHT_MIN_EM * em; int prefHeightMax = PREFERRED_HEIGHT_MAX_EM * em; if (getWidth() == 0 || getHeight() == 0) { setSize(prefWidth, prefHeightMax); } Insets ins = myEditorPane.getInsets(); View rootView = myEditorPane.getUI().getRootView(myEditorPane); rootView.setSize(prefWidth, prefHeightMax); // Necessary! Without this line, the size won't increase when the content does int prefHeight = (int) rootView.getPreferredSpan(View.Y_AXIS) + ins.bottom + ins.top + myScrollPane.getHorizontalScrollBar().getMaximumSize().height; prefHeight = Math.max(prefHeightMin, Math.min(prefHeightMax, prefHeight)); return new Dimension(prefWidth, prefHeight); } { enableEvents(AWTEvent.KEY_EVENT_MASK); } @Override protected void processKeyEvent(KeyEvent e) { KeyStroke keyStroke = KeyStroke.getKeyStrokeForEvent(e); ActionListener listener = myKeyboardActions.get(keyStroke); if (listener != null) { listener.actionPerformed(new ActionEvent(DocumentationComponent.this, 0, "")); e.consume(); return; } super.processKeyEvent(e); } @Override protected void paintComponent(Graphics g) { GraphicsUtil.setupAntialiasing(g); super.paintComponent(g); } @Override public void setDocument(Document doc) { super.setDocument(doc); if (doc instanceof StyledDocument) { doc.putProperty("imageCache", myImageProvider); } } }; DataProvider helpDataProvider = new DataProvider() { @Override public Object getData(@NonNls String dataId) { return PlatformDataKeys.HELP_ID.is(dataId) ? DOCUMENTATION_TOPIC_ID : null; } }; myEditorPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); myText = ""; myEditorPane.setEditable(false); myEditorPane.setBackground(HintUtil.INFORMATION_COLOR); myEditorPane.setEditorKit(UIUtil.getHTMLEditorKit()); myScrollPane = new JBScrollPane(myEditorPane) { @Override protected void processMouseWheelEvent(MouseWheelEvent e) { if (!EditorSettingsExternalizable.getInstance().isWheelFontChangeEnabled() || !EditorUtil.isChangeFontSize(e)) { super.processMouseWheelEvent(e); return; } int change = Math.abs(e.getWheelRotation()); boolean increase = e.getWheelRotation() <= 0; EditorColorsManager colorsManager = EditorColorsManager.getInstance(); EditorColorsScheme scheme = colorsManager.getGlobalScheme(); FontSize newFontSize = scheme.getQuickDocFontSize(); for (; change > 0; change--) { if (increase) { newFontSize = newFontSize.larger(); } else { newFontSize = newFontSize.smaller(); } } if (newFontSize == scheme.getQuickDocFontSize()) { return; } scheme.setQuickDocFontSize(newFontSize); applyFontSize(); setFontSizeSliderSize(newFontSize); } }; myScrollPane.setBorder(null); myScrollPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); final MouseAdapter mouseAdapter = new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { myManager.requestFocus(); myShowSettingsButton.hideSettings(); } }; myEditorPane.addMouseListener(mouseAdapter); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeMouseListener(mouseAdapter); } }); final FocusAdapter focusAdapter = new FocusAdapter() { @Override public void focusLost(FocusEvent e) { Component previouslyFocused = WindowManagerEx.getInstanceEx() .getFocusedComponent(manager.getProject(getElement())); if (!(previouslyFocused == myEditorPane)) { if (myHint != null && !myHint.isDisposed()) myHint.cancel(); } } }; myEditorPane.addFocusListener(focusAdapter); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeFocusListener(focusAdapter); } }); setLayout(new BorderLayout()); JLayeredPane layeredPane = new JBLayeredPane() { @Override public void doLayout() { final Rectangle r = getBounds(); for (Component component : getComponents()) { if (component instanceof JScrollPane) { component.setBounds(0, 0, r.width, r.height); } else { int insets = 2; Dimension d = component.getPreferredSize(); component.setBounds(r.width - d.width - insets, insets, d.width, d.height); } } } @Override public Dimension getPreferredSize() { Dimension editorPaneSize = myEditorPane.getPreferredScrollableViewportSize(); Dimension controlPanelSize = myControlPanel.getPreferredSize(); return new Dimension(Math.max(editorPaneSize.width, controlPanelSize.width), editorPaneSize.height + controlPanelSize.height); } }; layeredPane.add(myScrollPane); layeredPane.setLayer(myScrollPane, 0); mySettingsPanel = createSettingsPanel(); layeredPane.add(mySettingsPanel); layeredPane.setLayer(mySettingsPanel, JLayeredPane.POPUP_LAYER); add(layeredPane, BorderLayout.CENTER); setOpaque(true); myScrollPane.setViewportBorder(JBScrollPane.createIndentBorder()); final DefaultActionGroup actions = new DefaultActionGroup(); final BackAction back = new BackAction(); final ForwardAction forward = new ForwardAction(); EditDocumentationSourceAction edit = new EditDocumentationSourceAction(); actions.add(back); actions.add(forward); actions.add(myExternalDocAction = new ExternalDocAction()); actions.add(edit); back.registerCustomShortcutSet(CustomShortcutSet.fromString("LEFT"), this); forward.registerCustomShortcutSet(CustomShortcutSet.fromString("RIGHT"), this); myExternalDocAction.registerCustomShortcutSet(CustomShortcutSet.fromString("UP"), this); edit.registerCustomShortcutSet(CommonShortcuts.getEditSource(), this); if (additionalActions != null) { for (final AnAction action : additionalActions) { actions.add(action); ShortcutSet shortcutSet = action.getShortcutSet(); if (shortcutSet != null) { action.registerCustomShortcutSet(shortcutSet, this); } } } myToolBar = ActionManager.getInstance().createActionToolbar(ActionPlaces.JAVADOC_TOOLBAR, actions, true); myControlPanel = new JPanel(new BorderLayout(5, 5)); myControlPanel.setBorder(IdeBorderFactory.createBorder(SideBorder.BOTTOM)); myElementLabel = new JLabel(); myElementLabel.setMinimumSize(new Dimension(100, 0)); // do not recalculate size according to the text myControlPanel.add(myToolBar.getComponent(), BorderLayout.WEST); myControlPanel.add(myElementLabel, BorderLayout.CENTER); myControlPanel.add(myShowSettingsButton = new MyShowSettingsButton(), BorderLayout.EAST); myControlPanelVisible = false; final HyperlinkListener hyperlinkListener = new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent e) { HyperlinkEvent.EventType type = e.getEventType(); if (type == HyperlinkEvent.EventType.ACTIVATED) { manager.navigateByLink(DocumentationComponent.this, e.getDescription()); } } }; myEditorPane.addHyperlinkListener(hyperlinkListener); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeHyperlinkListener(hyperlinkListener); } }); registerActions(); updateControlState(); }
From source file:com.intellij.codeInspection.ui.InspectionResultsView.java
License:Apache License
@Override public Object getData(String dataId) { if (PlatformDataKeys.HELP_ID.is(dataId)) return HELP_ID; if (DATA_KEY.is(dataId)) return this; if (myTree == null) return null; TreePath[] paths = myTree.getSelectionPaths(); if (paths == null || paths.length == 0) return null; if (paths.length > 1) { if (LangDataKeys.PSI_ELEMENT_ARRAY.is(dataId)) { return collectPsiElements(); }//from w w w. ja v a 2 s . c o m return null; } TreePath path = paths[0]; InspectionTreeNode selectedNode = (InspectionTreeNode) path.getLastPathComponent(); if (selectedNode instanceof RefElementNode) { final RefElementNode refElementNode = (RefElementNode) selectedNode; RefEntity refElement = refElementNode.getElement(); if (refElement == null) return null; final RefEntity item = refElement.getRefManager().getRefinedElement(refElement); if (!item.isValid()) return null; PsiElement psiElement = item instanceof RefElement ? ((RefElement) item).getElement() : null; if (psiElement == null) return null; final CommonProblemDescriptor problem = refElementNode.getProblem(); if (problem != null) { if (problem instanceof ProblemDescriptor) { psiElement = ((ProblemDescriptor) problem).getPsiElement(); if (psiElement == null) return null; } else { return null; } } if (CommonDataKeys.NAVIGATABLE.is(dataId)) { return getSelectedNavigatable(problem, psiElement); } else if (CommonDataKeys.PSI_ELEMENT.is(dataId)) { return psiElement.isValid() ? psiElement : null; } } else if (selectedNode instanceof ProblemDescriptionNode && CommonDataKeys.NAVIGATABLE.is(dataId)) { return getSelectedNavigatable(((ProblemDescriptionNode) selectedNode).getDescriptor()); } return null; }
From source file:com.intellij.cyclicDependencies.ui.CyclicDependenciesPanel.java
License:Apache License
@Nullable @NonNls//w ww . j a v a2 s. co m public Object getData(@NonNls String dataId) { if (PlatformDataKeys.HELP_ID.is(dataId)) { return "dependency.viewer.tool.window"; } return null; }
From source file:com.intellij.debugger.ui.impl.ThreadsPanel.java
License:Apache License
@Override public Object getData(String dataId) { if (PlatformDataKeys.HELP_ID.is(dataId)) { return HELP_ID; }// w w w . ja v a2s .c o m return super.getData(dataId); }
From source file:com.intellij.debugger.ui.impl.WatchPanel.java
License:Apache License
public Object getData(String dataId) { if (PlatformDataKeys.HELP_ID.is(dataId)) { return HELP_ID; }// w w w .j a v a 2 s . c om return super.getData(dataId); }
From source file:com.intellij.diff.tools.dir.DirDiffViewer.java
License:Apache License
public DirDiffViewer(@NotNull DiffContext context, @NotNull ContentDiffRequest request) { myContext = context;// w ww . java 2s . co m myRequest = request; List<DiffContent> contents = request.getContents(); DiffElement element1 = createDiffElement(contents.get(0)); DiffElement element2 = createDiffElement(contents.get(1)); Project project = context.getProject(); if (project == null) project = DefaultProjectFactory.getInstance().getDefaultProject(); DirDiffTableModel model = new DirDiffTableModel(project, element1, element2, new DirDiffSettings()); myDirDiffPanel = new DirDiffPanel(model, new DirDiffWindow((DirDiffFrame) null) { @Override public Window getWindow() { return null; } @Override public Disposable getDisposable() { return DirDiffViewer.this; } @Override public void setTitle(String title) { } }); myPanel = new JPanel(new BorderLayout()); myPanel.add(myDirDiffPanel.getPanel(), BorderLayout.CENTER); DataManager.registerDataProvider(myPanel, new DataProvider() { @Override public Object getData(@NonNls String dataId) { if (PlatformDataKeys.HELP_ID.is(dataId)) { return "reference.dialogs.diff.folder"; } return myDirDiffPanel.getData(dataId); } }); }
From source file:com.intellij.execution.impl.ConsoleViewImpl.java
License:Apache License
@Override public Object getData(final String dataId) { if (CommonDataKeys.NAVIGATABLE.is(dataId)) { if (myEditor == null) { return null; }/*from w w w.j a va 2 s.c o m*/ final LogicalPosition pos = myEditor.getCaretModel().getLogicalPosition(); final HyperlinkInfo info = myHyperlinks.getHyperlinkInfoByLineAndCol(pos.line, pos.column); final OpenFileDescriptor openFileDescriptor = info instanceof FileHyperlinkInfo ? ((FileHyperlinkInfo) info).getDescriptor() : null; if (openFileDescriptor == null || !openFileDescriptor.getFile().isValid()) { return null; } return openFileDescriptor; } if (CommonDataKeys.EDITOR.is(dataId)) { return myEditor; } if (PlatformDataKeys.HELP_ID.is(dataId)) { return myHelpId; } if (LangDataKeys.CONSOLE_VIEW.is(dataId)) { return this; } return null; }
From source file:com.intellij.execution.ui.RunContentManagerImpl.java
License:Apache License
private void registerToolwindow(@NotNull final Executor executor, @NotNull ToolWindowManagerEx toolWindowManager) { final String toolWindowId = executor.getToolWindowId(); if (toolWindowManager.getToolWindow(toolWindowId) != null) { return;// w w w . j a va 2 s . c o m } final ToolWindow toolWindow = toolWindowManager.registerToolWindow(toolWindowId, true, ToolWindowAnchor.BOTTOM, this, true); final ContentManager contentManager = toolWindow.getContentManager(); contentManager.addDataProvider(new DataProvider() { private int myInsideGetData = 0; @Override public Object getData(String dataId) { myInsideGetData++; try { if (PlatformDataKeys.HELP_ID.is(dataId)) { return executor.getHelpId(); } else { return myInsideGetData == 1 ? DataManager.getInstance() .getDataContext(contentManager.getComponent()).getData(dataId) : null; } } finally { myInsideGetData--; } } }); toolWindow.setIcon(executor.getToolWindowIcon()); myToolwindowIdToBaseIconMap.put(toolWindowId, executor.getToolWindowIcon()); new ContentManagerWatcher(toolWindow, contentManager); contentManager.addContentManagerListener(new ContentManagerAdapter() { @Override public void selectionChanged(final ContentManagerEvent event) { if (event.getOperation() == ContentManagerEvent.ContentOperation.add) { Content content = event.getContent(); getSyncPublisher().contentSelected( content == null ? null : getRunContentDescriptorByContent(content), executor); } } }); myToolwindowIdToContentManagerMap.put(toolWindowId, contentManager); Disposer.register(contentManager, new Disposable() { @Override public void dispose() { myToolwindowIdToContentManagerMap.remove(toolWindowId).removeAllContents(true); myToolwindowIdZBuffer.remove(toolWindowId); myToolwindowIdToBaseIconMap.remove(toolWindowId); } }); myToolwindowIdZBuffer.addLast(toolWindowId); }
From source file:com.intellij.ide.actions.ContextHelpAction.java
License:Apache License
@Nullable protected String getHelpId(DataContext dataContext) { return myHelpID != null ? myHelpID : PlatformDataKeys.HELP_ID.getData(dataContext); }