/*------------------------------------------------ set settings of a timer to the dialog --------------------------------------------------*/ void SetTimerToDlg(HWND hDlg, const TIMERSTRUCT *pitem) { TIMERSTRUCT item; if(!pitem) { memset(&item, 0, sizeof(TIMERSTRUCT)); item.nDispType = 1; pitem = &item; } SetDlgItemText(hDlg, IDC_TIMERNAME, pitem->name); SetDlgItemInt(hDlg, IDC_TIMERMINUTE, pitem->minute, FALSE); SetDlgItemInt(hDlg, IDC_TIMERSECOND, pitem->second, FALSE); SetDlgItemText(hDlg, IDC_TIMERFILE, pitem->fname); CheckDlgButton(hDlg, IDC_TIMERREPEAT, pitem->bRepeat); CheckDlgButton(hDlg, IDC_TIMERBLINK, pitem->bBlink); CheckDlgButton(hDlg, IDC_SHOWTIME, pitem->bDisp); if(pitem->nDispType == 0) CheckRadioButton(hDlg, IDC_SHOWWHOLE, IDC_SHOWUSTR, IDC_SHOWWHOLE); else if(pitem->nDispType == 2) CheckRadioButton(hDlg, IDC_SHOWWHOLE, IDC_SHOWUSTR, IDC_SHOWUSTR); else CheckRadioButton(hDlg, IDC_SHOWWHOLE, IDC_SHOWUSTR, IDC_SHOWADD); SetDlgItemInt(hDlg, IDC_SHOWUSTRNUM, pitem->nUserStr, FALSE); OnShowTime(hDlg); }
/*------------------------------------------- initialize main dialog ---------------------------------------------*/ void OnInit(HWND hDlg) { HICON hIcon; // common/tclang.c SetDialogLanguage(hDlg, "Player", g_hfontDialog); hIcon = LoadIcon(g_hInst, MAKEINTRESOURCE(IDI_TCLOCK)); SendMessage(hDlg, WM_SETICON, ICON_BIG, (LPARAM)hIcon); // common/dialog.c SetMyDialgPos(hDlg, 32, 32); CheckDlgButton(hDlg, IDC_SHOWTIME, GetMyRegLong(m_section, "Disp", FALSE)); CheckRadioButton(hDlg, IDC_SHOWWHOLE, IDC_SHOWUSTR, IDC_SHOWWHOLE + GetMyRegLong(m_section, "DispType", 1)); SetDlgItemInt(hDlg, IDC_SHOWUSTRNUM, GetMyRegLong(m_section, "UserStr", 0), FALSE); OnShowTime(hDlg); }
/*------------------------------------------- dialog procedure ---------------------------------------------*/ INT_PTR CALLBACK DlgProcPlayer(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_INITDIALOG: OnInit(hDlg); return TRUE; case WM_COMMAND: { int id; //, code; id = LOWORD(wParam); // code = HIWORD(wParam); switch(id) { case IDC_SHOWTIME: OnShowTime(hDlg); break; case IDC_SHOWWHOLE: case IDC_SHOWADD: case IDC_SHOWUSTR: OnUserStr(hDlg); break; case IDOK: OnOK(hDlg); break; case IDCANCEL: OnCancel(hDlg); break; case IDC_PLAYERHELP: OnHelp(hDlg); break; } return TRUE; } } return FALSE; }
/*------------------------------------------- dialog procedure ---------------------------------------------*/ INT_PTR CALLBACK DlgProcTimer(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_INITDIALOG: OnInit(hDlg); return TRUE; case WM_COMMAND: { int id, code; id = LOWORD(wParam); code = HIWORD(wParam); switch(id) { case IDC_TIMERNAME: if(code == CBN_SELCHANGE) OnName(hDlg); else if(code == CBN_DROPDOWN) OnNameDropDown(hDlg); break; case IDC_TIMERADD: OnAdd(hDlg); break; case IDC_TIMERDEL: OnDelete(hDlg); break; case IDC_TIMERSANSHO: OnBrowse(hDlg); break; case IDC_TIMERTEST: OnTest(hDlg); break; case IDC_SHOWTIME: OnShowTime(hDlg); break; case IDC_SHOWWHOLE: case IDC_SHOWADD: case IDC_SHOWUSTR: OnUserStr(hDlg); break; case IDOK: OnOK(hDlg); break; case IDCANCEL: OnCancel(hDlg); break; case IDC_TIMERHELP: OnHelp(hDlg); break; } return TRUE; } // playing sound ended case MM_MCINOTIFY: case MM_WOM_DONE: if(message == MM_MCINOTIFY) OnMCINotify(hDlg, wParam, (LONG)lParam); else StopFile(); m_bPlaying = FALSE; SendDlgItemMessage(hDlg, IDC_TIMERTEST, BM_SETIMAGE, IMAGE_ICON, (LPARAM)g_hIconPlay); return TRUE; case WM_DESTROY: OnDestroy(hDlg); break; } return FALSE; }