From 0f86c4b104b57f38e486dd96e2d7caabc4005fb4 Mon Sep 17 00:00:00 2001 From: Evgeny Zakrevsky Date: Wed, 3 Aug 2011 13:35:50 +0400 Subject: [PATCH] mnemonic in PSI viewer --- .../refactoring/ui/MemberSelectionPanel.java | 9 ++-- .../internal/psiView/PsiViewerDialog.form | 50 +++++++++++++++---- .../internal/psiView/PsiViewerDialog.java | 26 +++++++--- 3 files changed, 62 insertions(+), 23 deletions(-) diff --git a/java/java-impl/src/com/intellij/refactoring/ui/MemberSelectionPanel.java b/java/java-impl/src/com/intellij/refactoring/ui/MemberSelectionPanel.java index df40773fd09a..19c548a26e30 100644 --- a/java/java-impl/src/com/intellij/refactoring/ui/MemberSelectionPanel.java +++ b/java/java-impl/src/com/intellij/refactoring/ui/MemberSelectionPanel.java @@ -29,11 +29,9 @@ import com.intellij.refactoring.util.classMembers.MemberInfo; import com.intellij.ui.IdeBorderFactory; import com.intellij.ui.ScrollPaneFactory; import com.intellij.ui.TableUtil; -import com.intellij.ui.TitledBorderWithMnemonic; import javax.swing.*; import javax.swing.border.Border; -import javax.swing.border.TitledBorder; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -64,14 +62,15 @@ public class MemberSelectionPanel extends JPanel { myTable.requestFocus(); } }, KeyStroke.getKeyStroke(KeyEvent.VK_M, SystemInfo.isMac ? InputEvent.META_DOWN_MASK : InputEvent.ALT_DOWN_MASK), - JComponent.WHEN_IN_FOCUSED_WINDOW); + JComponent.WHEN_IN_FOCUSED_WINDOW); } private static String appendTitledBorderMnemonic(String title) { int membersIdx = title.indexOf('M'); if (membersIdx >= 0) { title = title.replaceFirst("M", "&M"); - } else { + } + else { membersIdx = title.indexOf('m'); if (membersIdx >= 0) { title = title.replaceFirst("m", "&m"); @@ -87,6 +86,4 @@ public class MemberSelectionPanel extends JPanel { public MemberSelectionTable getTable() { return myTable; } - - } diff --git a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.form b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.form index 6ca168b726cf..4020064780e3 100644 --- a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.form +++ b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.form @@ -1,16 +1,16 @@
- + - + - + @@ -50,7 +50,7 @@ - + @@ -60,7 +60,7 @@ - + @@ -71,6 +71,14 @@ + + + + + + + + @@ -84,7 +92,7 @@ - + @@ -94,13 +102,21 @@ - + + + + + + + + + - + @@ -110,7 +126,7 @@ - + @@ -121,6 +137,14 @@ + + + + + + + + @@ -224,6 +248,14 @@ + + + + + + + +
diff --git a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java index ea5159428d00..6f3e8bb75c7b 100644 --- a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java +++ b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java @@ -65,10 +65,7 @@ import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.FilenameIndex; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.testFramework.LightVirtualFile; -import com.intellij.ui.CollectionComboBoxModel; -import com.intellij.ui.SortedComboBoxModel; -import com.intellij.ui.TitledBorderWithMnemonic; -import com.intellij.ui.TreeSpeedSearch; +import com.intellij.ui.*; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBList; import com.intellij.ui.treeStructure.Tree; @@ -122,6 +119,10 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp private Tree myBlockTree; private JPanel myBlockStructurePanel; private JSplitPane myBlockRefSplitPane; + private TitledSeparatorWithMnemonic myTextSeparator; + private TitledSeparatorWithMnemonic myPsiTreeSeparator; + private TitledSeparatorWithMnemonic myRefsSeparator; + private TitledSeparatorWithMnemonic myBlockTreeSeparator; @Nullable private BlockTreeBuilder myBlockTreeBuilder; private RangeHighlighter myHighlighter; @@ -242,6 +243,8 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp protected void init() { initBorders(); + initMnemonics(); + initTree(myPsiTree); final TreeCellRenderer renderer = myPsiTree.getCellRenderer(); myPsiTree.setCellRenderer(new TreeCellRenderer() { @@ -545,10 +548,17 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp } private void initBorders() { - myTextPanel.setBorder(new TitledBorderWithMnemonic("&Text")); - myStructureTreePanel.setBorder(new TitledBorderWithMnemonic("PSI &Structure")); - myReferencesPanel.setBorder(new TitledBorderWithMnemonic("&References")); - myBlockStructurePanel.setBorder(new TitledBorderWithMnemonic("Bloc&k Structure")); + //myTextPanel.setBorder(new TitledBorderWithMnemonic("&Text")); + //myStructureTreePanel.setBorder(new TitledBorderWithMnemonic("PSI &Structure")); + //myReferencesPanel.setBorder(new TitledBorderWithMnemonic("&References")); + //myBlockStructurePanel.setBorder(new TitledBorderWithMnemonic("Bloc&k Structure")); + } + + private void initMnemonics() { + myTextSeparator.setLabelFor(myEditor.getContentComponent()); + myPsiTreeSeparator.setLabelFor(myPsiTree); + myRefsSeparator.setLabelFor(myRefs); + myBlockTreeSeparator.setLabelFor(myBlockTree); } private void updateIntersectHighlighter(int highlightStart, int highlightEnd) {