// ====================================================================
//         i-Appli PROGRAM (Canvas) BASE SOURCE    BakuretuKen         
// ====================================================================

import com.nttdocomo.ui.*;
import com.nttdocomo.io.*;
import com.nttdocomo.util.*;
// import java.util.Random;

// =========================================================
// メインクラス
// =========================================================
public class CanvasBase extends IApplication {
	public void start() {
		MyCanvas c = new MyCanvas();
		Display.setCurrent(c); // Canvas表示
		// c.t.start(); // Canvasタイマースタート
	}
} // End of Class

// =========================================================
// 自作キャンバスクラス
// =========================================================
class MyCanvas extends Canvas {
	
	// === グローバル変数 ===
	// ShortTimer t; // Canvasタイマー
	
	
	// ---------------------------------------------------------
	// コンストラクタ
	// ---------------------------------------------------------
	MyCanvas() {
		// タイマー初期設定
		// t = ShortTimer.getShortTimer(this, 0, 200, true); // 200ms
		
		// F1キーセット
		setSoftLabel(Frame.SOFT_KEY_1, "Exit");
		// F2キーセット
		setSoftLabel(Frame.SOFT_KEY_2, "Menu");
	} // Constructor()
	
	// ---------------------------------------------------------
	// イベント処置 processEvent()
	// ---------------------------------------------------------
	// 利用しないイベント処理は削除すること(プログラムサイズ対策)
	public void processEvent(int type, int param) {
		/*
		// == タイマーイベント ==
		if (type == Display.TIMER_EXPIRED_EVENT) {
			
		} // TIMER_EXPIRED
		*/
		// == キーダウンイベント ==
		if (Display.KEY_RELEASED_EVENT == type) {
			// F1キー処理
			if (param == Display.KEY_SOFT1){
				IApplication.getCurrentApp().terminate(); // iアプリ終了
			}
			// F2キー処理
			if (param == Display.KEY_SOFT2) {}
			// 決定キー処理
			if (param == Display.KEY_SELECT) {}
			// 上下左右キー処理
			if (param == Display.KEY_UP) {}
			if (param == Display.KEY_DOWN) {}
			if (param == Display.KEY_LEFT) {}
			if (param == Display.KEY_RIGHT) {}
			// 数字キー
			if (param == Display.KEY_1) {}
			if (param == Display.KEY_ASTERISK) {} // *キー
			if (param == Display.KEY_POUND) {} // #キー
			
		} // KEY_RELEASED
		
	} // processEvent()
	
	// ---------------------------------------------------------
	// 作画 paint()
	// ---------------------------------------------------------
	public void paint(Graphics g) {
		
		g.lock(); // GCロック
		
		g.setColor(Graphics.getColorOfName(Graphics.RED));
		g.fillRect( 10, 10, 20, 20);
		g.setColor(Graphics.getColorOfName(Graphics.BLUE));
		g.drawString("Hello i-Appli", 20, 60);
		
		g.unlock(true); // GCアンロック
		
	} // paint()
	
} // End of Class


