📄 aphearsay.c
字号:
p=g_aHSHint[0]; //""
if (g_RrParam.wSndMode&APHS_REPEAT)
{
p=g_aHSHint[3]; //"正在复读......",
}
else if (g_RrParam.wSndMode&APHS_FOLLOW)
{
if (g_RrParam.wSndMode&APHS_SOUND_REC)
{
p=g_aHSHint[4]; //"正在录音......",
}
else if (g_RrParam.wSndMode&APHS_SOUND_PLAYREC)
{
p=g_aHSHint[5]; //"正在对比:录音播放......",
}
else
{
p=g_aHSHint[6]; //"正在对比:原音播放......",
}
}
else if (g_RrParam.wSndMode&APHS_JUMP)
{
p=g_aHSHint[5]; //"正在跳查......",
}
else
{ // Play or NONE
if (g_RrParam.wRptMode&RR_MODE_MANUAL)
{ // A-B Mode
p=g_aHSHint[1];
}
else
{ // Auto Mode
if (g_RrParam.wSndMode&APHS_SOUND_PLAY)
{
p=g_aHSHint[2]; //"正在播放......",
}
}
}
if (p==g_aHSHint[1])
{
if ( (g_RrParam.wTmABSetFlag&APHS_TMA_SET)
&&(!(g_RrParam.wTmABSetFlag&APHS_TMB_SET) ) )
{ // if A is set but B is Not
p=g_aHSHint[7]; //"请按\"B\"设置复读点",
}
else
{
if ( (g_RrParam.wTmABSetFlag&APHS_TMA_SET)
&&(g_RrParam.wTmABSetFlag&APHS_TMB_SET) )
{
p=g_aHSHint[0]; //""
}
}
}
// for hint
if ( (g_RrParam.pHint) && (g_RrParam.wHintCnt) )
{
p=g_RrParam.pHint; // HInt Message
}
// if no message is show
if (*p==0)
{
if (g_RrParam.wRptMode& RR_MODE_AUTOMATIC)
{
p=g_aHSHint[8]; // "模式: 自动"
}
else
{
p=g_aHSHint[9]; // "模式: A-B"
}
}
{
UINT16 wPenStyle;
wPenStyle=GraphSetPenStyle(PS_DOT);
GraphDrawLine( 0, HEARSAY_HINT_T2Y,
LCD_SCREEN_WIDTH-1,
HEARSAY_HINT_T2Y);
GraphSetPenStyle(wPenStyle);
}
GraphDrawIcon(0,HEARSAY_HINT_T2Y+1,
0,0,(UINT8*)MAKE_ID(IDB_NOTICE) );
x=(LCD_SCREEN_WIDTH-IDB_NOTICE_W-FontGetStringWidth (FontGetLib(),(UINT8*)p));
if( x<0)
{
x=0;
}
x /=2;
x += IDB_NOTICE_W;
GraphDrawText(x,HEARSAY_HINT_T2Y+3,0,0,(UINT8*)p);
GraphEnableRefresh();
}
#endif
/*--------------------------------------------------------------------------*/
/* DRAW 播放的进度条 等 */
INT HearSayDraw_ProBar ( APGUI_STRUCT *pGui, UINT uEvent, UINT uParam )
{
//UINT32 dwBrush;
INT i,j;
UINT16 wAscii;
GraphDisableRefresh();
//Draw area 进度条
GraphDrawIcon(HEARSAY_HINT_LX+8,HEARSAY_HINT_LY+HEARSAY_HINT_H_DY+2,
0,0,(UINT8*)MAKE_ID(IDB_LINEING) ); //wlchen
//=================================
// Draw the "A" and "B"
//=================================
ApHSGetStepAB();
if (g_RrParam.wRptMode & RR_MODE_MANUAL)
{
wAscii = FontGetAsciiWidth( FontGetLib(),'A');
i=j=HEARSAY_HINT_TX;
i = i+g_RrParam.wStepA;
if(g_RrParam.wTmABSetFlag&APHS_TMA_SET)
{
GraphDrawLine(i,HEARSAY_HINT_BY+HEARSAY_HINT_H_DY,i,HEARSAY_HINT_BY+HEARSAY_HINT_H_DY+3);
GraphDrawText(i-wAscii/2,
HEARSAY_HINT_TY+HEARSAY_HINT_H_DY+HEARSAY_HINT_TDY,
0,0,(UINT8*)"A");
}
if (g_RrParam.wTmABSetFlag&APHS_TMB_SET)
{
j += g_RrParam.wStepB ;
if (j < (i+2) )
{
j = i+1;
}
GraphDrawLine(j ,HEARSAY_HINT_BY+HEARSAY_HINT_H_DY,j,HEARSAY_HINT_BY+HEARSAY_HINT_H_DY+3);
j = HEARSAY_HINT_TX +HEARSAY_HINT_TDX+ g_RrParam.wStepB;
if (j < (wAscii+i) )
{
j +=wAscii;
}
GraphDrawText(j-wAscii/2,
HEARSAY_HINT_TY+HEARSAY_HINT_H_DY+HEARSAY_HINT_TDY,
0,0,(UINT8*)"B");
}
}
//-----------------------------------------------------------------
// YouBiao Bar 进度条上移动的图标
i=g_RrParam.aPlay[0].wStep;
GraphDrawIcon(HEARSAY_HINT_LX+8,HEARSAY_HINT_LY+HEARSAY_HINT_H_DY+2,i+28,5,MAKE_ID(IDB_LINEING1) );
GraphDrawIcon(/*HEARSAY_HINT_BX+i*/28+i,HEARSAY_HINT_BY+2+HEARSAY_HINT_H_DY,
0,0,(UINT8*)MAKE_ID(IDB_DOT ) );
//===============================================
// Draw Hint Area
//__HearSayDraw_ProBarHInt();
//--------------------------------------------------------
// Draw bottom line up YouBiao
GraphDrawLine(0,HEARSAY_HINT_TOTALY,
LCD_SCREEN_WIDTH-1,HEARSAY_HINT_TOTALY);
//--------------------------------------------------------
//画 播放 停止 复读 跳查 上面的两条线
{
i=300;
GraphDrawLine( 0, i,LCD_SCREEN_WIDTH-1,i);
GraphSetPenStyle(PS_DOT);
GraphDrawLine( 0, i+2,LCD_SCREEN_WIDTH-1,i+2);
GraphSetPenStyle(PS_SOLID);
}
GraphEnableRefresh();
return 1;
}
/****************************************************************************/
/* FUNCTION: INT HearSayEvent_TimerPolling( APGUI_STRUCT *pGui, */
/* UINT uEvent, UINT uParam ) */
/* DESCRIPTION:HearSay应用显示事件处理 */
/* INPUTS: NONE */
/* OUTPUTS: NONE */
/* RETURN: 运行显示事件的返回值 */
/****************************************************************************/
/* NAME DATE REMARKS */
/* ========== ============ ==============================================*/
/* DennyHan 2006-03-14 V1.00B */
/****************************************************************************/
INT HearSayEvent_TimerPolling( APGUI_STRUCT *pGui, UINT uEvent, UINT uParam )
{
INT nRet=1; // Always return 0. because it is the system time tick
BOOL bFlag=FALSE;
TimerStopTimer(g_RrParam.hTimer);
if (g_RrParam.wSndMode & APHS_FOLLOW)
{
if (g_RrParam.wSndMode & APHS_SOUND_PLAY)
{
ApHsGetPlayTm(0);
if (g_RrParam.aPlay[0].dwPlayTm >= g_RrParam.dwRptTmB)
{
uParam=CMD_HS_FOLLOW_PLAYREC;
nRet=HearSayEvent_C3 (pGui,EVENT_COMMAND,uParam);
}
}
}
else if (g_RrParam.wSndMode & APHS_REPEAT)
{
ApHsGetPlayTm(0);
if (g_RrParam.dwRptTmB < g_RrParam.aPlay[0].dwTotalTm)
{
if (g_RrParam.aPlay[0].dwPlayTm>=g_RrParam.dwRptTmB)
{
uParam=CMD_HS_RPT_MORE;
nRet = HearSayEvent_C2(pGui,EVENT_COMMAND,uParam);
}
}
}
if (g_RrParam.wHintCnt)
{
g_RrParam.wHintCnt--;
bFlag=TRUE;
}
if (ApHsSndIsBusy())
{
ApHsGetPlayTm(ApHSGetCurrentPlayMode());
if (!g_RrParam.wSkipMstCnt)
{
ApHsSetTextOffset();
}
else
{
g_RrParam.wSkipMstCnt--;
}
bFlag=TRUE;
}
if (bFlag)
{
MsgPost( (APGUI_STRUCT_MODEL *)pGui, EVENT_DRAW, 0);
}
TimerResetTimer(g_RrParam.hTimer,APHS_TIMERID, APHS_TIMER_LEN );
return nRet;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -