smartphone keypad input tweaks (from <Someone>)
<Someone> wrote: > Some keypad input tweaks for Smartphone port: > - added "Type Cmd" command that allows to type arbitrary commands using > phone keypad > - added Q(quiver) command to "Attack" layout > - fixed F command to prompt for direction > > >>2) I can't find a way to do the equivalent of d<number><item> and the >>same for picking up (for example when multiple rations are on top of each >>other and you can only afford 1) >> >>3) I can't find a way to change the quiver (the Q command)
This commit is contained in:
+2
-2
@@ -203,7 +203,7 @@ NHCmdPadCell cells_layout_attack[NH_CMDPAD_CELLNUM] =
|
|||||||
{ -1, "a", "a", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "a", "a", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "q", "q", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "q", "q", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "\x04", "^D", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "\x04", "^D", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "F", "F", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "F", "F", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)NH_LAYOUT_MOVEMENT },
|
||||||
{ -1, "X", "X", 13, NH_CELL_LAYOUT_MENU, 1 , 0 }
|
{ -1, "X", "X", 13, NH_CELL_LAYOUT_MENU, 1 , 0 }
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -216,7 +216,7 @@ NHCmdPadCell cells_layout_item_handling[NH_CMDPAD_CELLNUM] =
|
|||||||
{ -1, "T", "T", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "T", "T", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "R", "R", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "R", "R", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "D", "D", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "D", "D", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "=", "=", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "Q", "Q", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "i", "i", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "i", "i", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "[", "[", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "[", "[", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
{ -1, "A", "A", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
{ -1, "A", "A", -NH_CMDPAD_FONT_NORMAL, NH_CELL_REG, 1, (void*)-1 },
|
||||||
|
|||||||
+33
-9
@@ -31,6 +31,7 @@ static void select_map_mode(int map_mode);
|
|||||||
static int menuid2mapmode(int menuid);
|
static int menuid2mapmode(int menuid);
|
||||||
static int mapmode2menuid(int map_mode);
|
static int mapmode2menuid(int map_mode);
|
||||||
static HMENU _get_main_menu(UINT menu_id);
|
static HMENU _get_main_menu(UINT menu_id);
|
||||||
|
static void mswin_direct_command();
|
||||||
|
|
||||||
HWND mswin_init_main_window () {
|
HWND mswin_init_main_window () {
|
||||||
static int run_once = 0;
|
static int run_once = 0;
|
||||||
@@ -915,6 +916,10 @@ LRESULT onWMCommand(HWND hWnd, WPARAM wParam, LPARAM lParam)
|
|||||||
doset();
|
doset();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case IDM_DIRECT_COMMAND: /* SmartPhone: display dialog to type in arbitary command text */
|
||||||
|
mswin_direct_command();
|
||||||
|
break;
|
||||||
|
|
||||||
case IDM_HELP_LONG:
|
case IDM_HELP_LONG:
|
||||||
display_file(HELP, TRUE);
|
display_file(HELP, TRUE);
|
||||||
break;
|
break;
|
||||||
@@ -1058,7 +1063,7 @@ void mswin_select_map_mode(int mode)
|
|||||||
/* update "Fit To Screen" item text */
|
/* update "Fit To Screen" item text */
|
||||||
{
|
{
|
||||||
TCHAR wbuf[BUFSZ];
|
TCHAR wbuf[BUFSZ];
|
||||||
TBBUTTONINFO tbbi;
|
MENUITEMINFO mi;
|
||||||
|
|
||||||
ZeroMemory( wbuf, sizeof(wbuf) );
|
ZeroMemory( wbuf, sizeof(wbuf) );
|
||||||
if( !LoadString(
|
if( !LoadString(
|
||||||
@@ -1069,15 +1074,17 @@ void mswin_select_map_mode(int mode)
|
|||||||
panic("cannot load main menu strings");
|
panic("cannot load main menu strings");
|
||||||
}
|
}
|
||||||
|
|
||||||
ZeroMemory( &tbbi, sizeof(tbbi) );
|
ZeroMemory( &mi, sizeof(mi) );
|
||||||
tbbi.cbSize = sizeof(tbbi);
|
mi.cbSize = sizeof(mi);
|
||||||
tbbi.dwMask = TBIF_TEXT;
|
mi.fType = MFT_STRING;
|
||||||
tbbi.pszText = wbuf;
|
mi.fMask = MIIM_TYPE;
|
||||||
if( !SendMessage(
|
mi.dwTypeData = wbuf;
|
||||||
GetNHApp()->hMenuBar,
|
mi.cch = wcslen(wbuf);
|
||||||
TB_SETBUTTONINFO,
|
if( !SetMenuItemInfo(
|
||||||
|
hmenuMap,
|
||||||
IDM_MAP_FIT_TO_SCREEN,
|
IDM_MAP_FIT_TO_SCREEN,
|
||||||
(LPARAM)&tbbi) ) {
|
FALSE,
|
||||||
|
&mi) ) {
|
||||||
error( "Cannot update IDM_MAP_FIT_TO_SCREEN menu item." );
|
error( "Cannot update IDM_MAP_FIT_TO_SCREEN menu item." );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1160,3 +1167,20 @@ HMENU _get_main_menu(UINT menu_id)
|
|||||||
return hmenuMap;
|
return hmenuMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* SmartPhone: display dialog to type arbitrary command text */
|
||||||
|
void mswin_direct_command()
|
||||||
|
{
|
||||||
|
char cmd[BUFSZ];
|
||||||
|
ZeroMemory(cmd, sizeof(cmd));
|
||||||
|
mswin_getlin("Type cmd text", cmd);
|
||||||
|
if( cmd[0] ) {
|
||||||
|
/* feed command to nethack */
|
||||||
|
char *p = cmd;
|
||||||
|
cmd[32] = '\x0'; /* truncate at 32 chars */
|
||||||
|
while(*p) {
|
||||||
|
NHEVENT_KBD(*p);
|
||||||
|
p++;
|
||||||
|
}
|
||||||
|
if( cmd[0]!='\033' ) mswin_putstr(WIN_MESSAGE, ATR_NONE, cmd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
//{{NO_DEPENDENCIES}}
|
//{{NO_DEPENDENCIES}}
|
||||||
// Microsoft Developer Studio generated include file.
|
// Microsoft Developer Studio generated include file.
|
||||||
// Used by winhack.rc
|
// Used by winhcksp.rc
|
||||||
//
|
//
|
||||||
#define IDC_MYICON 2
|
#define IDC_MYICON 2
|
||||||
#define IDD_WINHACK_DIALOG 102
|
#define IDD_WINHACK_DIALOG 102
|
||||||
@@ -146,13 +146,14 @@
|
|||||||
#define IDS_CAP_NORMALMAP 32827
|
#define IDS_CAP_NORMALMAP 32827
|
||||||
#define IDM_HELP_MENU 32828
|
#define IDM_HELP_MENU 32828
|
||||||
#define IDM_VIEW_OPTIONS 32829
|
#define IDM_VIEW_OPTIONS 32829
|
||||||
|
#define IDM_DIRECT_COMMAND 32830
|
||||||
|
|
||||||
// Next default values for new objects
|
// Next default values for new objects
|
||||||
//
|
//
|
||||||
#ifdef APSTUDIO_INVOKED
|
#ifdef APSTUDIO_INVOKED
|
||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 155
|
#define _APS_NEXT_RESOURCE_VALUE 155
|
||||||
#define _APS_NEXT_COMMAND_VALUE 32830
|
#define _APS_NEXT_COMMAND_VALUE 32831
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1334
|
#define _APS_NEXT_CONTROL_VALUE 1334
|
||||||
#define _APS_NEXT_SYMED_VALUE 110
|
#define _APS_NEXT_SYMED_VALUE 110
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -37,12 +37,13 @@ IDI_WINHACK ICON DISCARDABLE "..\\..\\wince\\NETHACK.ICO"
|
|||||||
|
|
||||||
IDC_WINHACK MENU DISCARDABLE
|
IDC_WINHACK MENU DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
MENUITEM "Entire Map", IDM_MAP_FIT_TO_SCREEN
|
MENUITEM "Type Cmd", IDM_DIRECT_COMMAND
|
||||||
POPUP "Menu"
|
POPUP "Menu"
|
||||||
BEGIN
|
BEGIN
|
||||||
MENUITEM "Options", IDM_VIEW_OPTIONS
|
MENUITEM "Options", IDM_VIEW_OPTIONS
|
||||||
MENUITEM "Keypad", IDM_VIEW_KEYPAD
|
MENUITEM "Keypad", IDM_VIEW_KEYPAD
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
|
MENUITEM "Entire Map", IDM_MAP_FIT_TO_SCREEN
|
||||||
MENUITEM "ASCII", IDM_MAP_ASCII8X8
|
MENUITEM "ASCII", IDM_MAP_ASCII8X8
|
||||||
MENUITEM "Use Tiles", IDM_MAP_TILES
|
MENUITEM "Use Tiles", IDM_MAP_TILES
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
@@ -232,7 +233,7 @@ END
|
|||||||
IDC_WINHACK SHMENUBAR DISCARDABLE
|
IDC_WINHACK SHMENUBAR DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDC_WINHACK, 2,
|
IDC_WINHACK, 2,
|
||||||
I_IMAGENONE, IDM_MAP_FIT_TO_SCREEN, TBSTATE_ENABLED, TBSTYLE_AUTOSIZE, IDM_MAP_FIT_TO_SCREEN, 0, NOMENU,
|
I_IMAGENONE, IDM_DIRECT_COMMAND, TBSTATE_ENABLED, TBSTYLE_AUTOSIZE, IDM_DIRECT_COMMAND, 0, NOMENU,
|
||||||
I_IMAGENONE, ID_VIEW, TBSTATE_ENABLED, TBSTYLE_DROPDOWN | TBSTYLE_AUTOSIZE, IDS_CAP_VIEW, 0, 1,
|
I_IMAGENONE, ID_VIEW, TBSTATE_ENABLED, TBSTYLE_DROPDOWN | TBSTYLE_AUTOSIZE, IDS_CAP_VIEW, 0, 1,
|
||||||
END
|
END
|
||||||
|
|
||||||
@@ -252,8 +253,8 @@ END
|
|||||||
//
|
//
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 3,4,1,0
|
FILEVERSION 3,5,0,0
|
||||||
PRODUCTVERSION 3,4,1,0
|
PRODUCTVERSION 3,5,0,0
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
FILEFLAGS 0x9L
|
FILEFLAGS 0x9L
|
||||||
@@ -276,7 +277,7 @@ BEGIN
|
|||||||
VALUE "LegalCopyright", "Copyright © 2005\0"
|
VALUE "LegalCopyright", "Copyright © 2005\0"
|
||||||
VALUE "LegalTrademarks", "\0"
|
VALUE "LegalTrademarks", "\0"
|
||||||
VALUE "OriginalFilename", "nethackm.exe\0"
|
VALUE "OriginalFilename", "nethackm.exe\0"
|
||||||
VALUE "PrivateBuild", "050102\0"
|
VALUE "PrivateBuild", "050309\0"
|
||||||
VALUE "ProductName", "NetHack For Smartphone\0"
|
VALUE "ProductName", "NetHack For Smartphone\0"
|
||||||
VALUE "ProductVersion", "3, 5, 0, 0\0"
|
VALUE "ProductVersion", "3, 5, 0, 0\0"
|
||||||
VALUE "SpecialBuild", "\0"
|
VALUE "SpecialBuild", "\0"
|
||||||
@@ -305,6 +306,7 @@ END
|
|||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDM_MAP_FIT_TO_SCREEN "Entire Map"
|
IDM_MAP_FIT_TO_SCREEN "Entire Map"
|
||||||
|
IDM_DIRECT_COMMAND "Type Cmd"
|
||||||
IDS_CAP_FILE "File"
|
IDS_CAP_FILE "File"
|
||||||
IDS_CAP_HELP "Help"
|
IDS_CAP_HELP "Help"
|
||||||
IDS_CAP_MAP "Map"
|
IDS_CAP_MAP "Map"
|
||||||
|
|||||||
Reference in New Issue
Block a user