Error
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.
  • JHTMLicon not supported. File not found.

static

To pack 8bit to 7bit hex
Saturday, 28 August 2010 08:15
// description of your code here


public static byte[] getSeptets(byte[] octetBytes, boolean hasUDH) throws IOException {
byte[] compressedData = null;
try {
ByteArrayOutputStream bas = new ByteArrayOutputStream();
int userDataHeaderLen = 0;
int padBits = 0;
int userDataLen = octetBytes.length;

if (hasUDH) {
userDataHeaderLen = (octetBytes[0] & 0xFF) + 1; // plus 1 za
// prvi byte
// duzine
bas.write(octetBytes, 0, userDataHeaderLen);

userDataLen = octetBytes.length - userDataHeaderLen;
padBits = (userDataHeaderLen * 8) % 7;
if (padBits != 0)
padBits = 7 - padBits;
}

byte pack[] = pack(octetBytes, userDataHeaderLen, userDataLen, padBits);
bas.write(pack, 0, pack.length);

compressedData = bas.toByteArray();

} catch (Throwable e) {
throw new IOException("Exception in (8bit to 7bit Hex conversion)", e);
}

return compressedData;
}

public static byte[] pack(byte[] ba) {
return pack(ba, 0, ba.length, 0);
}

public static byte[] pack(byte[] ba, int off, int len, int pad) {
String m1 = "", m2 = "";

for (int i = 0; i < pad; i++)
m1 += "0";
for (int i = off; i < off + len; i++)
m1 = zeroPad(Integer.toBinaryString(ba[i] & 0x7F), 7) + m1;
if (m1.length() % 8 != 0)
m1 = zeroPad(m1, m1.length() + (8 - m1.length() % 8));
for (int i = 0; i < m1.length(); i += 8) {
int b = Integer.parseInt(m1.substring(i, i + 8), 2);
m2 = zeroPad(Integer.toHexString(b).toUpperCase(), 2) + m2;
}
return fromHexString(m2);
}

public static byte[] unpack(byte[] ba, int unpack_len) {
return unpack(ba, 0, ba.length, 0, unpack_len);
}

public static byte[] unpack(byte[] ba, int off, int len, int pad, int unpack_len) {
String m1 = "", m2 = "";
for (int i = off; i < off + len; i++) {
m1 = zeroPad(Integer.toBinaryString(ba[i] & 0xFF), 8) + m1;
}
m1 = m1.substring(0, m1.length() - pad);
m1 = m1.substring(m1.length() % 7);
for (int i = 0; i < m1.length(); i += 7) {
int b = Integer.parseInt(m1.substring(i, i + 7), 2);
m2 = zeroPad(Integer.toHexString(b).toUpperCase(), 2) + m2;
}
m2 = m2.substring(0, unpack_len * 2);
return fromHexString(m2);
}

private static String zeroPad(String s, int p) {
while (s.length() < p)
s = "0" + s;
return s;
}

Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/-qAPr8Dsf-w/12141

 
Decode/encode hex string
Saturday, 28 August 2010 08:06
// decode/encode hex string


public static String toHexString(byte[] ba) {
String hex = "";
for(int i = 0; i < ba.length; i++)
hex += zeroPad(Integer.toHexString(ba[i] & 0xFF).toUpperCase(), 2);
return hex;
}

public static byte[] fromHexString(String hex) {
ByteArrayOutputStream bas = new ByteArrayOutputStream();
for (int i = 0; i < hex.length(); i+=2) {
int b = Integer.parseInt(hex.substring(i, i + 2), 16);
bas.write(b);
}
return bas.toByteArray();
}

Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/Nn-1eCK9nuE/12139

 
Simply reverses individual words of a string.
Monday, 28 June 2010 03:45
// Simply reverses individual words of a string. Keep it low level, do not use abstraction APIs


/**
* ReverseWordsOfAString simply reverses individual words of a string.
* Keep the order of words intact
*
*/

