/*
* Directory names
*/
-static cptr ANGBAND_DIR_XTRA_FONT;
static cptr ANGBAND_DIR_XTRA_GRAF;
static cptr ANGBAND_DIR_XTRA_SOUND;
-static cptr ANGBAND_DIR_XTRA_MUSIC;
static cptr ANGBAND_DIR_XTRA_HELP;
+#ifndef JP
+static cptr ANGBAND_DIR_XTRA_FONT;
+#endif
+#ifdef USE_MUSIC
+static cptr ANGBAND_DIR_XTRA_MUSIC;
+#endif
/*
#endif
/* bg */
-static void delete_bg()
+static void delete_bg(void)
{
if (hBG != NULL)
{
}
}
-static int init_bg()
+static int init_bg(void)
{
char * bmfile = bg_bitmap_file;
int i, j;
delete_bg();
-
+
wnddc = GetDC(hwnd);
dcimage = CreateCompatibleDC(wnddc);
dcbg = CreateCompatibleDC(wnddc);
-
+
bmimage = LoadImage(NULL, "bg.bmp", LR_LOADFROMFILE, 0, 0, 0);
if (!bmimage) quit("bg.bmp¤¬Æɤߤ³¤á¤Ê¤¤¡ª");
bmimage_old = SelectObject(dcimage, bmimage);
-
+
CreateCompatibleBitmap();
ReleaseDC(hwnd, wnddc);
DeleteDC(hdcSrc);
}
+#if 0
/*
* Hack -- given a pathname, point at the filename
*/
/* Return file name */
return (p+1);
}
+#endif
/*
/* Resize the window */
SetWindowPos(td->w, 0, 0, 0,
- td->size_wid, td->size_hgt,
- SWP_NOMOVE | SWP_NOZORDER);
+ td->size_wid, td->size_hgt,
+ SWP_NOMOVE | SWP_NOZORDER);
/* Redraw later */
InvalidateRect(td->w, NULL, TRUE);
if (!td->font_id) return (1);
#else
td->font_id = CreateFont(hgt, wid, 0, 0, FW_DONTCARE, 0, 0, 0,
- ANSI_CHARSET, OUT_DEFAULT_PRECIS,
- CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
- FIXED_PITCH | FF_DONTCARE, base);
+ ANSI_CHARSET, OUT_DEFAULT_PRECIS,
+ CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
+ FIXED_PITCH | FF_DONTCARE, base);
#endif
term_data *td = &data[i];
/* Update resized windows */
- if ((td->cols != td->t.wid) || (td->rows != td->t.hgt))
+ if ((td->cols != (uint)td->t.wid) || (td->rows != (uint)td->t.hgt))
{
/* Activate */
Term_activate(&td->t);
rc.top = y * tile_hgt + td->size_oh1;
rc.bottom = rc.top + tile_hgt;
-#ifdef JP
- if (x + 1 < Term->wid &&
- ((use_bigtile && Term->old->a[y][x+1] == 255)
- || (iskanji(Term->old->c[y][x]) && !(Term->old->a[y][x] & 0x80))))
-#else
- if (use_bigtile && x + 1 < Term->wid && Term->old->a[y][x+1] == 255)
-#endif
- rc.right += tile_wid;
+ /* Cursor is done as a yellow "box" */
+ hdc = GetDC(td->w);
+ FrameRect(hdc, &rc, hbrYellow);
+ ReleaseDC(td->w, hdc);
+
+ /* Success */
+ return 0;
+}
+
+
+/*
+ * Low level graphics (Assumes valid input).
+ *
+ * Draw a "big cursor" at (x,y), using a "yellow box".
+ */
+static errr Term_bigcurs_win(int x, int y)
+{
+ term_data *td = (term_data*)(Term->data);
+
+ RECT rc;
+ HDC hdc;
+
+ int tile_wid, tile_hgt;
+
+ if (td->map_active)
+ {
+ /* Normal cursor in map window */
+ Term_curs_win(x, y);
+ return 0;
+ }
+ else
+ {
+ tile_wid = td->tile_wid;
+ tile_hgt = td->tile_hgt;
+ }
+
+ /* Frame the grid */
+ rc.left = x * tile_wid + td->size_ow1;
+ rc.right = rc.left + 2 * tile_wid;
+ rc.top = y * tile_hgt + td->size_oh1;
+ rc.bottom = rc.top + tile_hgt;
/* Cursor is done as a yellow "box" */
hdc = GetDC(td->w);
rc.right += td->font_wid;
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_CLIPPED, &rc,
- s+i, 2, NULL);
+ s+i, 2, NULL);
rc.right -= td->font_wid;
/* Advance */
} else {
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_CLIPPED, &rc,
- s+i, 1, NULL);
+ s+i, 1, NULL);
/* Advance */
rc.left += td->tile_wid;
#else
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, 0, &rc,
- s+i, 1, NULL);
+ s+i, 1, NULL);
/* Advance */
rc.left += td->tile_wid;
{
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_OPAQUE | ETO_CLIPPED, &rc,
- s, n, NULL);
+ s, n, NULL);
}
/* Release DC */
t->user_hook = Term_user_win;
t->xtra_hook = Term_xtra_win;
t->curs_hook = Term_curs_win;
+ t->bigcurs_hook = Term_bigcurs_win;
t->wipe_hook = Term_wipe_win;
t->text_hook = Term_text_win;
t->pict_hook = Term_pict_win;
/* Main window (need these before term_getsize gets called) */
td = &data[0];
td->dwStyle = (WS_OVERLAPPED | WS_THICKFRAME | WS_SYSMENU |
- WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_CAPTION |
- WS_VISIBLE);
+ WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_CAPTION |
+ WS_VISIBLE);
td->dwExStyle = 0;
td->visible = TRUE;
#ifdef JP
strncpy(td->lf.lfFaceName, td->font_want, LF_FACESIZE);
- td->lf.lfHeight = td->tile_hgt;
- td->lf.lfWidth = td->tile_wid;
td->lf.lfCharSet = SHIFTJIS_CHARSET;
td->lf.lfPitchAndFamily = FIXED_PITCH | FF_DONTCARE;
/* Activate the chosen font */
my_td = td;
td->w = CreateWindowEx(td->dwExStyle, AngList,
- td->s, td->dwStyle,
- td->pos_x, td->pos_y,
- td->size_wid, td->size_hgt,
- HWND_DESKTOP, NULL, hInstance, NULL);
+ td->s, td->dwStyle,
+ td->pos_x, td->pos_y,
+ td->size_wid, td->size_hgt,
+ HWND_DESKTOP, NULL, hInstance, NULL);
my_td = NULL;
#ifdef JP
if (!td->w) quit("¥µ¥Ö¥¦¥£¥ó¥É¥¦¤ËºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿");
/* Main window */
my_td = td;
td->w = CreateWindowEx(td->dwExStyle, AppName,
- td->s, td->dwStyle,
- td->pos_x, td->pos_y,
- td->size_wid, td->size_hgt,
- HWND_DESKTOP, NULL, hInstance, NULL);
+ td->s, td->dwStyle,
+ td->pos_x, td->pos_y,
+ td->size_wid, td->size_hgt,
+ HWND_DESKTOP, NULL, hInstance, NULL);
my_td = NULL;
#ifdef JP
if (!td->w) quit("¥á¥¤¥ó¥¦¥£¥ó¥É¥¦¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿");
/* Menu "File", Disable all */
EnableMenuItem(hm, IDM_FILE_NEW,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_OPEN,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_SAVE,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_EXIT,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_SCORE,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
/* No character available */
{
/* Menu "File", Item "Save" */
EnableMenuItem(hm, IDM_FILE_SAVE,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
/* Menu "File", Item "Exit" */
EnableMenuItem(hm, IDM_FILE_EXIT,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
EnableMenuItem(hm, IDM_FILE_SCORE,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
/* Menu "Window::Visibility" */
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
CheckMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- (data[i].visible ? MF_CHECKED : MF_UNCHECKED));
+ (data[i].visible ? MF_CHECKED : MF_UNCHECKED));
EnableMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
/* Menu "Window::Font" */
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_FONT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_FONT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_POS_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
CheckMenuItem(hm, IDM_WINDOW_POS_0 + i,
- (data[i].posfix ? MF_CHECKED : MF_UNCHECKED));
+ (data[i].posfix ? MF_CHECKED : MF_UNCHECKED));
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_POS_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
CheckMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- (data[i].bizarre ? MF_CHECKED : MF_UNCHECKED));
+ (data[i].bizarre ? MF_CHECKED : MF_UNCHECKED));
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_I_WID_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_I_WID_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_D_WID_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_D_WID_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_I_HGT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_I_HGT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_D_HGT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_D_HGT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
/* Menu "Options", disable all */
EnableMenuItem(hm, IDM_OPTIONS_NO_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_BIGTILE,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_SOUND,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
#ifndef JP
EnableMenuItem(hm, IDM_OPTIONS_SAVER,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
#endif
/* Menu "Options", Item "Map" */
EnableMenuItem(GetMenu(data[0].w), IDM_OPTIONS_MAP, MF_BYCOMMAND | MF_ENABLED);
else
EnableMenuItem(GetMenu(data[0].w), IDM_OPTIONS_MAP,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
/* Menu "Options", update all */
CheckMenuItem(hm, IDM_OPTIONS_NO_GRAPHICS,
- (arg_graphics == GRAPHICS_NONE ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_NONE ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS,
- (arg_graphics == GRAPHICS_ORIGINAL ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_ORIGINAL ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
- (arg_graphics == GRAPHICS_ADAM_BOLT ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_ADAM_BOLT ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_BIGTILE,
- (arg_bigtile ? MF_CHECKED : MF_UNCHECKED));
+ (arg_bigtile ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_SOUND,
- (arg_sound ? MF_CHECKED : MF_UNCHECKED));
+ (arg_sound ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_BG,
- (use_bg ? MF_CHECKED : MF_UNCHECKED));
+ (use_bg ? MF_CHECKED : MF_UNCHECKED));
#ifndef JP
CheckMenuItem(hm, IDM_OPTIONS_SAVER,
- (hwndSaver ? MF_CHECKED : MF_UNCHECKED));
+ (hwndSaver ? MF_CHECKED : MF_UNCHECKED));
#endif
#ifdef USE_GRAPHICS
#ifdef USE_SAVER
/* Menu "Options", Item "ScreenSaver" */
EnableMenuItem(hm, IDM_OPTIONS_SAVER,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
#endif /* USE_SAVER */
}
{
/* Create a screen scaver window */
hwndSaver = CreateWindowEx(WS_EX_TOPMOST, "WindowsScreenSaverClass",
- "Angband Screensaver",
- WS_POPUP | WS_MAXIMIZE | WS_VISIBLE,
- 0, 0, GetSystemMetrics(SM_CXSCREEN),
- GetSystemMetrics(SM_CYSCREEN),
- NULL, NULL, hInstance, NULL);
+ "Angband Screensaver",
+ WS_POPUP | WS_MAXIMIZE | WS_VISIBLE,
+ 0, 0, GetSystemMetrics(SM_CXSCREEN),
+ GetSystemMetrics(SM_CYSCREEN),
+ NULL, NULL, hInstance, NULL);
if (hwndSaver)
{
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
PAINTSTRUCT ps;
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
term_data *td;
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
static int iMouse = 0;
{
#ifdef JP
MessageBox(NULL, str, "·Ù¹ð¡ª",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#else
MessageBox(NULL, str, "Warning",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#endif
}
{
#ifdef JP
MessageBox(NULL, str, "¥¨¥é¡¼¡ª",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#else
MessageBox(NULL, str, "Error",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#endif
}
{
#ifdef JP
MessageBox(data[0].w, str, "·Ù¹ð¡ª",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#else
MessageBox(data[0].w, str, "Warning",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#endif
}
{
#ifdef JP
MessageBox(data[0].w, str, "¥¨¥é¡¼¡ª",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#else
MessageBox(data[0].w, str, "Error",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#endif
}
int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
- LPSTR lpCmdLine, int nCmdShow)
+ LPSTR lpCmdLine, int nCmdShow)
{
int i;