001: /*
002: * Version: MPL 1.1/GPL 2.0/LGPL 2.1
003: *
004: * "The contents of this file are subject to the Mozilla Public License
005: * Version 1.1 (the "License"); you may not use this file except in
006: * compliance with the License. You may obtain a copy of the License at
007: * http://www.mozilla.org/MPL/
008: *
009: * Software distributed under the License is distributed on an "AS IS"
010: * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
011: * License for the specific language governing rights and limitations under
012: * the License.
013: *
014: * The Original Code is ICEfaces 1.5 open source software code, released
015: * November 5, 2006. The Initial Developer of the Original Code is ICEsoft
016: * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C)
017: * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved.
018: *
019: * Contributor(s): _____________________.
020: *
021: * Alternatively, the contents of this file may be used under the terms of
022: * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"
023: * License), in which case the provisions of the LGPL License are
024: * applicable instead of those above. If you wish to allow use of your
025: * version of this file only under the terms of the LGPL License and not to
026: * allow others to use your version of this file under the MPL, indicate
027: * your decision by deleting the provisions above and replace them with
028: * the notice and other provisions required by the LGPL License. If you do
029: * not delete the provisions above, a recipient may use your version of
030: * this file under either the MPL or the LGPL License."
031: *
032: */
033:
034: package com.icesoft.faces.component.ext;
035:
036: import javax.faces.component.UIComponent;
037: import javax.faces.event.ActionEvent;
038: import javax.faces.event.FacesListener;
039: import java.util.HashMap;
040: import java.util.Map;
041: import java.util.StringTokenizer;
042:
043: public class KeyEvent extends ActionEvent {
044: public static final int ESC = 27;
045: public static final int TAB = 9;
046: public static final int CAPSLOCK = 20;
047: public static final int SHIFT = 16;
048: public static final int CTRL = 17;
049: public static final int START_LEFT = 91;
050: public static final int START_RIGHT = 92;
051: public static final int CONTEXT_MENU = 93;
052: public static final int ALT = 18;
053: public static final int SPACE = 32;
054: public static final int CARRIAGE_RETURN = 13;
055: public static final int LINE_FEED = 10;
056: public static final int BACK_SLASH = 220;
057: public static final int BACK_SPACE = 8;
058:
059: public static final int INSERT = 45;
060: public static final int DEL = 46;
061: public static final int HOME = 36;
062: public static final int END = 35;
063: public static final int PAGE_UP = 33;
064: public static final int PAGE_DOWN = 34;
065:
066: public static final int PRINT_SCREEN = 44;
067: public static final int SCR_LK = 145;
068: public static final int PAUSE = 19;
069:
070: public static final int LEFT_ARROW_KEY = 37;
071: public static final int UP_ARROW_KEY = 38;
072: public static final int RIGHT_ARROW_KEY = 39;
073: public static final int DOWN_ARROW_KEY = 40;
074:
075: public static final int F1 = 112;
076: public static final int F2 = 113;
077: public static final int F3 = 114;
078: public static final int F4 = 115;
079: public static final int F5 = 116;
080: public static final int F6 = 117;
081: public static final int F7 = 118;
082: public static final int F8 = 119;
083: public static final int F9 = 120;
084: public static final int F10 = 121;
085: public static final int F11 = 122;
086: public static final int F12 = 123;
087: private Map requestMap;
088:
089: public KeyEvent(UIComponent uiComponent, Map requestMap) {
090: super (uiComponent);
091: this .requestMap = requestMap;
092: }
093:
094: public boolean isAltKey() {
095: return Boolean.valueOf(
096: (String) this .requestMap.get("ice.event.alt"))
097: .booleanValue();
098: }
099:
100: public boolean isCtrlKey() {
101: return Boolean.valueOf(
102: (String) this .requestMap.get("ice.event.ctrl"))
103: .booleanValue();
104: }
105:
106: public boolean isShiftKey() {
107: return Boolean.valueOf(
108: (String) this .requestMap.get("ice.event.shift"))
109: .booleanValue();
110: }
111:
112: public int getKeyCode() {
113: String s = (String) this .requestMap.get("ice.event.keycode");
114: if (s == null)
115: return -1;
116: return Integer.parseInt(s);
117: }
118:
119: public String getType() {
120: return (String) this .requestMap.get("ice.event.type");
121: }
122:
123: public String getComponentId() {
124: return (String) this .requestMap.get("ice.event.captured");
125: }
126:
127: public boolean isAppropriateListener(FacesListener arg0) {
128: return false;
129: }
130:
131: public void processListener(FacesListener arg0) {
132: }
133: }
|