import java.io.*;

class ReverseWordsOfAString
{
public static final int UNKNOW=0;
public static final int INTERACTIVE=1;
public static final int TEST=10;
public static final int BATCH=20;
public static void main(String[] args)
{
switch ( ReverseWordsOfAString.parseCommandLine( args ) )
{
case ReverseWordsOfAString.INTERACTIVE:
ReverseWordsOfAString.executeInteractive( args );
break;
case ReverseWordsOfAString.TEST:
ReverseWordsOfAString.executeTest( args );
break;
default:
System.out.println("Other functions not yet implemented");
}
}

public static int parseCommandLine(String[] args)
{
if (args[0].equals("--interactive"))
return ReverseWordsOfAString.INTERACTIVE;
if (args[0].trim().equals("--test"))
return ReverseWordsOfAString.TEST;
if (args[0].equals("--batch"))
return ReverseWordsOfAString.BATCH;

return ReverseWordsOfAString.UNKNOW;
}

public static void executeInteractive( String[] args )
{
try
{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String str = "";
while (str != null)
{
System.out.print("> interactive [Hit CTRL-D to exit] ");
str = in.readLine();
System.out.println(processReverseWordsOfAString(str));
}
} catch (IOException e) {}
}

public static void executeTest( String[] args )
{
long start = System.currentTimeMillis();
assert processReverseWordsOfAString("hello francois").equals("olleh siocnarf");
assert processReverseWordsOfAString("hello francois richard how are you doing").equals("olleh siocnarf drahcir woh era uoy gniod");
long end = System.currentTimeMillis();
System.out.println("Elapsed time: " + (end - start) );
}


public static String processReverseWordsOfAString (String arg)
{

if (arg == null)
{
System.out.println("");
System.exit(1);
}
StringBuffer result = new StringBuffer();
StringBuffer word = new StringBuffer();
for (int i=0; i {
if (arg.charAt(i) != ' ' )
word.append(arg.charAt(i));
if (arg.charAt(i) == ' ' )
{
for (int j=word.length()-1; j>=0; j--)
result.append(word.charAt(j));
result.append(" ");
word = new StringBuffer();
}
if (i == arg.length()-1)
{
for (int j=word.length()-1; j>=0; j--)
result.append(word.charAt(j));

}
}
return result.toString();


}

}


Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/Idisu6G40lk/11763

 
KeyCodeAdapter
Friday, 18 June 2010 09:22
// description of your code here
the keycode class to get keystroke values

// insert code here..
package mobilePackage;


import javax.microedition.lcdui.Canvas;

/**
* Class redefines codes of mobile phone to our constant values.
* Class can give to developers following information:
*

    *
  • defined platform name

    * In case if device vendor not defined we'll recieve PLATFORM_NOT_DEFINED like platform name.
    * Same in this case keyCodes will be setted like for Nokia and SE. It's done for work on emulators,
    * because on some of them it's impossible to define platform name.
    *
  • adopted to our constants key code value
    *
  • for test returns defined real code of left softkey
    *

*/
public final class KeyCodeAdaptor {

/**
* instance on this class
*/
private static final KeyCodeAdaptor instance = new KeyCodeAdaptor();
/**
* canvas used for definig codes
*/
private final Canvas adaptorCanvas;
/**
* constants for platforms names
*/
public static final String PLATFORM_MOTOROLA = "motorola";
public static final String PLATFORM_NOKIA = "nokia";
public static final String PLATFORM_SONY_ERICSSON = "SE";
public static final String PLATFORM_SIEMENS = "siemens";
public static final String PLATFORM_SAMSUNG = "samsung";
public static final String PLATFORM_LG = "LG";
public static final String PLATFORM_NOT_DEFINED = "NA";
/**
* constants for keycodes
*/
public static final int SOFT_KEY_LEFT = -201;
public static final int SOFT_KEY_RIGHT = -202;
public static final int SOFT_KEY_MIDDLE_INTERNET = -203;
/**
* this key is present on Nokia s60
*/
public static final int PENCIL_KEY = -207;
public static final int DELETE_KEY = -204;
public static final int BACK_KEY = -205;
// public static final int SEND_KEY = -206; //constant will be used in future for green key start dialling
public static final int KEY_1 = 201;
public static final int KEY_2 = 202;
public static final int KEY_3 = 203;
public static final int KEY_4 = 204;
public static final int KEY_5 = 205;
public static final int KEY_6 = 206;
public static final int KEY_7 = 207;
public static final int KEY_8 = 208;
public static final int KEY_9 = 209;
public static final int KEY_0 = 200;
public static final int KEY__POUND = 211;
public static final int KEY__STAR = 212;
/**
* KEYS on JOISTICK
*/
public static final int UP_KEY = 221;
public static final int DOWN_KEY = 222;
public static final int LEFT_KEY = 223;
public static final int RIGHT_KEY = 224;
public static final int CENTER_KEY = 225;

public static final int NOT_DEFINED_KEY = 254;

// QWERTY NUMERIC
public static final int QKEY_1 = 49;
public static final int QKEY_2 = 50;
public static final int QKEY_3 = 51;
public static final int QKEY_4 = 52;
public static final int QKEY_5 = 53;
public static final int QKEY_6 = 54;
public static final int QKEY_7 = 55;
public static final int QKEY_8 = 56;
public static final int QKEY_9 = 57;
public static final int QKEY_0 = 48;





/**
* current platform name
*/
private final String PLATFORM_NAME;
/**
* current platform codeofSoftkey
*/
private final int SOFTKEY_LEFT;
private final int SOFTKEY_RIGHT;
private final int SOFTKEY_MIDDLE_INTERNET;
private final int SOFTKEY_DELETE;
private final int SOFTKEY_BACK;

/**
* standart values for softkeys of different platforms
* used only in predefining
*/
private static final int SOFT_KEY_LEFT_SE = -6;
private static final int SOFT_KEY_RIGHT_SE = -7;
private static final int DELETE_KEY_SE = -8;
private static final int INTERNET_KEY_SE = -10;
private static final int BACK_KEY_SE = -11;
private static final int SOFT_KEY_LEFT_SAMSUNG = -6;
private static final int SOFT_KEY_RIGHT_SAMSUNG = -7;
private static final int DELETE_KEY_SAMSUNG = -8;
private static final int SOFT_KEY_LEFT_SIEMENS = -1;
private static final int SOFT_KEY_RIGHT_SIEMENS = -4;
private static final int SOFT_KEY_LEFT_NOKIA = -6;
private static final int SOFT_KEY_RIGHT_NOKIA = -7;
private static final int DELETE_KEY_NOKIA = -8;
private static final int PENCIL_KEY_NOKIA = -50;
private static final int SOFT_KEY_LEFT_MOTOROLA = -21;
private static final int SOFT_KEY_RIGHT_MOTOROLA = -22;
private static final int SOFT_KEY_LEFT_MOTOROLA2 = -20;
private static final int SOFT_KEY_LEFT_MOTOROLA1 = 21;
private static final int SOFT_KEY_RIGHT_MOTOROLA1 = 22;
private static final int SOFT_KEY_MIDLE_MOTOROLA = -23;
private static final int SOFT_KEY_MIDLE_NOKIA = -5;

private static final String SOFT_WORD = "SOFT";

/**
* constructor.
* here is predefining of special keys and platform made
*/
private KeyCodeAdaptor() {
adaptorCanvas = MobileOrder.canvas;
PLATFORM_NAME = getPlatform();
SOFTKEY_LEFT = getLeftSoftkeyCode();
SOFTKEY_RIGHT = getRightSoftkeyCode();
SOFTKEY_MIDDLE_INTERNET = getMidleORInternetSoftkeyCode();
SOFTKEY_DELETE = getDeleteKeyCode();
SOFTKEY_BACK = getBackKeyCode();
}

/**
* return platform keycode of left softkey
* if it's defined
* default value -6
*
* @return SOFTKEY_LEFT
*/
public int getPlatformSoftkeyLeftCode() {
return SOFTKEY_LEFT;
}

/**
* Returns mobile phone platform
*
* @return name mobile phone platform
*/
private String getPlatform() {
// detecting NOKIA or SonyEricsson
try {
final String currentPlatform = System.getProperty("microedition.platform");
if (currentPlatform.indexOf("Nokia") != -1) {
return PLATFORM_NOKIA;
} else if (currentPlatform.indexOf("SonyEricsson") != -1) {
return PLATFORM_SONY_ERICSSON;
}
} catch (Throwable ex) {
}
// detecting SAMSUNG
try {
Class.forName("com.samsung.util.Vibration");
return PLATFORM_SAMSUNG;
} catch (Throwable ex) {
}
// detecting MOTOROLA
try {
Class.forName("com.motorola.multimedia.Vibrator");
return PLATFORM_MOTOROLA;
} catch (Throwable ex) {
try {
Class.forName("com.motorola.graphics.j3d.Effect3D");
return PLATFORM_MOTOROLA;
} catch (Throwable ex2) {
try {
Class.forName("com.motorola.multimedia.Lighting");
return PLATFORM_MOTOROLA;
} catch (Throwable ex3) {
try {
Class.forName("com.motorola.multimedia.FunLight");
return PLATFORM_MOTOROLA;
} catch (Throwable ex4) {
}
}
}
}
try {
if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA).toUpperCase().indexOf(SOFT_WORD) > -1) {
return PLATFORM_MOTOROLA;
}
} catch (Throwable e) {
try {
if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA1).toUpperCase().indexOf(SOFT_WORD) > -1) {
return PLATFORM_MOTOROLA;
}
} catch (Throwable e1) {
try {
if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA2).toUpperCase().indexOf(SOFT_WORD) > -1) {
return PLATFORM_MOTOROLA;
}
} catch (Throwable e2) {
}
}
}
// detecting SIEMENS
try {
Class.forName("com.siemens.mp.io.File");
return PLATFORM_SIEMENS;
} catch (Throwable ex) {
}
// detecting LG
try {
Class.forName("mmpp.media.MediaPlayer");
return PLATFORM_LG;
} catch (Throwable ex) {
try {
Class.forName("mmpp.phone.Phone");
return PLATFORM_LG;
} catch (Throwable ex1) {
try {
Class.forName("mmpp.lang.MathFP");
return PLATFORM_LG;
} catch (Throwable ex2) {
try {
Class.forName("mmpp.media.BackLight");
return PLATFORM_LG;
} catch (Throwable ex3) {
}
}
}
}
return PLATFORM_NOT_DEFINED;
}

