function SceneBirthDate(options) {
	this.options = options;

	this.BirthDateView = null;
	this.BirthDateDim = null;
	this.BirthDateBG = null;

	this.BirthDateLabel = null;
	this.DayLabel = null;
	this.MonthLabel = null;
	this.YearLabel = null;

	this.DayBtn = null;
	this.MonthBtn = null;
	this.YearBtn = null;

	this.SaveBtn = null;
	this.CancelBtn = null;

	this.DayUpArrow = null;
	this.DayDownArrow = null;
	this.MonthUpArrow = null;
	this.MonthDownArrow = null;
	this.YearUpArrow = null;
	this.YearDownArrow = null;

	this.Init_Day = "";
	this.Init_Month = "";
	this.Init_Year = "";
	this.Buffer_Day = "1";
	this.Buffer_Month = "1";
	this.Buffer_Year = String(minYear);
	
	this.IsEnableSaveBtn = false;
	
	this.inputCount=0;
	this.BufferText="";

}

SceneBirthDate.prototype.initialize = function() {
	alert("SceneBirthDate.initialize()");
	// this function will be called only once when the scene manager show this scene first time
	// initialize the scene controls and styles, and initialize your variables here
	// scene HTML and CSS will be loaded before this function is called
	this.create();
}

SceneBirthDate.prototype.handleShow = function() {
	alert("SceneBirthDate.handleShow()");
	// this function will be called when the scene manager show this scene
	this.BirthDateDim.show();
	this.InitBirthDate();
	//this.setSaveBtnEnable(false);
	WndMgr.startPopupHideTimer(60000);
}

SceneBirthDate.prototype.handleHide = function() {
	alert("SceneBirthDate.handleHide()");
	//this function will be called when the scene manager hide this scene
	this.BirthDateDim.hide();
	WndMgr.stopPopupHideTimer();
	this.highlight(null);
	this.stopkeypad();
}

SceneBirthDate.prototype.handleFocus = function() {
	alert("SceneBirthDate.handleFocus()");
	// this function will be called when the scene manager focus this scene

	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	if(currentHighlight == null) {

		this.highlight(this.DayBtn);
	} else {
		this.highlight(currentHighlight);
	}
}

SceneBirthDate.prototype.handleBlur = function() {
	alert("SceneBirthDate.handleBlur()");
	// this function will be called when the scene manager move focus to another scene from this scene
	var  obj = this.BirthDateView.getCurrentHighlight();
	if(obj != null)
	{
		obj.blur();	
	}   
}

SceneBirthDate.prototype.handleKeyDown = function(keyCode) {
	alert("SceneBirthDate.handleKeyDown(" + keyCode + ")");
	// TODO : write an key event handler when this scene get focued
	var keypadtype = event.keypadType;
	//alert("DatePickerBox.keydown() ->  keypadtype :" + keypadtype);
	PluginAPIMgr.PlayAudio(keyCode);
	if(ProcMgr.checkWidgetHighlight()==false){
		return;
	}
	switch (keyCode) {
		case sf.key.N0:this.inputText("0");break;
		case sf.key.N1:this.inputText("1");break;
		case sf.key.N2:this.inputText("2");break;
		case sf.key.N3:this.inputText("3");break;
		case sf.key.N4:this.inputText("4");break;
		case sf.key.N5:this.inputText("5");break;
		case sf.key.N6:this.inputText("6");break;
		case sf.key.N7:this.inputText("7");break;
		case sf.key.N8:this.inputText("8");break;
		case sf.key.N9:this.inputText("9");break;
		case sf.key.LEFT:
			WndMgr.resetPopupHideTimer();
			this.processLeftKey();
			break;
		case sf.key.RIGHT:
			WndMgr.resetPopupHideTimer();
			this.processRightKey();
			break;
		case sf.key.UP:
			WndMgr.resetPopupHideTimer();
			this.processUpKey();
			break;
		case sf.key.DOWN:
			WndMgr.resetPopupHideTimer();
			this.processDownKey();
			break;
		case sf.key.ENTER:
			if(keypadtype==1){
				if(PluginAPIMgr.FlagSmartControlNumber() ==1)
					this.processEnterKey();
				else{
					this.startkeypad();
				}
			}else{
				this.processEnterKey();
			}
			break;
		case sf.key.RETURN:
		case sf.key.EXIT:
			this.processExitKey();
			sf.key.preventDefault();
			break;
		case 72: //>>
			if(event instanceof KeyboardEvent){	//if press remote controller
				event.preventDefault();
			}
			else{
				this.startkeyPad();
				event.preventDefault();
			}
			break;	
		case 147:
		//infolink
		case 261:
		//contents
		case 115:
			//wiselink
			ProcMgr.processInfolinkKey();
			break;
	}
}
SceneBirthDate.prototype.startkeypad = function() {
	if(PluginAPIMgr.FlagSmartControlNumber() !=1)
	{
		PluginAPIMgr.ShowSmartControlNumber();
		WndMgr.holdPopupHideTimer();
	}
}
SceneBirthDate.prototype.stopkeypad = function() {
	if(PluginAPIMgr.FlagSmartControlNumber() ==1)
	{
		PluginAPIMgr.HideSmartControlNumber();
	}
}
SceneBirthDate.prototype.inputText = function(text) {
	alert("SceneBirthDate.inputText() "+ text);
	var obj = this.BirthDateView.getCurrentHighlight();
	if(obj==this.SaveBtn||obj==this.CancelBtn)
		return ;
	
	this.inputCount++;
	this.BufferText+=text;
	obj.SetText(this.BufferText);
	switch(obj){
		case this.DayBtn:
		case this.MonthBtn:
			if(this.inputCount==2){
				this.CheckValidDate(obj);
			}
			break;
		case this.YearBtn:
			if(this.inputCount==4){
				this.CheckValidDate(obj);
			}
			break;
	}
	
	
}
SceneBirthDate.prototype.processReturnKey = function() {
	alert("SceneBirthDate.processReturnKey() ");
	StateMgr.Stop_BirthDate_State(true);
}

SceneBirthDate.prototype.processExitKey = function() {
	alert("SceneBirthDate.processExitKey() ");
	StateMgr.Stop_BirthDate_State(true);
}
SceneBirthDate.prototype.processMouseOver = function(obj) {
	var currentHighlight = this.BirthDateView.setCurrenHighlight(obj);
	if(currentHighlight != obj) {
		this.highlight(obj);
	}
	WndMgr.resetPopupHideTimer();
}
SceneBirthDate.prototype.highlight = function(obj) {
	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	this.CheckDay();
	this.BirthDateView.setCurrenHighlight(obj);
	switch(obj) {
		case this.DayBtn:
		case this.MonthBtn:
		case this.YearBtn:
			this.ChangeHelpbar(2);
			break;
		case this.SaveBtn:
		case this.CancelBtn:
			this.ChangeHelpbar(0);
			this.stopkeypad();
			break;
	}
}

SceneBirthDate.prototype.processClickEvent = function(obj) {
	alert("SceneBirthDate.processClickEvent() ");

	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	if(currentHighlight != obj) {
		this.highlight(obj);
	}
	if(obj==this.SaveBtn||obj==this.CancelBtn)
		this.processEnterKey();
	else{
		this.startkeypad();
	}
	WndMgr.resetPopupHideTimer();
}
SceneBirthDate.prototype.processUpKey = function() {
	alert("SceneBirthDate.processUpKey()");
	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	switch(currentHighlight) {
		case this.DayBtn:
		case this.MonthBtn:
		case this.YearBtn:
			this.increment(currentHighlight);
			break;
		case this.CancelBtn:
			if(this.IsEnableSaveBtn)
				this.highlight(this.SaveBtn);
			break;
	}
}

SceneBirthDate.prototype.increment = function(obj) {
	alert("SceneBirthDate.increment("+obj.GetObjId()+")");
	var before_data = Number(obj.GetText());
	alert("before_data : " +before_data);
	switch(obj) {
		case this.DayBtn:
			if(before_data < 1 || before_data >= 31) {
				before_data = 1;
			} else {
				before_data++;
			}
			break;
		case this.MonthBtn:
			if(before_data < 1 || before_data >= 12) {
				before_data = 1;
			} else {
				before_data++;
			}
			break;
		case this.YearBtn:
			if(before_data >= maxYear || before_data <minYear) {
				before_data = minYear;
			} else {
				before_data++;
			}
			break;
	}
	obj.SetText(before_data);
	this.CheckDay();
}
SceneBirthDate.prototype.decrement = function(obj) {
	alert("SceneBirthDate.decrement("+obj.GetObjId()+")");
	var before_data = Number(obj.GetText());
	alert("before_data : " +before_data);
	switch(obj) {
		case this.DayBtn:
			if(before_data <= 1 || before_data > 31) {
				before_data = 31;
			} else {
				before_data--;
			}
			break;
		case this.MonthBtn:
			if(before_data <= 1 || before_data > 12) {
				before_data = 12;
			} else {
				before_data--;
			}
			break;
		case this.YearBtn:
			if(before_data <= minYear || before_data > maxYear) {
				before_data = maxYear;
			} else {
				before_data--;
			}
			break;
	}
	obj.SetText(before_data);
	this.CheckDay();
}
SceneBirthDate.prototype.processDownKey = function() {
	alert("SceneBirthDate.processDownKey()");
	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	switch(currentHighlight) {
		case this.DayBtn:
		case this.MonthBtn:
		case this.YearBtn:
			this.decrement(currentHighlight);
			break;
		case this.SaveBtn:
			this.highlight(this.CancelBtn);
			break;
		case this.CancelBtn:
			break;
	}
}
SceneBirthDate.prototype.processLeftKey = function() {
	alert("SceneBirthDate.processLeftKey()");
	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	switch(currentHighlight) {
		case this.MonthBtn:
			this.highlight(this.DayBtn);
			break;
		case this.YearBtn:
			this.highlight(this.MonthBtn);
			break;
		case this.SaveBtn:
		case this.CancelBtn:
			this.highlight(this.YearBtn);
			break;
	}
}

SceneBirthDate.prototype.processRightKey = function() {
	alert("SceneBirthDate.processRightKey()");
	var currentHighlight = this.BirthDateView.getCurrentHighlight();

	switch(currentHighlight) {
		case this.DayBtn:
			this.highlight(this.MonthBtn);
			break;
		case this.MonthBtn:
			this.highlight(this.YearBtn);
			break;
		case this.YearBtn:
			if(this.IsEnableSaveBtn)
				this.highlight(this.SaveBtn);
			else
				this.highlight(this.CancelBtn);
			break;
		case this.SaveBtn:
		case this.CancelBtn:
			break;
	}
}
SceneBirthDate.prototype.processEnterKey = function() {
	alert("SceneBirthDate.processEnterKey()");

	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	switch(currentHighlight) {
		case this.DayBtn:
		case this.MonthBtn:
		case this.YearBtn:
			this.MoveNext();
			break;
		case this.SaveBtn:
			this.SaveBrithDate();
			break;
		case this.CancelBtn:
			this.processReturnKey();
			break;
	}
}
SceneBirthDate.prototype.SaveBrithDate = function() {
	alert("SceneBirthDate.BrithDateSave() ");
	var profile_ = sf.scene.get("ListMainProfile");
	var year =String(this.YearBtn.GetText());
	var month = String(this.MonthBtn.GetText());
	var day = String(this.DayBtn.GetText());
	if(month.length == 1) {
		month = "0" + month;
	}
	if(day.length == 1) {
		day = "0" + day;
	}
	var date = year + month + day;
	if(this.Init_BirthDate!=date){
		PluginAPIMgr.SetBirthDate(date);
		profile_.SetBirthDate(date);
		alert("saved " + date);
	}else{
		alert("remain " + date);
	}
	StateMgr.Stop_BirthDate_State(true);
}
SceneBirthDate.prototype.CheckValidDate = function(obj) {
	if(obj==null)
		return;
	alert("SceneBirthDate.CheckValidDate() ");
	switch(obj){
		case this.DayBtn:
			var current_day = this.DayBtn.GetText();
			alert("current_day:"+current_day);
			if(current_day <= 31 &&current_day >= 1) {
				this.Buffer_Day = current_day;
				this.DayBtn.SetText(this.Buffer_Day);
				this.MoveNext();
			}else
				this.DayBtn.SetText(this.Buffer_Day);
			break;
		case this.MonthBtn:
			var current_month = this.MonthBtn.GetText();
			alert("current_month:"+current_month);
			if(current_month <= 12&&current_month >= 1) {
				this.Buffer_Month = current_month;
				this.MonthBtn.SetText(this.Buffer_Month);
				this.MoveNext();
			}else
				this.MonthBtn.SetText(this.Buffer_Month);
			break;
		case this.YearBtn:
			var current_year = this.YearBtn.GetText();
			alert("current_year:"+current_year);
			if(current_year <= maxYear & current_year >= minYear) {
				this.Buffer_Year = current_year;
				this.YearBtn.SetText(this.Buffer_Year);
				this.MoveNext();
			}else
				this.YearBtn.SetText(this.Buffer_Year);
			break;
		default:
			return ;
			
	}
	this.CheckDay();
	this.inputCount=0;
	this.BufferText="";
}
SceneBirthDate.prototype.CheckDay = function() { // allways
	alert('SceneBirthDate.CheckDay')
	var current_year = Number(this.YearBtn.GetText());
	var current_month = Number(this.MonthBtn.GetText());
	var current_day = Number(this.DayBtn.GetText());
	var current_month = this.MonthBtn.GetText();

	if(current_month <= 12&&current_month >= 1) {
		this.Buffer_Month = current_month;
	}
	this.MonthBtn.SetText(this.Buffer_Month);
	
	if(current_year <= maxYear & current_year >= minYear) {
		this.Buffer_Year = current_year;
	}
	this.YearBtn.SetText(this.Buffer_Year);
	var max_day = 31;
	if(current_month == 1 || current_month == 3 || current_month == 5 || current_month == 7 || current_month == 8 || current_month == 10 || current_month == 12) {
		max_day = 31;
	} else if(current_month == 4 || current_month == 6 || current_month == 9 || current_month == 11) {
		max_day = 30;
	} else {
		if((current_year % 4 == 0 && current_year % 100 != 0) || current_year % 400 == 0) {
			max_day = 29;
		} else {
			max_day = 28;
		}
	}
	if(current_day > max_day) {
		this.Buffer_Day = max_day
	}else
		this.Buffer_Day = current_day;
	this.DayBtn.SetText(this.Buffer_Day);
	this.IsChangeDate();
}
SceneBirthDate.prototype.IsChangeDate = function() {
	alert("SceneBirthDate.IsChangeDate() ---- ");
	if(this.DayBtn.GetText()==""||this.MonthBtn.GetText()==""||this.YearBtn.GetText()=="")
		return ;
	if(this.Init_Day != this.DayBtn.GetText() || this.Init_Month != this.MonthBtn.GetText() || this.Init_Year != this.YearBtn.GetText()){
		this.setSaveBtnEnable(true);
	}else{
		this.setSaveBtnEnable(false);
	}
}
SceneBirthDate.prototype.setSaveBtnEnable = function(flag_enable) {
	alert("SceneBirthDate.setSaveBtnEnable() : ");
	if(flag_enable == true) {
		this.SaveBtn.SetFlagDim(false);
		this.IsEnableSaveBtn = true;
	} else if(flag_enable == false) {
		this.SaveBtn.SetFlagDim(true);
		this.IsEnableSaveBtn = false;
	}
}
SceneBirthDate.prototype.ChangeHelpbar = function(type) {
	if(type == 1) {
		var dataInfo = {
			'ff' : SID_NUMBER,	
			//'play' : SID_DELETE,	
			'return' : SID_RETURN
		};
		this.BirthDateBG.SetHelpbarContentsOfPopupBG(dataInfo);
		
	} else if(type == 0){
		var dataInfo = {
			'return' : SID_RETURN
		};
		this.BirthDateBG.SetHelpbarContentsOfPopupBG(dataInfo);
		
	}
	 else if(type == 2){
		var dataInfo = {
			'ff' : SID_NUMBER,
			'return' : SID_RETURN
		};
		this.BirthDateBG.SetHelpbarContentsOfPopupBG(dataInfo);
		
	}
}

SceneBirthDate.prototype.InitBirthDate = function() {
	alert("SceneBirthDate.InitBirthDate()");
	var profile_ = sf.scene.get("ListMainProfile");
	this.Init_Day = "";
	this.Init_Month = "";
	this.Init_Year = "";
	this.Init_BirthDate = profile_.GetBirthDate();
	var date_len = 0;
	if(this.Init_BirthDate != null && this.Init_BirthDate.length==8) {
		date_len = this.Init_BirthDate.length;

		this.Init_Day = this.Init_BirthDate.substring(date_len - 2, date_len);
		this.Init_Month = this.Init_BirthDate.substring(date_len - 4, date_len - 2);
		this.Init_Year = this.Init_BirthDate.substring(date_len - 8, date_len - 4);
		
		if(this.Init_Day.charAt(0) == '0') {
			this.Init_Day = this.Init_Day.substring(1, 2);
		}
		if(this.Init_Month.charAt(0) == '0') {
			this.Init_Month = this.Init_Month.substring(1, 2);
		}
		this.DayBtn.SetText(this.Init_Day);
		this.MonthBtn.SetText(this.Init_Month);
		this.YearBtn.SetText(this.Init_Year);
	}else{
		this.DayBtn.SetText("1");//this.Init_Day);
		this.MonthBtn.SetText("1");//this.Init_Month);
		this.YearBtn.SetText(String(minYear));//this.Init_Year);
	}
}

SceneBirthDate.prototype.MoveNext = function(){
	alert("SceneBirthDate.MoveNext()");
	var currentHighlight = this.BirthDateView.getCurrentHighlight();
	switch(currentHighlight){
		case this.DayBtn:
			this.highlight(this.MonthBtn);
			break;
		case this.MonthBtn:
			this.highlight(this.YearBtn);
			break;
		case this.YearBtn:
			if(this.IsEnableSaveBtn)
				this.highlight(this.SaveBtn);
			else
				this.highlight(this.CancelBtn);
			break;
	}
	WndMgr.resetPopupHideTimer();
}


SceneBirthDate.prototype.ArrowClick = function(s) {
	alert("SceneBirthDate.ArrowClick()");
	switch(s) {
		case this.DayDownArrow:
			this.highlight(this.DayBtn);
			this.decrement(this.DayBtn);
			break;
		case this.DayUpArrow:
			this.highlight(this.DayBtn);
			this.increment(this.DayBtn);
			break;
		case this.MonthDownArrow:
			this.highlight(this.MonthBtn);
			this.decrement(this.MonthBtn);
			break;
		case this.MonthUpArrow:
			this.highlight(this.MonthBtn);
			this.increment(this.MonthBtn);
			break;
		case this.YearDownArrow:
			this.highlight(this.YearBtn);
			this.decrement(this.YearBtn);
			break;
		case this.YearUpArrow:
			this.highlight(this.YearBtn);
			this.increment(this.YearBtn);
			break;
	}
	
	WndMgr.resetPopupHideTimer();

}
SceneBirthDate.prototype.create = function() {
	alert("SceneBirthDate.create()");
	this.BirthDateView = new View("BirthDate");
	this.BirthDateBG = new View("BirthDateBG");
	this.BirthDateBG.CreatePopupBG(0, "BirthDate_popup_BG");
	this.BirthDateBG.SetTitleTextofPopupBG(IDWS_MOIP_SETTING_BIRTH_DATE);
	this.BirthDateBG.CreateInnerBox("BirthDate_popup_innerbox");
	this.BirthDateDim = new DimBg("BirthDateDim", "BirthDateBG");

	var this_ = this;
	var clickCF = function(obj) {
		this_.processClickEvent(obj);
	};
	this.BirthDateLabel = new TextLayer("birthdate_birthdate_label");
	this.BirthDateLabel.SetTextStyle("birthdate_label_style_nor");
	this.BirthDateLabel.SetText(IDWS_MOIP_SETTING_BIRTH_DATE);

	this.DayLabel = new TextLayer("birthdate_day_label");
	this.DayLabel.SetTextStyle("birthdate_label_style_nor");
	this.DayLabel.SetText(SID_DAY);

	this.MonthLabel = new TextLayer("birthdate_month_label");
	this.MonthLabel.SetTextStyle("birthdate_label_style_nor");
	this.MonthLabel.SetText(SID_MONTH);

	this.YearLabel = new TextLayer("birthdate_year_label");
	this.YearLabel.SetTextStyle("birthdate_label_style_nor");
	this.YearLabel.SetText(SID_YEAR);

	this.DayBtn = new Button();
	this.DayBtn.SetImageObjId("birthdate_day_btn", 29);
	this.DayBtn.SetTextObjId("birthdate_day_btn_text");
	this.DayBtn.SetMaxStringLength(2);
	this.DayBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_TEXT_INPUT_NORMAL);
	this.DayBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_TEXT_INPUT_FOCUS);
	this.DayBtn.SetOnClickCallbackFunc(clickCF);

	this.MonthBtn = new Button();
	this.MonthBtn.SetImageObjId("birthdate_month_btn", 29);
	this.MonthBtn.SetTextObjId("birthdate_month_btn_text");
	this.MonthBtn.SetMaxStringLength(2);
	this.MonthBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_TEXT_INPUT_NORMAL);
	this.MonthBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_TEXT_INPUT_FOCUS);
	
	this.MonthBtn.SetOnClickCallbackFunc(clickCF);

	this.YearBtn = new Button();
	this.YearBtn.SetImageObjId("birthdate_year_btn", 29);
	this.YearBtn.SetTextObjId("birthdate_year_btn_text");
	this.YearBtn.SetMaxStringLength(4);
	this.YearBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_TEXT_INPUT_NORMAL);
	this.YearBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_TEXT_INPUT_FOCUS);
	
	this.YearBtn.SetOnClickCallbackFunc(clickCF);
	
	this.DayUpArrow = new Label("birthdate_day_arrow_up", null);
	this.DayUpArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL);
	this.DayUpArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_FOCUS);
	this.DayUpArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});
	this.DayDownArrow = new Label("birthdate_day_arrow_down", null);
	this.DayDownArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL);
	this.DayDownArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_FOCUS);
	this.DayDownArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});
	this.MonthUpArrow = new Label("birthdate_month_arrow_up", null);
	this.MonthUpArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL);
	this.MonthUpArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_FOCUS);
	this.MonthUpArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});
	this.MonthDownArrow = new Label("birthdate_month_arrow_down", null);
	this.MonthDownArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL);
	this.MonthDownArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_FOCUS);
	this.MonthDownArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});
	this.YearUpArrow = new Label("birthdate_year_arrow_up", null);
	this.YearUpArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL);
	this.YearUpArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_UP_FOCUS);
	this.YearUpArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});
	this.YearDownArrow = new Label("birthdate_year_arrow_down", null);
	this.YearDownArrow.SetBgImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL);
	this.YearDownArrow.SetOnMouseOutOverImage(g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_NORMAL, g_Image.IMAGE_PROFILE_BIRTHDATE_ARROW_DOWN_FOCUS);
	this.YearDownArrow.SetOnClickCallbackFunc(function(obj) {
		this_.ArrowClick(obj);
	});

	this.SaveBtn = new Button();
	this.SaveBtn.SetImageObjId("birthdate_save_btn", 20);
	this.SaveBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_POPUP_BTN_NORMAL);
	this.SaveBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_POPUP_BTN_NORMALFOCUS);

	this.SaveBtn.SetTextObjId("birthdate_save_btn_text");
	this.SaveBtn.SetText(SID_SAVE);
	this.SaveBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_NORMAL_STYLE, "popup_btn_text_normal_style");
	this.SaveBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_FOCUS_STYLE, "popup_btn_text_focus_style");
	this.SaveBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_DIM_STYLE, "popup_btn_text_dimmed_style");
	this.SaveBtn.SetOnClickCallbackFunc(clickCF);

	this.CancelBtn = new Button();
	this.CancelBtn.SetImageObjId("birthdate_cancel_btn", 20);
	this.CancelBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_POPUP_BTN_NORMAL);
	this.CancelBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_POPUP_BTN_NORMALFOCUS);

	this.CancelBtn.SetTextObjId("birthdate_cancel_btn_text");
	this.CancelBtn.SetText(SID_CANCEL);
	this.CancelBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_NORMAL_STYLE, "popup_btn_text_normal_style");
	this.CancelBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_FOCUS_STYLE, "popup_btn_text_focus_style");
	this.CancelBtn.SetTextStyle(BtnTextStyleIndex.BTN_TEXT_DIM_STYLE, "popup_btn_text_dimmed_style");
	this.CancelBtn.SetOnClickCallbackFunc(clickCF);
	
	this.SaveBtn.SetOnMouseOverCallbackFunc(function(obj) {
		this_.processMouseOver(obj);
	});
	this.CancelBtn.SetOnMouseOverCallbackFunc(function(obj) {
		this_.processMouseOver(obj);
	});
	this.DayBtn.SetOnMouseOverCallbackFunc(function(obj) {
		this_.processMouseOver(obj);
	});
	this.MonthBtn.SetOnMouseOverCallbackFunc(function(obj) {
		this_.processMouseOver(obj);
	});
	this.YearBtn.SetOnMouseOverCallbackFunc(function(obj) {
		this_.processMouseOver(obj);
	});
		
	
}