Opened 17 years ago

Closed 17 years ago

Last modified 6 years ago

#7572 closed feature request

"confirm exit" dialog

Reported by: fingolfin Owned by: fingolfin
Priority: normal Component: GUI
Version: Keywords:
Cc: Game:

Description

Right now, the SCUMM engine uses an undocument config switch: confirm_exit which if set to true, cause a "Do you really want to exit Y/N" dialog to appear when a quit event is received, giving the user a chance to reconsider.

It is unfortunate that this is only implemented in the SCUMM engine. I propose that either we ditch it completely, or we move it to a full & proper feature. That would mean: * document it * make it work in all engines, even the launcher * add it to the global option dialog (IMO, only to the global one, I really don't think it'd be very useful to configure this per-game)

The questions is how to make it work consistently everywhere. One way would be to add the code to the backend (at least the SDL one) -- so just before firing a QUIT event, pop up the dialog (if "confirm_exit" is set to true). This would guarantee consistent behavior across all engines and also in the launcher.

Drawback: It won't work for "custom" quit code in engines. However, since the main reason for the confirmation dialog is to protect from accidental key presses (like pressing Alt-X in the "Leisure Suite Larry" games), this would likely not be a big problem.

However, if we *do* think it would be important to handle these cases, that would be possible, too. Just add the confirmation dialog into a file in gui/, then it can be used from any part of our code base.

Ticket imported from: #1731025. Ticket imported from: feature-requests/388.

Change History (4)

comment:1 by fingolfin, 17 years ago

Yet another possibility would be to insert the confirmation dialog code into the event manager.

comment:2 by fingolfin, 17 years ago

Owner: set to fingolfin
Status: newclosed

comment:3 by fingolfin, 17 years ago

Implemented in rev 27788.

comment:4 by digitall, 6 years ago

Component: GUI
Note: See TracTickets for help on using tickets.