📄 psl_process_key.cpp
字号:
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeHour / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeHour % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][1], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][1]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TIME_MIN)
{
/* Increment the minute number */
if (pPSL->pStatusMenu->StatusInfo.usTimeMin >= 99)
{
pPSL->pStatusMenu->StatusInfo.usTimeMin = 0;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTimeMin++;
}
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeMin / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeMin % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][3], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][3]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TIME_SEC)
{
/* Increment the second number */
if (pPSL->pStatusMenu->StatusInfo.usTimeSec >= 99)
{
pPSL->pStatusMenu->StatusInfo.usTimeSec = 0;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTimeSec++;
}
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeSec / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeSec % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][5], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][5]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuUp: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
return (PSL_SUCCESS);
}
/**
* PslProcessKeyStatusMenuDown -- Process the down command for status menu
*
* @param
* pPSL - handle to internal PSL data
*
* @retval
* PSL_SUCCESS if successful
* PSL_FAILURE if not successful
*/
PSL_STATUS PslProcessKeyStatusMenuDown(PSL_HANDLE *pPSL)
{
char cTmp[5];
/* Check for a valid psl handle */
if (pPSL == NULL)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: NULL pointer!\n"));
return (PSL_NULL_POINTER);
}
/* check for valid status menu data */
if (pPSL->pStatusMenu == NULL)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: status menu not created!\n"));
return (PSL_FAILURE);
}
/* Process the down command for any search modes */
if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TITLE)
{
/* Decrement the title number */
if (pPSL->pStatusMenu->StatusInfo.usTitle == 0)
{
pPSL->pStatusMenu->StatusInfo.usTitle = 99;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTitle--;
}
/* convert title number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTitle / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTitle % 10);
cTmp[2] = '\0';
/* set title setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[4][1], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the title number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[4][1]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_CHAPTER)
{
/* Decrement the chapter number */
if (pPSL->pStatusMenu->StatusInfo.usChapter == 0)
{
pPSL->pStatusMenu->StatusInfo.usChapter = 99;
}
else
{
pPSL->pStatusMenu->StatusInfo.usChapter--;
}
/* convert chapter number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usChapter / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usChapter % 10);
cTmp[2] = '\0';
/* set chapter setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[5][1], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the chapter number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[5][1]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TIME_HOUR)
{
/* Decrement the hour time number */
if (pPSL->pStatusMenu->StatusInfo.usTimeHour == 0)
{
pPSL->pStatusMenu->StatusInfo.usTimeHour = 99;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTimeHour--;
}
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeHour / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeHour % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][1], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][1]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TIME_MIN)
{
/* Decrement the minute number */
if (pPSL->pStatusMenu->StatusInfo.usTimeMin == 0)
{
pPSL->pStatusMenu->StatusInfo.usTimeMin = 99;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTimeMin--;
}
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeMin / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeMin % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][3], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][3]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
else if (pPSL->pStatusMenu->tCurrentMode == PSL_STATUS_MODE_SEARCH_TIME_SEC)
{
/* Decrement the second number */
if (pPSL->pStatusMenu->StatusInfo.usTimeSec == 0)
{
pPSL->pStatusMenu->StatusInfo.usTimeSec = 99;
}
else
{
pPSL->pStatusMenu->StatusInfo.usTimeSec--;
}
/* convert time number to string */
cTmp[0] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeSec / 10);
cTmp[1] = '0' + (pPSL->pStatusMenu->StatusInfo.usTimeSec % 10);
cTmp[2] = '\0';
/* set time setting text */
if (PslScreenLayoutSetButtonText(&pPSL->pStatusMenu->pButton[6][5], cTmp) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure setting button text!\n"));
return (PSL_FAILURE);
}
/* redraw the button with the time number */
if (PslScreenLayoutDrawButton(&pPSL->pStatusMenu->pButton[6][5]) != PSL_SUCCESS)
{
DBGPRINT(DBG_ON(DBG_ERROR), ("PslProcessKeyStatusMenuDown: failure drawing button!\n"));
return (PSL_FAILURE);
}
/* copy draw buffer to display buffer */
DealCMBufferCopy(pPSL->pStatusMenu->hDeal, DEAL_BUFFER_DRAW, DEAL_BUFFER_DISPLAY);
}
return (PSL_SUCCESS);
}
/**
* PslProcessKeyStatusMenuLeft -- Process the left command for status menu
*
* @param
* pPSL - handle to internal PSL data
*
* @retval
* PSL_SUCCESS if
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -