You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by gb...@apache.org on 2009/09/30 18:03:06 UTC
svn commit: r820326 - in
/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk: Keyboard.java
skin/terra/TerraListViewSkin.java skin/terra/TerraTableViewSkin.java
skin/terra/TerraTreeViewSkin.java
Author: gbrown
Date: Wed Sep 30 16:03:06 2009
New Revision: 820326
URL: http://svn.apache.org/viewvc?rev=820326&view=rev
Log:
Resolve issue PIVOT-309.
Modified:
incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/Keyboard.java
incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java
incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java
incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java
Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/Keyboard.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/Keyboard.java?rev=820326&r1=820325&r2=820326&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/Keyboard.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/Keyboard.java Wed Sep 30 16:03:06 2009
@@ -114,7 +114,7 @@
awtModifiers |= KeyEvent.SHIFT_DOWN_MASK;
}
- return KeyEvent.getModifiersExText(awtModifiers)
+ return KeyEvent.getModifiersExText(awtModifiers) + KEYSTROKE_MODIFIER_SEPARATOR
+ KeyEvent.getKeyText(keyCode);
}
@@ -249,6 +249,21 @@
private static int modifiers = 0;
+ private static final Modifier MULTI_SELECT_MODIFIER;
+ private static final String KEYSTROKE_MODIFIER_SEPARATOR;
+
+ static {
+ String osName = System.getProperty("os.name").toLowerCase();
+
+ if (osName.startsWith("mac os x")) {
+ MULTI_SELECT_MODIFIER = Modifier.META;
+ KEYSTROKE_MODIFIER_SEPARATOR = "";
+ } else {
+ MULTI_SELECT_MODIFIER = Modifier.CTRL;
+ KEYSTROKE_MODIFIER_SEPARATOR = "-";
+ }
+ }
+
/**
* Returns a bitfield representing the keyboard modifiers that are
* currently pressed.
@@ -298,5 +313,13 @@
return dropAction;
}
+
+ public static Modifier getMultiSelectModifier() {
+ return MULTI_SELECT_MODIFIER;
+ }
+
+ public static String getKeyStrokeModifierSeparator() {
+ return KEYSTROKE_MODIFIER_SEPARATOR;
+ }
}
Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java?rev=820326&r1=820325&r2=820326&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java Wed Sep 30 16:03:06 2009
@@ -609,6 +609,8 @@
listView.setSelectedIndex(itemIndex);
}
} else {
+ Keyboard.Modifier multiSelectModifier = Keyboard.getMultiSelectModifier();
+
if (Keyboard.isPressed(Keyboard.Modifier.SHIFT)
&& selectMode == ListView.SelectMode.MULTI) {
Filter<?> disabledItemFilter = listView.getDisabledItemFilter();
@@ -625,7 +627,7 @@
listView.setSelectedRanges(selectedRanges);
}
- } else if (Keyboard.isPressed(Keyboard.Modifier.CTRL)
+ } else if (Keyboard.isPressed(multiSelectModifier)
&& selectMode == ListView.SelectMode.MULTI) {
// Toggle the item's selection state
if (listView.isItemSelected(itemIndex)) {
Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java?rev=820326&r1=820325&r2=820326&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTableViewSkin.java Wed Sep 30 16:03:06 2009
@@ -955,6 +955,8 @@
tableView.setSelectedIndex(rowIndex);
}
} else {
+ Keyboard.Modifier multiSelectModifier = Keyboard.getMultiSelectModifier();
+
if (Keyboard.isPressed(Keyboard.Modifier.SHIFT)
&& selectMode == TableView.SelectMode.MULTI) {
Filter<?> disabledRowFilter = tableView.getDisabledRowFilter();
@@ -971,7 +973,7 @@
tableView.setSelectedRanges(selectedRanges);
}
- } else if (Keyboard.isPressed(Keyboard.Modifier.CTRL)
+ } else if (Keyboard.isPressed(multiSelectModifier)
&& selectMode == TableView.SelectMode.MULTI) {
// Toggle the item's selection state
if (tableView.isRowSelected(rowIndex)) {
Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java?rev=820326&r1=820325&r2=820326&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java Wed Sep 30 16:03:06 2009
@@ -1435,7 +1435,8 @@
treeView.setSelectedPath(path);
}
} else if (selectMode == TreeView.SelectMode.MULTI) {
- if (Keyboard.isPressed(Keyboard.Modifier.CTRL)) {
+ Keyboard.Modifier multiSelectModifier = Keyboard.getMultiSelectModifier();
+ if (Keyboard.isPressed(multiSelectModifier)) {
if (nodeInfo.isSelected()) {
treeView.removeSelectedPath(path);
} else {