Пример #1
0
static PRESULT timerset_msel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT32 sel;
 	TIMER_SET_CONTENT* settimer;
   	
 	settimer = &timer_set;	
	
	bID = OSD_GetObjID(pObj);

	switch(event)
	{
	case EVN_PRE_CHANGE:
		sel = *((UINT32*)param1);
	case EVN_POST_CHANGE:
		sel = param1;
		if(bID == TIMER_MODE_ID)
			win_timerset_timermode_change(TRUE);
		else if(bID == TIMER_SERVICE_ID)
			win_timerset_timerservice_change(TRUE);
		else if(bID == TIMER_WEEKDAY_ID)
			settimer->wakeup_weekday = sel;
		else if(bID == TIMER_SERVICEINFO_ID)
		    win_timerset_timerserviceinfo_change(TRUE,(UINT16)sel);
		else if(bID == TIMER_REC_TYPE_ID)
 			settimer->wakeup_message = sel;
		break;
	}

	return ret;
}
Пример #2
0
static PRESULT timerset_msel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT32 sel;

	bID = OSD_GetObjID(pObj);

	switch (event)
	{
		case EVN_PRE_CHANGE:
			sel = *((UINT32*)param1);
		case EVN_POST_CHANGE:
			sel = param1;
			if (bID == TIMER_MODE_ID)
				win_timerset_timermode_change(TRUE);
			else if (bID == TIMER_SERVICE_ID)
				win_timerset_timerservice_change(TRUE);
			else if (bID == TIMER_SERVICEINFO_ID)
				win_timerset_timerserviceinfo_change(TRUE, (UINT16)sel);
			break;
	}

	return ret;
}
Пример #3
0
void win_timer_load(TIMER_SET_CONTENT *settimer)
{
	MULTISEL *msel;
	EDIT_FIELD *edf;
	TEXT_FIELD *txt;
	P_NODE p_node;
	UINT16 ch_idx, ch_cnt;
	UINT32 value;
	UINT8 action;

	win_timerset_set_currenttime(FALSE);

	/* TIMER_MODE*/
	msel = &timer_msel_mode;
	if (settimer->timer_mode >= OSD_GetMultiselCount(msel))
		settimer->timer_mode = TIMER_MODE_OFF;
	OSD_SetMultiselSel(msel, settimer->timer_mode);

	/* TIMER_SERVICE */
	msel = &timer_msel_servicetype;
	if (settimer->timer_service >= OSD_GetMultiselCount(msel))
		settimer->timer_service = 0;
	OSD_SetMultiselSel(msel, settimer->timer_service);

	/* TIMER service information: message or channel */
	txt = &timer_txt_serviceinfo;
	OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)TimerServiceTxtStr_id[settimer->timer_service]);


	win_timerset_timerservice_change(FALSE);

	edf = &timer_edf_wakeupdate;
	value = settimer->wakeup_year *10000+settimer->wakeup_month *100+settimer->wakeup_day;
	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);


	edf = &timer_edf_wakeuptime;
	value = (settimer->wakeup_time / 3600) *10000+((settimer->wakeup_time / 60) % 60)*100 + settimer->wakeup_time%60;
	timerSec = settimer->wakeup_time % 60;
	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);


	edf = &timer_edf_duration;
	value = settimer->wakeup_duration_time / 3600 * 10000 + (settimer->wakeup_duration_time/60%60)*100 + settimer->wakeup_duration_time%60;
	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);

	win_timerset_timermode_change(FALSE);


}
Пример #4
0
void win_timer_load(TIMER_SET_CONTENT* settimer)
{
	MULTISEL	*msel;
	EDIT_FIELD	*edf;
	TEXT_FIELD	*txt;
	P_NODE   p_node;
	UINT16  ch_idx,ch_cnt;
	UINT32 value;
	UINT8 action;	

	win_timerset_set_currenttime(FALSE);

	/* TIMER_MODE*/
	msel = &timer_msel_mode;
	if(settimer->timer_mode >= OSD_GetMultiselCount(msel))
		settimer->timer_mode = TIMER_MODE_OFF;
	OSD_SetMultiselSel(msel, settimer->timer_mode);
	
	/* TIMER_WEEKDAY*/
	msel = &timer_msel_wakeupweekday;
	if(settimer->wakeup_weekday >= OSD_GetMultiselCount(msel))
		settimer->wakeup_weekday = SUNDAY;
	OSD_SetMultiselSel(msel, settimer->wakeup_weekday);

	/* TIMER_SERVICE */
	msel = &timer_msel_servicetype;
	if(settimer->timer_service >= OSD_GetMultiselCount(msel))
		settimer->timer_service = 0;
	OSD_SetMultiselSel(msel, settimer->timer_service);
	if(!pvr_info.hdd_valid)//guop add
	  OSD_SetMultiselSel(msel, 0);

	/* TIMER service information: message or channel */
	txt = &timer_txt_serviceinfo;
	OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)TimerServiceTxtStr_id[settimer->timer_service]);


	win_timerset_timerservice_change(FALSE);		

	edf = &timer_edf_wakeupdate;
	value = settimer->wakeup_year*10000 + settimer->wakeup_month*100 + settimer->wakeup_day;
	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);

	
	edf = &timer_edf_wakeuptime;
	value = settimer->wakeup_time/60 * 100 + settimer->wakeup_time%60;
	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);


	edf = &timer_edf_duration;
 	if(settimer->timer_mode == TIMER_MODE_OFF) // set 2 hour as default!!
 		settimer->wakeup_duration_time = 120;
   	value = settimer->wakeup_duration_time/60 * 100 + settimer->wakeup_duration_time%60;
   	OSD_SetEditFieldContent(edf, STRING_NUMBER, value);
   
 	msel = &timer_msel_rec_type;
 	if(settimer->wakeup_message > 2)
 		settimer->wakeup_message = 0;
 	OSD_SetMultiselSel(&timer_msel_rec_type, settimer->wakeup_message);

	win_timerset_timermode_change(FALSE);


}