/**
* define real left soft key code by platform
*
* @return code
*/
private int getLeftSoftkeyCode() {
int keyCode = 0;
try {
if (PLATFORM_NAME.equals(PLATFORM_MOTOROLA)) {
String softkeyLeftMoto = "";
try {
softkeyLeftMoto = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
String softkeyLeftMoto1 = "";
try {
softkeyLeftMoto1 = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA1).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
String softkeyLeftMoto2 = "";
try {
softkeyLeftMoto2 = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA2).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
if (softkeyLeftMoto.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto.indexOf("1") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA;
} else if (softkeyLeftMoto1.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto1.indexOf("1") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA1;
} else if (softkeyLeftMoto2.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto2.indexOf("1") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA2;
} else if (softkeyLeftMoto.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto.indexOf("LEFT") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA;
} else if (softkeyLeftMoto1.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto1.indexOf("LEFT") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA1;
} else if (softkeyLeftMoto2.indexOf(SOFT_WORD) >= 0 && softkeyLeftMoto2.indexOf("LEFT") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA2;
}

} else if (PLATFORM_NAME.equals(PLATFORM_NOKIA)) {
return SOFT_KEY_LEFT_NOKIA;
} else if (PLATFORM_NAME.equals(PLATFORM_SAMSUNG)) {
// String leftkeySamsungName = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_SAMSUNG).toUpperCase();
// if (leftkeySamsungName.indexOf(SOFT_WORD) >= 0) {
// if (leftkeySamsungName.indexOf("1") >= 0) {
return SOFT_KEY_LEFT_SAMSUNG;
// } else if (leftkeySamsungName.indexOf("LEFT") >= 0) {
// return SOFT_KEY_LEFT_SAMSUNG;
// }
// }
} else if (PLATFORM_NAME.equals(PLATFORM_SIEMENS)) {
String leftKeySiemensName = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_SIEMENS).toUpperCase();
if (leftKeySiemensName.indexOf(SOFT_WORD) >= 0) {
if (leftKeySiemensName.indexOf("1") >= 0) {
return SOFT_KEY_LEFT_SIEMENS;
} else if (leftKeySiemensName.indexOf("LEFT") >= 0) {
return SOFT_KEY_LEFT_SIEMENS;
}
}
} else if (PLATFORM_NAME.equals(PLATFORM_SONY_ERICSSON)) {
return SOFT_KEY_LEFT_SE;
} else if (PLATFORM_NAME.equals(PLATFORM_NOT_DEFINED)) {
//
for (int i = -125; i <= 125; i++) {
if (i == 0) {
i++;
}
// System.out.println(getKeyName(i).toUpperCase());
final String s = adaptorCanvas.getKeyName(i).toUpperCase();
if (s.indexOf(SOFT_WORD) >= 0) {
if (s.indexOf("1") >= 0) {
keyCode = i;
break;
}
if (s.indexOf("LEFT") >= 0) {
keyCode = i;
break;
}
}
}
}
if (keyCode == 0) {
//#if emulator
//# return SOFT_KEY_LEFT_NOKIA;
//#endif
}
} catch (Throwable iaEx) {
//#if emulator
//# return SOFT_KEY_LEFT_NOKIA;
//#endif
}
return keyCode;
}

