1443 || canCurrentEventAccessSystemClipboard(false);
1444 }
1445
1446 /**
1447 * Returns true if the given event has permissions to access the
1448 * system clipboard
1449 *
1450 * @param e AWTEvent to check
1451 */
1452 public static boolean canEventAccessSystemClipboard(AWTEvent e) {
1453 return isTrustedContext()
1454 || canEventAccessSystemClipboard(e, false);
1455 }
1456
1457 /**
1458 * Returns true if the given event is corrent gesture for
1459 * accessing clipboard
1460 *
1461 * @param ie InputEvent to check
1462 */
1463
1464 private static boolean isAccessClipboardGesture(InputEvent ie) {
1465 boolean allowedGesture = false;
1466 if (ie instanceof KeyEvent) { //we can validate only keyboard gestures
1467 KeyEvent ke = (KeyEvent)ie;
1468 int keyCode = ke.getKeyCode();
1469 int keyModifiers = ke.getModifiers();
1470 switch(keyCode) {
1471 case KeyEvent.VK_C:
1472 case KeyEvent.VK_V:
1473 case KeyEvent.VK_X:
1474 allowedGesture = (keyModifiers == InputEvent.CTRL_MASK);
1475 break;
1476 case KeyEvent.VK_INSERT:
1477 allowedGesture = (keyModifiers == InputEvent.CTRL_MASK ||
1478 keyModifiers == InputEvent.SHIFT_MASK);
1479 break;
1480 case KeyEvent.VK_COPY:
1481 case KeyEvent.VK_PASTE:
1482 case KeyEvent.VK_CUT:
1483 allowedGesture = true;
2112 * @param cm the table model
2113 * @param modelColumnIndex the index of the column in the model
2114 * @return the index of the corresponding column in the view
2115 *
2116 * @see JTable#convertColumnIndexToView(int)
2117 * @see javax.swing.plaf.basic.BasicTableHeaderUI
2118 */
2119 public static int convertColumnIndexToView(TableColumnModel cm,
2120 int modelColumnIndex) {
2121 if (modelColumnIndex < 0) {
2122 return modelColumnIndex;
2123 }
2124 for (int column = 0; column < cm.getColumnCount(); column++) {
2125 if (cm.getColumn(column).getModelIndex() == modelColumnIndex) {
2126 return column;
2127 }
2128 }
2129 return -1;
2130 }
2131
2132 public static int getSystemMnemonicKeyMask() {
2133 Toolkit toolkit = Toolkit.getDefaultToolkit();
2134 if (toolkit instanceof SunToolkit) {
2135 return ((SunToolkit) toolkit).getFocusAcceleratorKeyMask();
2136 }
2137 return InputEvent.ALT_MASK;
2138 }
2139
2140 /**
2141 * Returns the {@link TreePath} that identifies the changed nodes.
2142 *
2143 * @param event changes in a tree model
2144 * @param model corresponing tree model
2145 * @return the path to the changed nodes
2146 */
2147 public static TreePath getTreePath(TreeModelEvent event, TreeModel model) {
2148 TreePath path = event.getTreePath();
2149 if ((path == null) && (model != null)) {
2150 Object root = model.getRoot();
2151 if (root != null) {
|
1443 || canCurrentEventAccessSystemClipboard(false);
1444 }
1445
1446 /**
1447 * Returns true if the given event has permissions to access the
1448 * system clipboard
1449 *
1450 * @param e AWTEvent to check
1451 */
1452 public static boolean canEventAccessSystemClipboard(AWTEvent e) {
1453 return isTrustedContext()
1454 || canEventAccessSystemClipboard(e, false);
1455 }
1456
1457 /**
1458 * Returns true if the given event is corrent gesture for
1459 * accessing clipboard
1460 *
1461 * @param ie InputEvent to check
1462 */
1463 @SuppressWarnings("deprecation")
1464 private static boolean isAccessClipboardGesture(InputEvent ie) {
1465 boolean allowedGesture = false;
1466 if (ie instanceof KeyEvent) { //we can validate only keyboard gestures
1467 KeyEvent ke = (KeyEvent)ie;
1468 int keyCode = ke.getKeyCode();
1469 int keyModifiers = ke.getModifiers();
1470 switch(keyCode) {
1471 case KeyEvent.VK_C:
1472 case KeyEvent.VK_V:
1473 case KeyEvent.VK_X:
1474 allowedGesture = (keyModifiers == InputEvent.CTRL_MASK);
1475 break;
1476 case KeyEvent.VK_INSERT:
1477 allowedGesture = (keyModifiers == InputEvent.CTRL_MASK ||
1478 keyModifiers == InputEvent.SHIFT_MASK);
1479 break;
1480 case KeyEvent.VK_COPY:
1481 case KeyEvent.VK_PASTE:
1482 case KeyEvent.VK_CUT:
1483 allowedGesture = true;
2112 * @param cm the table model
2113 * @param modelColumnIndex the index of the column in the model
2114 * @return the index of the corresponding column in the view
2115 *
2116 * @see JTable#convertColumnIndexToView(int)
2117 * @see javax.swing.plaf.basic.BasicTableHeaderUI
2118 */
2119 public static int convertColumnIndexToView(TableColumnModel cm,
2120 int modelColumnIndex) {
2121 if (modelColumnIndex < 0) {
2122 return modelColumnIndex;
2123 }
2124 for (int column = 0; column < cm.getColumnCount(); column++) {
2125 if (cm.getColumn(column).getModelIndex() == modelColumnIndex) {
2126 return column;
2127 }
2128 }
2129 return -1;
2130 }
2131
2132 @SuppressWarnings("deprecation")
2133 public static int getSystemMnemonicKeyMask() {
2134 Toolkit toolkit = Toolkit.getDefaultToolkit();
2135 if (toolkit instanceof SunToolkit) {
2136 return ((SunToolkit) toolkit).getFocusAcceleratorKeyMask();
2137 }
2138 return InputEvent.ALT_MASK;
2139 }
2140
2141 /**
2142 * Returns the {@link TreePath} that identifies the changed nodes.
2143 *
2144 * @param event changes in a tree model
2145 * @param model corresponing tree model
2146 * @return the path to the changed nodes
2147 */
2148 public static TreePath getTreePath(TreeModelEvent event, TreeModel model) {
2149 TreePath path = event.getTreePath();
2150 if ((path == null) && (model != null)) {
2151 Object root = model.getRoot();
2152 if (root != null) {
|