package com.inputstick.api.layout; public class SwedishLayout extends KeyboardLayout { public static final String LOCALE_NAME = "sv-SE"; public static final int LUT[][] = { /* 0 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 1 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 2 */ { 0 , (int)'1' , 0x21 , -1 , -1 , -1 } , /* 3 */ { 0 , (int)'2' , 0x22 , -1 , 0x40 , -1 } , /* 4 */ { 0 , (int)'3' , 0x23 , -1 , 0x00a3 , -1 } , /* 5 */ { 0 , (int)'4' , 0x00a4 , -1 , 0x24 , -1 } , /* 6 */ { 0 , (int)'5' , 0x25 , -1 , 0x20ac , -1 } , /* 7 */ { 0 , (int)'6' , 0x26 , -1 , -1 , -1 } , /* 8 */ { 0 , (int)'7' , 0x002f , -1 , 0x007b , -1 } , /* 9 */ { 0 , (int)'8' , 0x28 , -1 , 0x005b , -1 } , /* 0a */ { 0 , (int)'9' , 0x29 , -1 , 0x005d , -1 } , /* 0b */ { 0 , (int)'0' , 0x003d , -1 , 0x007d , -1 } , /* 0c */ { 0 , 0x002b , 0x003f , -1 , 0x005c , -1 } , /* 0d */ { 0 , 0x00b4 , 0x0060 , -1 , -1 , -1 } , /* 0e */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 0f */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 10 */ { 1 , (int)'q' , (int)'Q' , -1 , -1 , -1 } , /* 11 */ { 1 , (int)'w' , (int)'W' , -1 , -1 , -1 } , /* 12 */ { 1 , (int)'e' , (int)'E' , -1 , 0x20ac , -1 } , /* 13 */ { 1 , (int)'r' , (int)'R' , -1 , -1 , -1 } , /* 14 */ { 1 , (int)'t' , (int)'T' , -1 , -1 , -1 } , /* 15 */ { 1 , (int)'y' , (int)'Y' , -1 , -1 , -1 } , /* 16 */ { 1 , (int)'u' , (int)'U' , -1 , -1 , -1 } , /* 17 */ { 1 , (int)'i' , (int)'I' , -1 , -1 , -1 } , /* 18 */ { 1 , (int)'o' , (int)'O' , -1 , -1 , -1 } , /* 19 */ { 1 , (int)'p' , (int)'P' , -1 , -1 , -1 } , /* 1a */ { 1 , 0x00e5 , 0x00c5 , 0x001b , -1 , -1 } , /* 1b */ { 0 , 0x00a8 , 0x005e , 0x001d , 0x007e , -1 } , /* 1c */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 1d */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 1e */ { 1 , (int)'a' , (int)'A' , -1 , -1 , -1 } , /* 1f */ { 1 , (int)'s' , (int)'S' , -1 , -1 , -1 } , /* 20 */ { 1 , (int)'d' , (int)'D' , -1 , -1 , -1 } , /* 21 */ { 1 , (int)'f' , (int)'F' , -1 , -1 , -1 } , /* 22 */ { 1 , (int)'g' , (int)'G' , -1 , -1 , -1 } , /* 23 */ { 1 , (int)'h' , (int)'H' , -1 , -1 , -1 } , /* 24 */ { 1 , (int)'j' , (int)'J' , -1 , -1 , -1 } , /* 25 */ { 1 , (int)'k' , (int)'K' , -1 , -1 , -1 } , /* 26 */ { 1 , (int)'l' , (int)'L' , -1 , -1 , -1 } , /* 27 */ { 1 , 0x00f6 , 0x00d6 , -1 , -1 , -1 } , /* 28 */ { 1 , 0x00e4 , 0x00c4 , -1 , -1 , -1 } , /* 29 */ { 0 , 0x00a7 , 0x00bd , 0x001c , -1 , -1 } , /* 2a */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 2b */ { 0 , 0x27 , 0x002a , -1 , -1 , -1 } , /* 2c */ { 1 , (int)'z' , (int)'Z' , -1 , -1 , -1 } , /* 2d */ { 1 , (int)'x' , (int)'X' , -1 , -1 , -1 } , /* 2e */ { 1 , (int)'c' , (int)'C' , -1 , -1 -1 } , /* 2f */ { 1 , (int)'v' , (int)'V' , -1 , -1 , -1 } , /* 30 */ { 1 , (int)'b' , (int)'B' , -1 , -1 , -1 } , /* 31 */ { 1 , (int)'n' , (int)'N' , -1 , -1 , -1 } , /* 32 */ { 1 , (int)'m' , (int)'M' , -1 , 0x00b5 , -1 } , /* 33 */ { 0 , 0x002c , 0x003b , -1 , -1 , -1 } , /* 34 */ { 0 , 0x002e , 0x003a , -1 , -1 , -1 } , /* 35 */ { 0 , 0x002d , 0x005f , -1 , -1 , -1 } , /* 36 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 37 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 38 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 39 */ { 0 , 0x20 , 0x20 , 0x20 , -1 , -1 } , /* 3a */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 3b */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 3c */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 3d */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 3e */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 3f */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 40 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 41 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 42 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 43 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 44 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 45 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 46 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 47 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 48 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 49 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4a */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4b */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4c */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4d */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4e */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 4f */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 50 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 51 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 52 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 53 */ { 0 , 0x002c , 0x002c , -1 , -1 , -1 } , /* 54 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 55 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 56 */ { 0 , 0x003c , 0x003e , 0x001c , 0x007c , -1 } , /* 57 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 58 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 59 */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5a */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5b */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5c */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5d */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5e */ { -1 , 0 , 0 , 0 , 0 , 0 } , /* 5f */ { -1 , 0 , 0 , 0 , 0 , 0 } , }; public static final int DEADKEYS[] = { 0x0060, 0x00b4, 0x005e, 0x00a8, 0x007e }; public static final int DEADKEY_LUT[][] = { { 0x00b4 , 0x0061 , 0x00e1 } , { 0x00b4 , 0x0065 , 0x00e9 } , { 0x00b4 , 0x0075 , 0x00fa } , { 0x00b4 , 0x0069 , 0x00ed } , { 0x00b4 , 0x0079 , 0x00fd } , { 0x00b4 , 0x006f , 0x00f3 } , { 0x00b4 , 0x0041 , 0x00c1 } , { 0x00b4 , 0x0045 , 0x00c9 } , { 0x00b4 , 0x0055 , 0x00da } , { 0x00b4 , 0x0049 , 0x00cd } , { 0x00b4 , 0x0059 , 0x00dd } , { 0x00b4 , 0x004f , 0x00d3 } , { 0x00b4 , 0x0020 , 0x00b4 } , { 0x0060 , 0x0061 , 0x00e0 } , { 0x0060 , 0x0065 , 0x00e8 } , { 0x0060 , 0x0075 , 0x00f9 } , { 0x0060 , 0x0069 , 0x00ec } , { 0x0060 , 0x006f , 0x00f2 } , { 0x0060 , 0x0041 , 0x00c0 } , { 0x0060 , 0x0045 , 0x00c8 } , { 0x0060 , 0x0055 , 0x00d9 } , { 0x0060 , 0x0049 , 0x00cc } , { 0x0060 , 0x004f , 0x00d2 } , { 0x0060 , 0x0020 , 0x0060 } , { 0x00a8 , 0x0061 , 0x00e4 } , { 0x00a8 , 0x0065 , 0x00eb } , { 0x00a8 , 0x0075 , 0x00fc } , { 0x00a8 , 0x0069 , 0x00ef } , { 0x00a8 , 0x0079 , 0x00ff } , { 0x00a8 , 0x006f , 0x00f6 } , { 0x00a8 , 0x0041 , 0x00c4 } , { 0x00a8 , 0x0045 , 0x00cb } , { 0x00a8 , 0x0055 , 0x00dc } , { 0x00a8 , 0x0049 , 0x00cf } , { 0x00a8 , 0x004f , 0x00d6 } , { 0x00a8 , 0x0020 , 0x00a8 } , { 0x005e , 0x0061 , 0x00e2 } , { 0x005e , 0x0065 , 0x00ea } , { 0x005e , 0x0075 , 0x00fb } , { 0x005e , 0x0069 , 0x00ee } , { 0x005e , 0x006f , 0x00f4 } , { 0x005e , 0x0041 , 0x00c2 } , { 0x005e , 0x0045 , 0x00ca } , { 0x005e , 0x0055 , 0x00db } , { 0x005e , 0x0049 , 0x00ce } , { 0x005e , 0x004f , 0x00d4 } , { 0x005e , 0x0020 , 0x005e } , { 0x007e , 0x006e , 0x00f1 } , { 0x007e , 0x0061 , 0x00e3 } , { 0x007e , 0x006f , 0x00f5 } , { 0x007e , 0x004e , 0x00d1 } , { 0x007e , 0x0041 , 0x00c3 } , { 0x007e , 0x004f , 0x00d5 } , { 0x007e , 0x0020 , 0x007e } , }; private static SwedishLayout instance = new SwedishLayout(); private SwedishLayout() { } public static SwedishLayout getInstance() { return instance; } @Override public int[][] getLUT() { return LUT; } @Override public void type(String text) { super.type(LUT, DEADKEY_LUT, DEADKEYS, text, (byte)0); } @Override public void type(String text, byte modifiers) { super.type(LUT, DEADKEY_LUT, DEADKEYS, text, modifiers); } @Override public char getChar(int scanCode, boolean capsLock, boolean shift, boolean altGr) { return super.getChar(LUT, scanCode, capsLock, shift, altGr); } @Override public String getLocaleName() { return LOCALE_NAME; } @Override public int[][] getDeadkeyLUT() { return DEADKEY_LUT; } @Override public int[] getDeadkeys() { return DEADKEYS; } }