/**
* define real right soft key code for current platform
*
* @return code
*/
private int getRightSoftkeyCode() {
int keyCode = 0;
try {
if (PLATFORM_NAME.equals(PLATFORM_MOTOROLA)) {

String rightSoftMoto1 = "";
try {
rightSoftMoto1 = adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA1).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
String rightSoftMoto = "";
try {
rightSoftMoto = adaptorCanvas.getKeyName(SOFT_KEY_RIGHT_MOTOROLA).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
String rightSoftMoto2 = "";
try {
rightSoftMoto2 = adaptorCanvas.getKeyName(SOFT_KEY_RIGHT_MOTOROLA1).toUpperCase();
} catch (IllegalArgumentException ilae) {
// ilae.printStackTrace();
}
if (rightSoftMoto.indexOf(SOFT_WORD) >= 0 && rightSoftMoto.indexOf("2") >= 0) {
return SOFT_KEY_RIGHT_MOTOROLA;
} else if (rightSoftMoto1.indexOf(SOFT_WORD) >= 0 && rightSoftMoto1.indexOf("2") >= 0) {
return SOFT_KEY_RIGHT_MOTOROLA;
} else if (rightSoftMoto2.indexOf(SOFT_WORD) >= 0 && rightSoftMoto2.indexOf("2") >= 0) {
return SOFT_KEY_RIGHT_MOTOROLA1;
} else if (rightSoftMoto.indexOf(SOFT_WORD) >= 0 && rightSoftMoto.indexOf("RIGHT") >= 0) {
return SOFT_KEY_LEFT_MOTOROLA;
} else if (rightSoftMoto1.indexOf(SOFT_WORD) >= 0 && rightSoftMoto1.indexOf("RIGHT") >= 0) {
return SOFT_KEY_RIGHT_MOTOROLA1;
} else if (rightSoftMoto2.indexOf(SOFT_WORD) >= 0 && rightSoftMoto2.indexOf("RIGHT") >= 0) {
return SOFT_KEY_RIGHT_MOTOROLA;
}

} else if (PLATFORM_NAME.equals(PLATFORM_NOKIA)) {
return SOFT_KEY_RIGHT_NOKIA;
} else if (PLATFORM_NAME.equals(PLATFORM_SAMSUNG)) {
// String rightSoftSamsung = adaptorCanvas.getKeyName(SOFT_KEY_RIGHT_SAMSUNG).toUpperCase();
// if (rightSoftSamsung.indexOf(SOFT_WORD) >= 0) {
// if (rightSoftSamsung.indexOf("2") >= 0) {
return SOFT_KEY_RIGHT_SAMSUNG;
// } else if (rightSoftSamsung.indexOf("RIGHT") >= 0) {
// return SOFT_KEY_RIGHT_SAMSUNG;
// }
// }
} else if (PLATFORM_NAME.equals(PLATFORM_SIEMENS)) {
String rightSoftSiemens = adaptorCanvas.getKeyName(SOFT_KEY_RIGHT_SIEMENS).toUpperCase();
if (rightSoftSiemens.indexOf(SOFT_WORD) >= 0) {
if (rightSoftSiemens.indexOf("4") >= 0) {
return SOFT_KEY_RIGHT_SIEMENS;
} else if (rightSoftSiemens.indexOf("RIGHT") >= 0) {
return SOFT_KEY_RIGHT_SIEMENS;
}
}
} else if (PLATFORM_NAME.equals(PLATFORM_SONY_ERICSSON)) {
return SOFT_KEY_RIGHT_SE;
} else if (PLATFORM_NAME.equals(PLATFORM_NOT_DEFINED)) {
for (int i = -125; i <= 125; i++) {
if (i == 0) {
i++;
}
String keyName = adaptorCanvas.getKeyName(i).toUpperCase();
if (keyName.indexOf(SOFT_WORD) >= 0) {
if (keyName.indexOf("2") >= 0) {
keyCode = i;
break;
} else if (keyName.indexOf("4") >= 0) {
keyCode = i;
break;
} else if (keyName.indexOf("RIGHT") >= 0) {
keyCode = i;
break;
}
}
}
}
} catch (Throwable iaEx) {
//#if emulator
//# return SOFT_KEY_RIGHT_NOKIA;
//#endif
}
return keyCode;
}

/**
* define real middle soft key code for current platform
*
* @return code
*/
private int getMidleORInternetSoftkeyCode() {
try {
if (PLATFORM_NAME.equals(PLATFORM_MOTOROLA)) {
if (adaptorCanvas.getKeyName(SOFT_KEY_MIDLE_MOTOROLA).toUpperCase().indexOf("SOFT") >= 0) {
return SOFT_KEY_MIDLE_MOTOROLA;
}
} else if (PLATFORM_NAME.equals(PLATFORM_NOKIA)) {
if (adaptorCanvas.getKeyName(SOFT_KEY_MIDLE_NOKIA).toUpperCase().indexOf("SOFT") >= 0) {
return SOFT_KEY_MIDLE_NOKIA;
}
} else if (PLATFORM_NAME.equals(PLATFORM_SAMSUNG)) {
} else if (PLATFORM_NAME.equals(PLATFORM_SIEMENS)) {
} else if (PLATFORM_NAME.equals(PLATFORM_SONY_ERICSSON)) {
return INTERNET_KEY_SE;
}
} catch (Throwable e) {
}
return 0;
}

/**
* define real key's C or DELETE code for current platform
*
* @return code
*/
private int getDeleteKeyCode() {
try {
if (PLATFORM_NAME.equals(PLATFORM_MOTOROLA)) {

} else if (PLATFORM_NAME.equals(PLATFORM_NOKIA)) {
if (adaptorCanvas.getKeyName(DELETE_KEY_SE).toUpperCase().indexOf("CLEAR") >= 0) {
return DELETE_KEY_NOKIA;
} else {
return DELETE_KEY_NOKIA;
}
} else if (PLATFORM_NAME.equals(PLATFORM_SAMSUNG)) {
if (adaptorCanvas.getKeyName(DELETE_KEY_SAMSUNG).toUpperCase().indexOf("CLEAR") >= 0) {
return DELETE_KEY_SAMSUNG;
}
} else if (PLATFORM_NAME.equals(PLATFORM_SIEMENS)) {
} else if (PLATFORM_NAME.equals(PLATFORM_SONY_ERICSSON)) {
if (adaptorCanvas.getKeyName(DELETE_KEY_SE).toUpperCase().indexOf("CLEAR") >= 0) {
return DELETE_KEY_SE;
} else if (adaptorCanvas.getKeyName(DELETE_KEY_SE).toUpperCase().indexOf("C") >= 0) {
return DELETE_KEY_SE;
} else {
return DELETE_KEY_SE;
}
}
} catch (Throwable e) {
return DELETE_KEY_SE;
}
return 0;
}


/**
* define real key's BACK code for current platform
*
* @return code
*/
private int getBackKeyCode() {
try {
if (PLATFORM_NAME.equals(PLATFORM_MOTOROLA)) {

} else if (PLATFORM_NAME.equals(PLATFORM_NOKIA)) {

} else if (PLATFORM_NAME.equals(PLATFORM_SAMSUNG)) {
} else if (PLATFORM_NAME.equals(PLATFORM_SIEMENS)) {
} else if (PLATFORM_NAME.equals(PLATFORM_SONY_ERICSSON)) {
return BACK_KEY_SE;
}
} catch (Throwable e) {
}
return 0;
}

/**
* name of curent platform
*
* @return PLATFORM_NAME
*/
public String getPlatformName() {
return PLATFORM_NAME;
}

/**
* Used to adopt key kode to predefined constances, which are platform independent.
*


* You can use this method in any kind of canvas, but better at first time to call
* getInstance() method at the beginning of midlet work, because initialisation takes time.
*


* Best variant for usage is calling adoptKeyCode() to use keyPressed() method in Canvas:
*

 

* protected void keyPressed(int keyCode) {
* keyCode = KeyCodeAdaptor.getInstance().adoptKeyCode(keyCode);
* }
*

* and then you can use it:
*
 

* switch (keyCode) {
* case KeyCodeAdaptor.UP_KEY:
* break;
* case KeyCodeAdaptor.SOFT_KEY_LEFT:
* break;
* }

* or send this code to any other clesses.
*
* @param keycode This code is sent by platform to canvas and redirected here
* @return this keycode is equal to one of our constants declared in this class
*/
public int adoptKeyCode(int keycode, boolean isNumeric) {

switch (keycode) {
case Canvas.KEY_NUM0:
return KEY_0;
case Canvas.KEY_NUM1:
return KEY_1;
case Canvas.KEY_NUM2:
return KEY_2;
case Canvas.KEY_NUM3:
return KEY_3;
case Canvas.KEY_NUM4:
return KEY_4;
case Canvas.KEY_NUM5:
return KEY_5;
case Canvas.KEY_NUM6:
return KEY_6;
case Canvas.KEY_NUM7:
return KEY_7;
case Canvas.KEY_NUM8:
return KEY_8;
case Canvas.KEY_NUM9:
return KEY_9;
case Canvas.KEY_STAR:
return KEY__STAR;
case Canvas.KEY_POUND:
return KEY__POUND;
default:
if (keycode == SOFTKEY_LEFT) {
return SOFT_KEY_LEFT;
} else if (keycode == SOFTKEY_RIGHT) {
return SOFT_KEY_RIGHT;
} else if (keycode == SOFTKEY_DELETE) {
return DELETE_KEY;
} else if (keycode == SOFTKEY_BACK) {
return BACK_KEY;
} else if (keycode == SOFTKEY_MIDDLE_INTERNET) {
return SOFT_KEY_MIDDLE_INTERNET;
} else if (keycode == PENCIL_KEY_NOKIA) {
return PENCIL_KEY;
} else {
try {
final int gameAction;
gameAction = adaptorCanvas.getGameAction(keycode);
if (gameAction == Canvas.UP) {
return UP_KEY;
} else if (gameAction == Canvas.DOWN) {
return DOWN_KEY;
} else if (gameAction == Canvas.LEFT) {
return LEFT_KEY;
} else if (gameAction == Canvas.RIGHT) {
return RIGHT_KEY;
} else if (gameAction == Canvas.FIRE) {
return CENTER_KEY;
}
} catch (IllegalArgumentException e) {
// e.printStackTrace();
}
}
break;
}
if (isNumeric)
{
if (keycode == QKEY_0){
return KEY_0;
} else if (keycode == QKEY_1){
return KEY_1;
} else if (keycode == QKEY_2){
return KEY_2;
} else if (keycode == QKEY_3){
return KEY_3;
} else if (keycode == QKEY_4){
return KEY_4;
} else if (keycode == QKEY_5){
return KEY_5;
} else if (keycode == QKEY_6){
return KEY_6;
} else if (keycode == QKEY_7){
return KEY_7;
} else if (keycode == QKEY_8){
return KEY_8;
} else if (keycode == QKEY_9){
return KEY_9;
}
}

//#if debug
//# return keycode;
//#else
return NOT_DEFINED_KEY;
//#endif
}

/**
* return instance of class
*
* @return instance
*/
public static KeyCodeAdaptor getInstance() {
return instance;
}
}

Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/z-I7wC2kTDo/11669

 
WinMobile hide taskbar and SIP button
Thursday, 27 May 2010 17:33
Subj. acheter lasix 40 mg comprimestraitement de la dysfonction érectileclomid achat en pharmacie en lignes

