|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openstreetmap.josm.tools.Shortcut
public class Shortcut
Global shortcut class.
Note: This class represents a single shortcut, contains the factory to obtain
shortcut objects from, manages shortcuts and shortcut collisions, and
finally manages loading and saving shortcuts to/from the preferences.
Action authors: You only need the registerShortcut(java.lang.String, java.lang.String, int, int)
factory. Ignore everything
else.
All: Use only public methods that are also marked to be used. The others are
public so the shortcut preferences can use them.
Field Summary | |
---|---|
static int |
ALT
|
static int |
ALT_CTRL
|
static int |
ALT_CTRL_SHIFT
|
static int |
ALT_SHIFT
|
private boolean |
assignedDefault
|
private int |
assignedKey
|
private int |
assignedModifier
|
private boolean |
assignedUser
|
private boolean |
automatic
|
static int |
CTRL
|
static int |
CTRL_SHIFT
|
static int |
DIRECT
|
private static java.util.Map<java.lang.Integer,java.lang.Integer> |
groups
|
private static boolean |
initdone
|
private static int[] |
keys
|
private java.lang.String |
longText
|
static int |
MNEMONIC
|
private static int[] |
mods
|
static int |
NONE
|
private int |
requestedGroup
|
private int |
requestedKey
|
static int |
RESERVED
|
private boolean |
reset
|
static int |
SHIFT
|
private static java.util.Map<java.lang.String,Shortcut> |
shortcuts
|
private java.lang.String |
shortText
|
Constructor Summary | |
---|---|
private |
Shortcut(java.lang.String prefString)
|
private |
Shortcut(java.lang.String shortText,
java.lang.String longText,
int requestedKey,
int requestedGroup,
int assignedKey,
int assignedModifier,
boolean assignedDefault,
boolean assignedUser)
|
Method Summary | |
---|---|
private static void |
doInit()
|
private static int |
findModifier(int group,
java.lang.Integer modifier)
|
private static Shortcut |
findShortcut(int requestedKey,
int modifier)
|
boolean |
getAssignedDefault()
|
int |
getAssignedKey()
|
int |
getAssignedModifier()
|
boolean |
getAssignedUser()
|
boolean |
getAutomatic()
|
static javax.swing.KeyStroke |
getCopyKeyStroke()
Replies the platform specific key stroke for the 'Copy' command, i.e. |
static javax.swing.KeyStroke |
getCutKeyStroke()
Replies the platform specific key stroke for the 'Cut' command, i.e. |
private static int |
getGroupModifier(int group)
|
javax.swing.KeyStroke |
getKeyStroke()
Use this to register the shortcut with Swing |
java.lang.String |
getKeyText()
use this to get a human readable text for your shortcut |
java.lang.String |
getLongText()
|
static javax.swing.KeyStroke |
getPasteKeyStroke()
Replies the platform specific key stroke for the 'Paste' command, i.e. |
int |
getRequestedGroup()
|
private int |
getRequestedKey()
|
private boolean |
getReset()
|
java.lang.String |
getShortText()
|
boolean |
isChangeable()
|
boolean |
isEvent(java.awt.event.KeyEvent e)
|
private boolean |
isSame(int isKey,
int isModifier)
|
static java.util.List<Shortcut> |
listAll()
FOR PREF PANE ONLY |
static Shortcut |
registerShortcut(java.lang.String shortText,
java.lang.String longText,
int requestedKey,
int requestedGroup)
Register a shortcut. |
private static Shortcut |
registerShortcut(java.lang.String shortText,
java.lang.String longText,
int requestedKey,
int requestedGroup,
java.lang.Integer modifier)
|
static Shortcut |
registerSystemShortcut(java.lang.String shortText,
java.lang.String longText,
int key,
int modifier)
FOR PLATFORMHOOK USE ONLY This registers a system shortcut. |
private boolean |
save()
|
private void |
saveDefault()
|
static boolean |
savePrefs()
|
void |
setAccelerator(javax.swing.AbstractAction action)
use this to set a actions's accelerator |
void |
setAssignedKey(int assignedKey)
FOR PREF PANE ONLY |
void |
setAssignedModifier(int assignedModifier)
FOR PREF PANE ONLY |
void |
setAssignedUser(boolean assignedUser)
FOR PREF PANE ONLY |
void |
setAutomatic()
FOR PREF PANE ONLY |
private void |
setLongText(java.lang.String longText)
|
void |
setMnemonic(javax.swing.AbstractButton button)
use this to set a buttons's mnemonic |
void |
setMnemonic(javax.swing.JMenu menu)
use this to set a menu's mnemonic |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private java.lang.String shortText
private java.lang.String longText
private int requestedKey
private int requestedGroup
private int assignedKey
private int assignedModifier
private boolean assignedDefault
private boolean assignedUser
private boolean automatic
private boolean reset
private static java.util.Map<java.lang.String,Shortcut> shortcuts
private static java.util.Map<java.lang.Integer,java.lang.Integer> groups
public static final int NONE
public static final int MNEMONIC
public static final int RESERVED
public static final int DIRECT
public static final int ALT
public static final int SHIFT
public static final int CTRL
public static final int ALT_SHIFT
public static final int ALT_CTRL
public static final int CTRL_SHIFT
public static final int ALT_CTRL_SHIFT
private static int[] mods
private static int[] keys
private static boolean initdone
Constructor Detail |
---|
private Shortcut(java.lang.String shortText, java.lang.String longText, int requestedKey, int requestedGroup, int assignedKey, int assignedModifier, boolean assignedDefault, boolean assignedUser)
private Shortcut(java.lang.String prefString)
Method Detail |
---|
public java.lang.String getShortText()
public java.lang.String getLongText()
private void setLongText(java.lang.String longText)
private int getRequestedKey()
public int getRequestedGroup()
public int getAssignedKey()
public int getAssignedModifier()
public boolean getAssignedDefault()
public boolean getAssignedUser()
public boolean getAutomatic()
public boolean isChangeable()
private boolean getReset()
public void setAutomatic()
public void setAssignedModifier(int assignedModifier)
public void setAssignedKey(int assignedKey)
public void setAssignedUser(boolean assignedUser)
public javax.swing.KeyStroke getKeyStroke()
private void saveDefault()
private boolean save()
private boolean isSame(int isKey, int isModifier)
public boolean isEvent(java.awt.event.KeyEvent e)
public void setMnemonic(javax.swing.JMenu menu)
public void setMnemonic(javax.swing.AbstractButton button)
public void setAccelerator(javax.swing.AbstractAction action)
public java.lang.String getKeyText()
public java.lang.String toString()
toString
in class java.lang.Object
private static Shortcut findShortcut(int requestedKey, int modifier)
public static java.util.List<Shortcut> listAll()
private static void doInit()
private static int getGroupModifier(int group)
private static int findModifier(int group, java.lang.Integer modifier)
public static boolean savePrefs()
public static Shortcut registerSystemShortcut(java.lang.String shortText, java.lang.String longText, int key, int modifier)
public static Shortcut registerShortcut(java.lang.String shortText, java.lang.String longText, int requestedKey, int requestedGroup)
shortText
- an ID. re-use a "system:*"
ID if possible, else use something unique.
"menu:*"
is reserved for menu mnemonics, "core:*"
is reserved for
actions that are part of JOSM's core. Use something like
<pluginname>+":"+<actionname>
.longText
- this will be displayed in the shortcut preferences dialog. Better
use something the user will recognize...requestedKey
- the key you'd prefer. Use a KeyEvent.VK_*
constant here.requestedGroup
- the group this shortcut fits best. This will determine the
modifiers your shortcut will get assigned. Use the constants defined above.private static Shortcut registerShortcut(java.lang.String shortText, java.lang.String longText, int requestedKey, int requestedGroup, java.lang.Integer modifier)
public static javax.swing.KeyStroke getCopyKeyStroke()
public static javax.swing.KeyStroke getPasteKeyStroke()
public static javax.swing.KeyStroke getCutKeyStroke()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |