Arrangement: don't configure shortcuts for global actions

This commit is contained in:
Svetlana.Zemlyanskaya
2016-03-24 16:35:21 +01:00
parent 236d54322a
commit 0142864da7
9 changed files with 27 additions and 76 deletions
@@ -35,20 +35,6 @@ public class ArrangementConstants {
@NonNls public static final String ALIAS_RULE_CONTROL_TOOLBAR_PLACE = "Arrangement.Alias.Rule.ToolBar.Place";
@NonNls public static final String ALIAS_RULE_CONTROL_PLACE = "Arrangement.Alias.Rule.Control.Place";
@NonNls public static final String MATCHING_RULE_ADD = "Arrangement.Rule.Add";
@NonNls public static final String MATCHING_RULE_REMOVE = "Arrangement.Rule.Remove";
@NonNls public static final String MATCHING_RULE_EDIT = "Arrangement.Rule.Edit";
@NonNls public static final String MATCHING_RULE_MOVE_UP = "Arrangement.Rule.Match.Condition.Move.Up";
@NonNls public static final String MATCHING_RULE_MOVE_DOWN = "Arrangement.Rule.Match.Condition.Move.Down";
@NonNls public static final String GROUPING_RULE_MOVE_UP = "Arrangement.Rule.Group.Condition.Move.Up";
@NonNls public static final String GROUPING_RULE_MOVE_DOWN = "Arrangement.Rule.Group.Condition.Move.Down";
@NonNls public static final String MATCHING_ALIAS_RULE_ADD = "Arrangement.Alias.Rule.Add";
@NonNls public static final String MATCHING_ALIAS_RULE_REMOVE = "Arrangement.Alias.Rule.Remove";
@NonNls public static final String MATCHING_ALIAS_RULE_EDIT = "Arrangement.Alias.Rule.Edit";
@NonNls public static final String MATCHING_ALIAS_RULE_MOVE_UP = "Arrangement.Alias.Rule.Match.Condition.Move.Up";
@NonNls public static final String MATCHING_ALIAS_RULE_MOVE_DOWN = "Arrangement.Alias.Rule.Match.Condition.Move.Down";
public static final int HORIZONTAL_PADDING = 8;
public static final int VERTICAL_PADDING = 4;
public static final int HORIZONTAL_GAP = 5;
@@ -22,7 +22,6 @@ import com.intellij.application.options.codeStyle.arrangement.color.ArrangementC
import com.intellij.application.options.codeStyle.arrangement.group.ArrangementGroupingRulesPanel;
import com.intellij.application.options.codeStyle.arrangement.match.ArrangementMatchingRulesPanel;
import com.intellij.lang.Language;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.application.ApplicationBundle;
import com.intellij.openapi.editor.colors.EditorColorsScheme;
import com.intellij.openapi.editor.highlighter.EditorHighlighter;
@@ -98,23 +97,6 @@ public abstract class ArrangementSettingsPanel extends CodeStyleAbstractPanel {
final List<CompositeArrangementSettingsToken> groupingTokens = settingsManager.getSupportedGroupingTokens();
myGroupingRulesPanel.setVisible(groupingTokens != null && !groupingTokens.isEmpty());
registerShortcut(ArrangementConstants.MATCHING_RULE_ADD, CommonShortcuts.getNew(), myMatchingRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_RULE_REMOVE, CommonShortcuts.getDelete(), myMatchingRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_RULE_MOVE_UP, CommonShortcuts.MOVE_UP, myMatchingRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_RULE_MOVE_DOWN, CommonShortcuts.MOVE_DOWN, myMatchingRulesPanel);
final CustomShortcutSet edit = new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0));
registerShortcut(ArrangementConstants.MATCHING_RULE_EDIT, edit, myMatchingRulesPanel);
registerShortcut(ArrangementConstants.GROUPING_RULE_MOVE_UP, CommonShortcuts.MOVE_UP, myGroupingRulesPanel);
registerShortcut(ArrangementConstants.GROUPING_RULE_MOVE_DOWN, CommonShortcuts.MOVE_DOWN, myGroupingRulesPanel);
}
private void registerShortcut(@NotNull String actionId, @NotNull ShortcutSet shortcut, @NotNull JComponent component) {
final AnAction action = ActionManager.getInstance().getAction(actionId);
if (action != null) {
action.registerCustomShortcutSet(shortcut, component, this);
}
}
@Nullable
@@ -35,6 +35,7 @@ public class AddArrangementRuleAction extends AbstractArrangementRuleAction impl
getTemplatePresentation().setText(ApplicationBundle.message("arrangement.action.rule.add.text"));
getTemplatePresentation().setDescription(ApplicationBundle.message("arrangement.action.rule.add.description"));
getTemplatePresentation().setIcon(IconUtil.getAddIcon());
setEnabledInModalContext(true);
}
@Override
@@ -33,6 +33,7 @@ public class EditArrangementRuleAction extends AbstractArrangementRuleAction imp
getTemplatePresentation().setText(ApplicationBundle.message("arrangement.action.rule.edit.text"));
getTemplatePresentation().setDescription(ApplicationBundle.message("arrangement.action.rule.edit.description"));
getTemplatePresentation().setIcon(IconUtil.getEditIcon());
setEnabledInModalContext(true);
}
@Override
@@ -33,6 +33,7 @@ public class MoveArrangementMatchingRuleDownAction extends AbstractMoveArrangeme
getTemplatePresentation().setText(ApplicationBundle.message("arrangement.action.rule.move.down.text"));
getTemplatePresentation().setDescription(ApplicationBundle.message("arrangement.action.rule.move.down.description"));
getTemplatePresentation().setIcon(IconUtil.getMoveDownIcon());
setEnabledInModalContext(true);
}
@Override
@@ -33,6 +33,7 @@ public class MoveArrangementMatchingRuleUpAction extends AbstractMoveArrangement
getTemplatePresentation().setText(ApplicationBundle.message("arrangement.action.rule.move.up.text"));
getTemplatePresentation().setDescription(ApplicationBundle.message("arrangement.action.rule.move.up.description"));
getTemplatePresentation().setIcon(IconUtil.getMoveUpIcon());
setEnabledInModalContext(true);
}
@Override
@@ -33,6 +33,7 @@ public class RemoveArrangementRuleAction extends AbstractArrangementRuleAction i
getTemplatePresentation().setText(ApplicationBundle.message("arrangement.action.rule.remove.text"));
getTemplatePresentation().setDescription(ApplicationBundle.message("arrangement.action.rule.remove.description"));
getTemplatePresentation().setIcon(IconUtil.getRemoveIcon());
setEnabledInModalContext(true);
}
@Override
@@ -15,21 +15,16 @@
*/
package com.intellij.application.options.codeStyle.arrangement.match.tokens;
import com.intellij.application.options.codeStyle.arrangement.ArrangementConstants;
import com.intellij.application.options.codeStyle.arrangement.color.ArrangementColorsProvider;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.options.UnnamedConfigurable;
import com.intellij.openapi.util.Disposer;
import com.intellij.psi.codeStyle.arrangement.match.StdArrangementMatchRule;
import com.intellij.psi.codeStyle.arrangement.std.StdArrangementRuleAliasToken;
import com.intellij.psi.codeStyle.arrangement.std.ArrangementStandardSettingsManager;
import com.intellij.psi.codeStyle.arrangement.std.StdArrangementRuleAliasToken;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
import java.awt.event.KeyEvent;
import java.util.List;
/**
@@ -45,29 +40,6 @@ public class ArrangementRuleAliasConfigurable implements UnnamedConfigurable {
myToken = token;
myTokenRulesPanel = new ArrangementRuleAliasesPanel(settingsManager, colorsProvider);
myTokenRulesPanel.setRuleSequences(token.getDefinitionRules());
registerShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_ADD, CommonShortcuts.getNew(), myTokenRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_REMOVE, CommonShortcuts.getDelete(), myTokenRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_MOVE_UP, CommonShortcuts.MOVE_UP, myTokenRulesPanel);
registerShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_MOVE_DOWN, CommonShortcuts.MOVE_DOWN, myTokenRulesPanel);
final CustomShortcutSet edit = new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0));
registerShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_EDIT, edit, myTokenRulesPanel);
}
private static void registerShortcut(@NotNull String actionId,
@NotNull ShortcutSet shortcut,
@NotNull JComponent component) {
final AnAction action = ActionManager.getInstance().getAction(actionId);
if (action != null) {
action.registerCustomShortcutSet(shortcut, component);
}
}
private static void unregisterShortcut(@NotNull String actionId, @NotNull JComponent component) {
final AnAction action = ActionManager.getInstance().getAction(actionId);
if (action != null) {
action.unregisterCustomShortcutSet(component);
}
}
@Nullable
@@ -94,15 +66,5 @@ public class ArrangementRuleAliasConfigurable implements UnnamedConfigurable {
@Override
public void disposeUIResources() {
Disposer.dispose(new Disposable() {
@Override
public void dispose() {
unregisterShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_ADD, myTokenRulesPanel);
unregisterShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_REMOVE, myTokenRulesPanel);
unregisterShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_MOVE_UP, myTokenRulesPanel);
unregisterShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_MOVE_DOWN, myTokenRulesPanel);
unregisterShortcut(ArrangementConstants.MATCHING_ALIAS_RULE_EDIT, myTokenRulesPanel);
}
});
}
}
@@ -907,34 +907,50 @@
<add-to-group group-id="MaintenanceGroup" anchor="last"/>
</action>
<!-- Arrangement rules -->
<action id="Arrangement.Rule.Add"
use-shortcut-of="NewElement"
class="com.intellij.application.options.codeStyle.arrangement.action.AddArrangementRuleAction"/>
<action id="Arrangement.Rule.Section.Add"
class="com.intellij.application.options.codeStyle.arrangement.action.AddArrangementSectionRuleAction"/>
<action id="Arrangement.Rule.Remove"
use-shortcut-of="$Delete"
class="com.intellij.application.options.codeStyle.arrangement.action.RemoveArrangementRuleAction"/>
<action id="Arrangement.Rule.Edit"
class="com.intellij.application.options.codeStyle.arrangement.action.EditArrangementRuleAction"/>
class="com.intellij.application.options.codeStyle.arrangement.action.EditArrangementRuleAction">
<keyboard-shortcut keymap="$default" first-keystroke="F2"/>
</action>
<action id="Arrangement.Rule.Match.Condition.Move.Up"
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementMatchingRuleUpAction"/>
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementMatchingRuleUpAction">
<keyboard-shortcut keymap="$default" first-keystroke="alt UP"/>
</action>
<action id="Arrangement.Rule.Match.Condition.Move.Down"
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementMatchingRuleDownAction"/>
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementMatchingRuleDownAction">
<keyboard-shortcut keymap="$default" first-keystroke="alt DOWN"/>
</action>
<action id="Arrangement.Custom.Token.Rule.Edit"
class="com.intellij.application.options.codeStyle.arrangement.action.EditRuleAliasesDefinitionAction"/>
<action id="Arrangement.Rule.Group.Condition.Move.Up"
use-shortcut-of="Arrangement.Rule.Match.Condition.Move.Up"
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementGroupingRuleUpAction"/>
<action id="Arrangement.Rule.Group.Condition.Move.Down"
use-shortcut-of="Arrangement.Rule.Match.Condition.Move.Down"
class="com.intellij.application.options.codeStyle.arrangement.action.MoveArrangementGroupingRuleDownAction"/>
<action id="Arrangement.Alias.Rule.Edit"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.EditArrangementAliasRuleAction"/>
<action id="Arrangement.Alias.Rule.Add"
use-shortcut-of="NewElement"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.AddArrangementAliasRuleAction"/>
<action id="Arrangement.Alias.Rule.Remove"
use-shortcut-of="$Delete"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.RemoveArrangementAliasRuleAction"/>
<action id="Arrangement.Alias.Rule.Edit"
use-shortcut-of="Arrangement.Rule.Edit"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.EditArrangementAliasRuleAction"/>
<action id="Arrangement.Alias.Rule.Match.Condition.Move.Up"
use-shortcut-of="Arrangement.Rule.Match.Condition.Move.Up"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.MoveArrangementAliasRuleUpAction"/>
<action id="Arrangement.Alias.Rule.Match.Condition.Move.Down"
use-shortcut-of="Arrangement.Rule.Match.Condition.Move.Down"
class="com.intellij.application.options.codeStyle.arrangement.action.tokens.MoveArrangementAliasRuleDownAction"/>
<group id="Arrangement.Alias.Rule.ToolBar">