update for HEAD-2003091401
[reactos.git] / apps / tests / capclock / capclock.c
diff --git a/apps/tests/capclock/capclock.c b/apps/tests/capclock/capclock.c
new file mode 100644 (file)
index 0000000..7701af0
--- /dev/null
@@ -0,0 +1,69 @@
+/* $Id$
+ *
+ * DESCRIPTION: Simple Win32 Caption Clock
+ * PROJECT    : ReactOS (test applications)
+ * AUTHOR     : Emanuele Aliberti
+ * DATE       : 2003-09-03
+ * LICENSE    : GNU GPL v2.0
+ */
+#include <windows.h>
+
+UINT Timer = 1;
+
+static BOOL CALLBACK DialogFunc(HWND,UINT,WPARAM,LPARAM);
+static VOID CALLBACK TimerProc(HWND,UINT,UINT,DWORD);
+
+
+INT STDCALL WinMain (HINSTANCE hinst, HINSTANCE hinstPrev, LPSTR lpCmdLine, INT nCmdShow)
+{
+       WNDCLASS wc;
+
+       ZeroMemory (& wc, sizeof wc);
+       wc.lpfnWndProc    = DefDlgProc;
+       wc.cbWndExtra     = DLGWINDOWEXTRA;
+       wc.hInstance      = hinst;
+       wc.hCursor        = LoadCursor(NULL, IDC_ARROW);
+       wc.hbrBackground  = (HBRUSH) (COLOR_WINDOW + 1);
+       wc.lpszClassName  = "CapClock";
+       RegisterClass (& wc);
+       return DialogBox(hinst, MAKEINTRESOURCE(2), NULL, (DLGPROC) DialogFunc);
+
+}
+static int InitializeApp (HWND hDlg,WPARAM wParam, LPARAM lParam)
+{
+       Timer = SetTimer (hDlg,Timer,1000,TimerProc);
+       TimerProc (hDlg,0,0,0);
+       return 1;
+}
+static BOOL CALLBACK DialogFunc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
+{
+       switch (msg)
+       {
+       case WM_INITDIALOG:
+               InitializeApp(hwndDlg,wParam,lParam);
+               return TRUE;
+       case WM_CLOSE:
+               KillTimer (hwndDlg,Timer);
+               EndDialog(hwndDlg,0);
+               return TRUE;
+       }
+       return FALSE;
+}
+static VOID CALLBACK TimerProc (HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime)
+{
+       CHAR text [20];
+       SYSTEMTIME lt;
+
+       GetLocalTime (& lt);
+       wsprintf (
+               text,
+               "%d-%02d-%02d %02d:%02d:%02d",
+               lt.wYear,
+               lt.wMonth,
+               lt.wDay,
+               lt.wHour,
+               lt.wMinute,
+               lt.wSecond);
+       SetWindowText (hwnd, text);
+}
+/* EOF */