/*********************************************
 * Resident.java                             *
 * Copyright(c) 2002 Connect Corporation     *
 * All rights reserved.                      *
 * Target : MIDP(JSCL1.0)                    *
 *===========================================*
 *       待ち受けアプリサンプル              *
 * Desc. :                                   *
 *   待ち受けアプリのサンプルコード          *
 *********************************************
 *  Version    Date      Author              *
 *  Ver. 1.00  02/03/11  K.Iguchi            *
 *********************************************/

//===========================================================//
//=====  インポート  ========================================//
//===========================================================//
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import com.j_phone.midlet.*;


//===========================================================//
//=====  メインクラス  ======================================//
//===========================================================//
public class Resident extends ResidentMIDlet
{
	private EC ec;
	private String sys_mess = "-----";
	private String res_mess = "-----";

	//=====  エントリ =====//
	public void startApp()
	{
		ec = new EC();

		Display.getDisplay( this ).setCurrent( ec );

		ec.repaint();
	}
	
	public void pauseApp() {}

	public void destroyApp( boolean u ) {}

	//===========================================================//
	//=====  音声着信イベント処理  ==============================//
	//===========================================================//
	public void ring( String name, String tel_num )
	{
		sys_mess = "音声着信";
		ec.repaint();
	}
	
	public void ignored()
	{
		sys_mess = "音声着信終了";
		ec.repaint();
	}


	//===========================================================//
	//=====  メール着信イベント処理   ===========================//
	//===========================================================//
	public void received( String name, String address, int type )
	{
		sys_mess = "メール受信";
		ec.repaint();
	}


	//===========================================================//
	//=====  アラームイベント処理  ==============================//
	//===========================================================//
	public void notice( String comment )
	{
		sys_mess = "アラーム発生";
		ec.repaint();
	}


	//===========================================================//
	//=====  常駐時割り込みイベント処理  ========================//
	//===========================================================//
	public void ringStarted()
	{
		res_mess = "着信スタート";
		ec.repaint();
	}
	
	public void ringStopped()
	{
		res_mess = "着信ストップ";
		ec.repaint();
	}
	
	
	//===========================================================//
	//=====  拡張描画クラス  ====================================//
	//===========================================================//
	private class EC extends Canvas
	{
		private int WI = getWidth(), HE = getHeight();
		
		public EC()
		{
		}

		public void paint(Graphics g)
		{
			g.setColor( 0x00ffffff );
			g.fillRect( 0, 0, WI, HE );
			
			g.setColor( 0x00000000 );
			g.drawString( sys_mess, WI/2, HE/2, g.HCENTER | g.TOP );
			g.drawString( res_mess, WI/2, HE/2+12, g.HCENTER | g.TOP );
			
		}

	}//=====  End of ExtendCampas
}
