home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2002 December (Special) / DOSV2002_12.iso / utility / tcl230ja95.lzh / source.lzh / exe / tclock.h < prev    next >
C/C++ Source or Header  |  2001-02-15  |  7KB  |  184 lines

  1. /*-------------------------------------------
  2.   tclock.h
  3.       KAZUBON  1997-1999
  4. ---------------------------------------------*/
  5.  
  6. #define _WIN32_IE 0x0300
  7.  
  8. #include <windows.h>
  9. #include <windowsx.h>
  10. #include <mmsystem.h>
  11. #include <shlobj.h>
  12. #include "resource.h"
  13. #include "../language/resource.h"
  14.  
  15. // ランタイム関数代用
  16. #define malloc(s) GlobalAllocPtr(GHND,(s))
  17. #define free(p) GlobalFreePtr(p);
  18. int atoi(const char *p);
  19. int _strnicmp(const char* d, const char* s, size_t n);
  20. int _stricmp(const char* d, const char* s);
  21.  
  22. #define IDTIMER_MOUSE 4
  23.  
  24. // messages to send the clock
  25. #define CLOCKM_REFRESHCLOCK   (WM_USER+1)
  26. #define CLOCKM_REFRESHTASKBAR (WM_USER+2)
  27. #define CLOCKM_BLINK          (WM_USER+3)
  28. #define CLOCKM_COPY           (WM_USER+4)
  29.  
  30. // for mouse.c and pagemouce.c
  31. #define MOUSEFUNC_NONE       -1
  32. #define MOUSEFUNC_DATETIME    0
  33. #define MOUSEFUNC_EXITWIN     1
  34. #define MOUSEFUNC_RUNAPP      2
  35. #define MOUSEFUNC_MINALL      3
  36. #define MOUSEFUNC_SYNCTIME    4
  37. #define MOUSEFUNC_TIMER       5
  38. #define MOUSEFUNC_CLIPBOARD   6
  39. #define MOUSEFUNC_SCREENSAVER 7
  40. #define MOUSEFUNC_OPENFILE    100
  41.  
  42. // main.c
  43. extern HINSTANCE g_hInst;           // instance handle
  44. extern HINSTANCE g_hInstResource;   // instance handle of language module
  45. extern HWND      g_hwndMain;        // main window
  46. extern HWND      g_hwndClock;       // clock window
  47. extern HWND      g_hwndSheet;       // property sheet window
  48. extern HWND      g_hDlgTimer;       // timer dialog
  49. extern HICON     g_hIconTClock, g_hIconPlay, g_hIconStop, g_hIconDel;
  50.                                     // icons to use frequently
  51. extern char      g_mydir[];         // path to tclock.exe
  52. extern char      g_langdllname[];   // language dll name
  53. HINSTANCE LoadLanguageDLL(char *fname); // load language dll
  54. HINSTANCE GetLangModule(void);      // instance handle of language dll
  55. void MyHelp(HWND hDlg, int id);     // show help
  56.  
  57. // propsheet.c
  58. extern BOOL g_bApplyClock;
  59. extern BOOL g_bApplyTaskbar;
  60. extern BOOL g_bApplyLangDLL;
  61. void MyPropertySheet(void);
  62. BOOL SelectMyFile(HWND hDlg, const char *filter, DWORD nFilterIndex,
  63.     const char *deffile, char *retfile);
  64.  
  65. // alarm.c
  66. void InitAlarm(void);
  67. void CheckAlarm(HWND hwnd, SYSTEMTIME* st);
  68. void EndAlarm(void);
  69. BOOL PlayFile(HWND hwnd, char *fname, DWORD dwLoops);
  70. void StopFile(void);
  71. void OnMCINotify(HWND hwnd);
  72. void GetFileAndOption(const char* command, char* fname, char* opt);
  73. BOOL ExecFile(HWND hwnd, char* command);
  74.  
  75. // alarmday.c
  76. int SetAlarmDay(HWND hDlg, int n);
  77.  
  78. // soundselect.c
  79. BOOL BrowseSoundFile(HWND hDlg, const char *deffile, char *fname);
  80. BOOL IsMMFile(const char* fname);
  81.  
  82. // pageformat.c
  83. void InitFormat(void);
  84. void CreateFormat(char* s, int* checks);
  85.  
  86. // menu.c
  87. void OnContextMenu(HWND hwnd, HWND hwndClicked, int xPos, int yPos);
  88. void OnTClockCommand(HWND hwnd, WORD wID, WORD wCode);
  89.  
  90. // mouse.c
  91. void InitMouseFunction(void);
  92. void OnDropFiles(HWND hwnd, HDROP hdrop);
  93. void OnMouseMsg(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
  94. void OnTimerMouse(HWND hwnd);
  95.  
  96. // deskcal.c
  97. BOOL ExecDeskcal(HWND hwnd);
  98. BOOL ExecFile(HWND hwnd, char* command);
  99. void OnDeskcalTimer(HWND hwnd);
  100. void InitWatchWallpaper(void);
  101. void EndWatchWallpaper(void);
  102. void CheckWallpaper(HWND hwnd, SYSTEMTIME* pt);
  103.  
  104. // timer.c
  105. #define MAX_TIMER  20
  106.  
  107. void DialogTimer(HWND hwnd);
  108. void CheckTimer(HWND hwnd, SYSTEMTIME* st);
  109. void EndTimer(void);
  110. int GetTimerInfo(char *dst, int num);
  111. void StopTimer(HWND hwnd, int n);
  112.  
  113. // sntp.c
  114. BOOL InitSyncTime(HWND hwnd);
  115. void InitSyncTimeSetting(void);
  116. void EndSyncTime(HWND hwnd);
  117. void OnTimerSNTP(HWND hwnd, SYSTEMTIME* st);
  118. void StartSyncTime(HWND hwndParent, char* pServer, int nto);
  119.  
  120. // utl.c
  121. int atox(const char *p);
  122. void add_title(char *path, char* titile);
  123. void del_title(char *path);
  124. void get_title(char* dst, const char *path);
  125. int ext_cmp(const char *fname, const char *ext);
  126. void parse(char *dst, char *src, int n);
  127. void parsechar(char *dst, char *src, char ch, int n);
  128. void str0cat(char* dst, const char* src);
  129. char* MyString(UINT id);
  130. int MyMessageBox(HWND hwnd, char* msg, char* title, UINT uType, UINT uBeep);
  131. int GetLocaleInfoWA(int ilang, LCTYPE LCType, char* dst, int n);
  132. DWORDLONG M32x32to64(DWORD a, DWORD b);
  133. void SetForegroundWindow98(HWND hwnd);
  134. void WriteDebug(const char* s);
  135. int GetMyRegStr(char* section, char* entry, char* val, int cbData,
  136.     char* defval);
  137. LONG GetMyRegLong(char* section, char* entry, LONG defval);
  138. LONG GetRegLong(HKEY rootkey, char*subkey, char* entry, LONG defval);
  139. int GetRegStr(HKEY rootkey, char*subkey, char* entry,
  140.     char* val, int cbData, char* defval);
  141. BOOL SetMyRegStr(char* subkey, char* entry, char* val);
  142. BOOL SetRegStr(HKEY rootkey, char* subkey, char* entry, char* val);
  143. BOOL SetMyRegLong(char* subkey, char* entry, DWORD val);
  144. BOOL DelMyReg(char* subkey, char* entry);
  145. BOOL DelMyRegKey(char* subkey);
  146.  
  147. // TCDLL.DLLのAPI
  148. void WINAPI HookStart(HWND hwnd);
  149. void WINAPI HookEnd(void);
  150.  
  151. // Macros
  152.  
  153. #define EnableDlgItem(hDlg,id,b) EnableWindow(GetDlgItem((hDlg),(id)),(b))
  154. #define ShowDlgItem(hDlg,id,b) ShowWindow(GetDlgItem((hDlg),(id)),(b)?SW_SHOW:SW_HIDE)
  155.  
  156. #define CBAddString(hDlg,id,lParam) SendDlgItemMessage((hDlg),(id),CB_ADDSTRING,0,(lParam))
  157. #define CBDeleteString(hDlg,id, i) SendDlgItemMessage((hDlg),(id),CB_DELETESTRING,(i),0)
  158. #define CBFindString(hDlg,id,s) SendDlgItemMessage((hDlg),(id),CB_FINDSTRING,0,(LPARAM)(s))
  159. #define CBFindStringExact(hDlg,id,s) SendDlgItemMessage((hDlg),(id),CB_FINDSTRINGEXACT,0,(LPARAM)(s))
  160. #define CBGetCount(hDlg,id) SendDlgItemMessage((hDlg),(id),CB_GETCOUNT,0,0)
  161. #define CBGetCurSel(hDlg,id) SendDlgItemMessage((hDlg),(id),CB_GETCURSEL,0,0)
  162. #define CBGetItemData(hDlg,id,i) SendDlgItemMessage((hDlg),(id),CB_GETITEMDATA,(i),0)
  163. #define CBGetLBText(hDlg,id,i,s) SendDlgItemMessage((hDlg),(id),CB_GETLBTEXT,(i),(LPARAM)(s))
  164. #define CBInsertString(hDlg,id,i,s) SendDlgItemMessage((hDlg),(id),CB_INSERTSTRING,(i),(LPARAM)(s))
  165. #define CBResetContent(hDlg,id) SendDlgItemMessage((hDlg),(id),CB_RESETCONTENT,0,0)
  166. #define CBSetCurSel(hDlg,id,i) SendDlgItemMessage((hDlg),(id),CB_SETCURSEL,(i),0)
  167. #define CBSetItemData(hDlg,id,i,lParam) SendDlgItemMessage((hDlg),(id),CB_SETITEMDATA,(i),(lParam))
  168.  
  169. // アラーム用構造体
  170. typedef struct _tagAlarmStruct
  171. {
  172.     char name[40];
  173.     BOOL bAlarm;
  174.     int hour;
  175.     int minute;
  176.     char fname[1024];
  177.     BOOL bHour12;
  178.     BOOL bRepeat;
  179.     BOOL bBlink;
  180.     int days;
  181. } ALARMSTRUCT;
  182. typedef ALARMSTRUCT* PALARMSTRUCT;
  183.  
  184.