📄 mmiunitconversion.c
字号:
break;
}
break;
case AREA:
switch(data->unit1.unit)
{
case SQ_METER:
t=data->unit1.value;
break;
case HECTARE:
t=data->unit1.value*10000;
break;
case MU:
t=data->unit1.value/0.0015;
break;
case SQ_FOOT:
t=data->unit1.value*929/10000;
break;
case SQ_YARD:
t=data->unit1.value*0.836;
break;
case ACRE:
t=data->unit1.value*4047;
break;
case SQ_INCH:
t=data->unit1.value*6.451/10000;
break;
}
switch(data->unit2.unit)
{
case SQ_METER:
data->unit2.value=t;
break;
case HECTARE:
data->unit2.value=t/10000;
break;
case MU:
data->unit2.value=t*0.0015;
break;
case SQ_FOOT:
data->unit2.value=t*10000/929;
break;
case SQ_YARD:
data->unit2.value=t/0.836;
break;
case ACRE:
data->unit2.value=t/4047;
break;
case SQ_INCH:
data->unit2.value=t*10000/6.451;
break;
}
break;
case VOLUME:
switch(data->unit1.unit)
{
case LITRE:
t=data->unit1.value;
break;
case ML:
t=data->unit1.value/1000;
break;
case GAL:
t=data->unit1.value*4.546;
break;
case QT:
t=data->unit1.value*1.136;
break;
}
switch(data->unit2.unit)
{
case LITRE:
data->unit2.value=t;
break;
case ML:
data->unit2.value=t*1000;
break;
case GAL:
data->unit2.value=t/4.546;
break;
case QT:
data->unit2.value=t/1.136;
break;
}
break;
case WEIGHT:
switch(data->unit1.unit)
{
case GRAM:
t=data->unit1.value/1000;
break;
case KILOGRAM:
t=data->unit1.value;
break;
case TON:
t=data->unit1.value*1000;
break;
case OUNCE:
t=data->unit1.value*31.03/1000;
break;
case POUND:
t=data->unit1.value*0.373;
break;
}
switch(data->unit2.unit)
{
case GRAM:
data->unit2.value=t*1000;
break;
case KILOGRAM:
data->unit2.value=t;
break;
case TON:
data->unit2.value=t/1000;
break;
case OUNCE:
data->unit2.value=t*1000/31.03;
break;
case POUND:
data->unit2.value=t/0.373;
break;
}
break;
}
memset(string2,0,sizeof(string2));
sprintf(string2,"%f",data->unit2.value);
if((data->unit1.value>MAX_CHANGE_VALUE)||(data->unit2.value>MAX_CHANGE_VALUE))
{
dialog_info_init(&display_info);
display_info.TextId2 =TxtOverflow;
display_info.Time = FOREVER;
display_info.iconindex = REMIND_NORECORD;
display_info.Callback = (T_VOID_FUNC)NULL;
/*
* Call Info Screen
*/
info_dialog (win, &display_info);
data->unit1.value=0;
data->unit2.value=0;
memset(data->stringbuffer,0,sizeof(data->stringbuffer));
afterpointflag=FALSE;
afterpointcount1=0;
data->index=0;
}
//RightKeyFlag=FALSE;
winShow(win);
break;
case KCD_LEFT:
case KCD_OK:
if(data->unit_type<UNITEND-1)
{
data->unit_type++;
data->unit_id++;
}
else
{
data->unit_type=LENGTH;
data->unit_id=TxtLength;
}
data->unit1.unit=0;
data->unit2.unit=0;
data->unit1.value=0;
data->unit2.value=0;
data->index=0;
afterpointflag=FALSE;
afterpointcount1=0;
memset(data->stringbuffer,0,sizeof(data->stringbuffer));
//RightKeyFlag=FALSE;
winShow(win);
break;
case KCD_MNUUP:
case KCD_MNUDOWN:
data->position=!data->position;
afterpointflag=FALSE;
afterpointcount1=0;
//RightKeyFlag=FALSE;
winShow(win);
break;
case KCD_MNULEFT:
switch(data->unit_type)
{
case LENGTH:
if(!data->position)
{
if(data->unit1.unit>METER)
data->unit1.unit--;
else data->unit1.unit=YARD;
}
else
{
if(data->unit2.unit>METER)
data->unit2.unit--;
else data->unit2.unit=YARD;
}
break;
case AREA:
if(!data->position)
{
if(data->unit1.unit>SQ_METER)
data->unit1.unit--;
else data->unit1.unit=SQ_INCH;
}
else
{
if(data->unit2.unit>SQ_METER)
data->unit2.unit--;
else data->unit2.unit=SQ_INCH;
}
break;
case VOLUME:
if(!data->position)
{
if(data->unit1.unit>ML)
data->unit1.unit--;
else data->unit1.unit=QT;
}
else
{
if(data->unit2.unit>ML)
data->unit2.unit--;
else data->unit2.unit=QT;
}
break;
case WEIGHT:
if(!data->position)
{
if(data->unit1.unit>GRAM)
data->unit1.unit--;
else data->unit1.unit=POUND;
}
else
{
if(data->unit2.unit>GRAM)
data->unit2.unit--;
else data->unit2.unit=POUND;
}
break;
}
/*
data->unit1.value=change((char*)data->stringbuffer);
switch(data->unit_type)
{
case LENGTH:
switch(data->unit1.unit)
{
case METER:
t=data->unit1.value;
break;
case DECIMETER:
t=data->unit1.value/10;
break;
case CENTIMETER:
t=data->unit1.value/100;
break;
case MILLIMETER:
t=data->unit1.value/1000;
break;
case INCH:
t=data->unit1.value*2.45/100;
break;
case FOOT:
t=data->unit1.value*30.48/100;
break;
case MILE:
t=data->unit1.value*1609;
break;
case YARD:
t=data->unit1.value*0.914;
break;
case NAUTICAL_MILE:
t=data->unit1.value*1852;
break;
}
switch(data->unit2.unit)
{
case METER:
data->unit2.value=t;
break;
case DECIMETER:
data->unit2.value=t*10;
break;
case CENTIMETER:
data->unit2.value=t*100;
break;
case MILLIMETER:
data->unit1.value=t*1000;
break;
case INCH:
data->unit2.value=t*100/2.45;
break;
case FOOT:
data->unit2.value=t*100/30.48;
break;
case MILE:
data->unit2.value=t/1609;
break;
case YARD:
data->unit2.value=t/0.914;
break;
case NAUTICAL_MILE:
data->unit2.value/1852;
break;
}
break;
case AREA:
switch(data->unit1.unit)
{
case SQ_METER:
t=data->unit1.value;
break;
case HECTARE:
t=data->unit1.value*10000;
break;
case MU:
t=data->unit1.value/0.0015;
break;
case SQ_FOOT:
t=data->unit1.value*929/10000;
break;
case SQ_YARD:
t=data->unit1.value*0.836;
break;
case ACRE:
t=data->unit1.value*4047;
break;
case SQ_INCH:
t=data->unit1.value*6.451/10000;
break;
}
switch(data->unit2.unit)
{
case SQ_METER:
data->unit2.value=t;
break;
case HECTARE:
data->unit2.value=t/10000;
break;
case MU:
data->unit2.value=t/0.0015;
break;
case SQ_FOOT:
data->unit2.value=t*10000/929;
break;
case SQ_YARD:
data->unit2.value=t/0.836;
break;
case ACRE:
data->unit2.value=t/4047;
break;
case SQ_INCH:
data->unit2.value=t*10000/6.451;
break;
}
break;
case VOLUME:
switch(data->unit1.unit)
{
case LITRE:
t=data->unit1.value;
break;
case ML:
t=data->unit1.value/1000;
break;
case GAL:
t=data->unit1.value*4.546;
break;
case QT:
t=data->unit1.value*1.136;
break;
}
switch(data->unit2.unit)
{
case LITRE:
data->unit2.value=t;
break;
case ML:
data->unit2.value=t*1000;
break;
case GAL:
data->unit2.value=t/4.546;
break;
case QT:
data->unit2.value=t/1.136;
break;
}
break;
case WEIGHT:
switch(data->unit1.unit)
{
case GRAM:
t=data->unit1.value/1000;
break;
case KILOGRAM:
t=data->unit1.value;
break;
case TON:
t=data->unit1.value*1000;
break;
case OUNCE:
t=data->unit1.value*31.03/1000;
break;
case POUND:
t=data->unit1.value*0.373;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -