diff -r 0fd27995241b -r 9ac0a0a7da70 javauis/tsrc/fute/lcdui/deviceControl/src/FlashLight.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/javauis/tsrc/fute/lcdui/deviceControl/src/FlashLight.java Tue May 25 12:34:19 2010 +0300 @@ -0,0 +1,126 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +/***** + * Flash Light + */ +import javax.microedition.midlet.*; +import javax.microedition.lcdui.*; +import java.io.*; + +public class FlashLight extends MIDlet implements CommandListener, Runnable +{ + + private Display display = null; + private Thread thread = null; + private Canvas canvas = null; + private Command exitCommand = new Command("Exit", Command.EXIT, 1); + private Command stopCommand = new Command("Stop Flashing", Command.SCREEN, 1); + private Command startTest10 = new Command("Start Test 10s", Command.SCREEN, 3); + private Command startTest60 = new Command("Start Test 60s", Command.SCREEN, 3); + private Command startTest120 = new Command("Start Test 120s", Command.SCREEN, 3); + private Command startTest240 = new Command("Start Test 240s", Command.SCREEN, 3); + private Command currentCommand = null; + + + public FlashLight() + { + canvas = new TestingCanvas(); + display = Display.getDisplay(this); + canvas.addCommand(startTest10); + canvas.addCommand(startTest60); + canvas.addCommand(startTest120); + canvas.addCommand(startTest240); + canvas.addCommand(stopCommand); + canvas.addCommand(exitCommand); + canvas.setCommandListener(this); + } + + /** * */ + public void displayToForeGround() + { + display.setCurrent(canvas); + } + + public void startApp() + { + displayToForeGround(); + } + /** * Pause */ + public void pauseApp() {} + + /** * Destroy must cleanup everything. */ + public void destroyApp(boolean unconditional) { } + + /** * + * From runnable + * */ + public void run() + { + try + { + System.out.println("Thread started ..... "); + if (currentCommand == startTest10) + display.flashBacklight(10000); + else if (currentCommand == startTest60) + display.flashBacklight(60000); + else if (currentCommand == startTest120) + display.flashBacklight(120000); + else if (currentCommand == startTest240) + display.flashBacklight(240000); + + Thread.sleep(3000); + + } + catch (Exception e) + { + System.out.println("E x c e p t t i o n in run" + e.toString()); + } + } + + /**** Handle the command */ + public void commandAction(Command c, Displayable s) + { + + if (c == exitCommand) + { + destroyApp(true); + notifyDestroyed(); + } + if (c == stopCommand) + { + display.flashBacklight(0); + } + currentCommand = c; + thread = new Thread(this); + thread.start(); + + }// end of commandAction + + /** + * + */ + class TestingCanvas extends Canvas + { + protected void paint(Graphics g) + { + + g.drawString("Device control", 5, 5, Graphics.TOP|Graphics.LEFT); + } + } +} +