summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/ui/filesel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/ui/filesel.c')
-rw-r--r--src/emu/ui/filesel.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/emu/ui/filesel.c b/src/emu/ui/filesel.c
index d017b7f1bc7..1ac5efe0d2a 100644
--- a/src/emu/ui/filesel.c
+++ b/src/emu/ui/filesel.c
@@ -54,7 +54,7 @@ static void input_character(char *buffer, size_t buffer_length, unicode_char uni
{
size_t buflen = strlen(buffer);
- if ((unichar == 8) && (buflen > 0))
+ if ((unichar == 8 || unichar == 0x7f) && (buflen > 0))
{
*(char *)utf8_previous_char(&buffer[buflen]) = 0;
}
@@ -65,7 +65,6 @@ static void input_character(char *buffer, size_t buffer_length, unicode_char uni
}
}
-
//-------------------------------------------------
// extra_text_draw_box - generically adds header
// or footer text
@@ -220,12 +219,14 @@ static int is_valid_filename_char(unicode_char unichar)
// ctor
//-------------------------------------------------
-ui_menu_file_create::ui_menu_file_create(running_machine &machine, render_container *container, device_image_interface *image, astring &current_directory, astring &current_file)
+ui_menu_file_create::ui_menu_file_create(running_machine &machine, render_container *container, device_image_interface *image, astring &current_directory, astring &current_file, bool *ok)
: ui_menu(machine, container),
m_current_directory(current_directory),
m_current_file(current_file)
{
m_image = image;
+ m_ok = ok;
+ *m_ok = true;
}
@@ -328,12 +329,13 @@ void ui_menu_file_create::handle()
reset(UI_MENU_RESET_REMEMBER_POSITION);
}
break;
+ case IPT_UI_CANCEL:
+ *m_ok = false;
+ break;
}
}
}
-
-
/***************************************************************************
FILE SELECTOR MENU
***************************************************************************/