/**
 * 应用程序源码文件
 */
#ifndef STT_HMIAPP_CPP_
#define STT_HMIAPP_CPP_

/*********************
 *   头文件
 *********************/
#include "HmiApp.h"
/*PAGES_HEAD_BEGIN*/
#include "pages/Frm01.h"
#include "pages/Frm02.h"
#include "pages/Frm03.h"
#include "pages/Frm04.h"
#include "pages/IME01.h"
#include "pages/IME09.h"
/*PAGES_HEAD_END*/

using namespace stt;

/********************************
 *
 *  应用程序入口
 *
 *  注意：IDE自动生成，用户勿修改
 *
 ********************************/
IApplication * AppMain(IRuntime* env, char **argv){
	return new HmiApp(env);
}

string getAppArgs() {
	return "{\"r\":0}";
}

/********************************
 *
 *  应用程序类
 *
 *  注意：用户可添加代码
 *
 ********************************/
HmiApp::HmiApp(IRuntime * rt) : HmiAppBase(rt) {
}

HmiApp::~HmiApp() {
}

/********************************
 *
 *  应用构建前调用此函数
 *
 *  注意：用户可添加代码
 *
 ********************************/
void HmiApp::onInit(){
	//用户在此添加客户化代码
}

/********************************
 *
 *  应用构建函数
 *
 *  注意：IDE自动生成，用户勿修改
 *
 ********************************/
void HmiApp::construct() {
	//注册字体文件
	fm->registerFontFile("文泉驿微米黑", "./fnt/wenquanyiweimihei.ttf");
	fm->registerFontFile("DigifaceWide", "./fnt/digifaw.ttf");
	//背光、屏保
	pm->setBackLightHoldingTime(0, 50);
	regNumPadPage("IME01");
	regNumPadPage("IME09");
}

IPagePtr HmiApp::buildPage(string id, uint8_t mode, STTWidget *target) {
	if (id == "Frm01")
		return new Frm01(this, target, "Frm01", "Frm01");
	if (id == "Frm03")
		return new Frm03(this, target, "Frm03", "Frm03");
	if (id == "Frm04")
		return new Frm04(this, target, "Frm04", "Frm04");
	if (id == "IME01")
		return new IME01(this, target, "IME01", "IME01");
	if (id == "IME09")
		return new IME09(this, target, "IME09", "IME09");
	return new Frm02(this, target, "Frm02", "Frm02");
}

/********************************
 *
 *  构建应用后调用此函数
 *
 *  注意：用户可添加代码
 *
 ********************************/
void HmiApp::onReady(){
	//用户在此添加客户化代码
}

/********************************
 *
 *  应用退出前调用此函数
 *
 *  注意：用户可添加代码
 *
 ********************************/
void HmiApp::onQuit(){
	//用户在此添加客户化代码
}


#endif /* STT_HMIAPP_CPP_ */