using System.Runtime.InteropServices;

private const Int32 SHFS_SHOWSIPBUTTON = 0x0004;
private const Int32 SHFS_HIDESIPBUTTON = 0x0008;
private const Int32 SHFS_SHOWSTARTICON = 0x0010;
private const Int32 SHFS_HIDESTARTICON = 0x0020;

[DllImport("aygshell.dll")]
private static extern Int32 SHFullScreen(IntPtr hWnd, Int32 dwState);

[DllImport("coredll.dll")]
private static extern IntPtr FindWindow(string className, string windowName);

[DllImport("coredll.dll")]
private static extern Int32 GetClassName(IntPtr hWnd, StringBuilder className, int maxCount);

public static bool ShowStartIcon(Form f, bool bShow){
Int32 dwFlag = bShow ? SHFS_SHOWSTARTICON : SHFS_HIDESTARTICON;
return SHFullScreen(GetWindowHandle(f), dwFlag) != 0;
}

public static bool ShowSIPButton(Form f, bool bShow){
Int32 dwFlag = bShow ? SHFS_SHOWSIPBUTTON : SHFS_HIDESIPBUTTON;
return SHFullScreen(GetWindowHandle(f), dwFlag) != 0;
}

private static IntPtr GetWindowHandle(Form f){
return FindWindow(null, f.Text); // Here you can get trouble when multiple windows have the same name.
}

Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/TsnIcgcJd4g/11481

 
2
Next
End


Page 2 of 2
Taxonomy by Zaragoza Online