Open main menu

Difference between revisions of "Windows/Console"

465 bytes added ,  15:43, 25 October 2010
Tried to structure things and expand some bits. Somebody should verify that I did not (unintentionally) introduce bias
(Tried to structure things and expand some bits. Somebody should verify that I did not (unintentionally) introduce bias)
Line 1: Line 1:
== Windows Console - Blessing or Curse? ==
== Windows Console - Blessing or Curse? ==


=== Current situation ===
Currently, Windows Release Builds (1.2.0 and earlier) open a console window in addition to the normal ScummVM GUI window.<br>
Currently, Windows Release Builds (1.2.0 and earlier) open a console window in addition to the normal ScummVM GUI window.<br>


Line 7: Line 8:
There is a perennial argument as to whether this is a good or a bad thing, mainly with respect to novice Windows users-
There is a perennial argument as to whether this is a good or a bad thing, mainly with respect to novice Windows users-


=== Proposed alternative ===
The following alternative has been proposed:
The following alternative has been proposed:
:Do not show this console window by default, but only show it when explicitly requested by the user (e.g. via a command line switch, a setting in the GUI, or possibly even a hotkey). In addition, when ScummVM is launched from a console, then that console would not be hidden or affected in any other way by ScummVM. That is, the only difference in behavior would be apparent in the case that ScummVM is started via the GUI (e.g. via the Start menu, by double clicking scummvm.exe, etc.).
:Do not show this console window by default, but only show it when explicitly requested by the user (e.g. via a command line switch, a setting in the GUI, or possibly even a hotkey). In addition, when ScummVM is launched from a console, then that console would not be hidden or affected in any other way by ScummVM. That is, the only difference in behavior would be apparent in the case that ScummVM is started via the GUI (e.g. via the Start menu, by double clicking scummvm.exe, etc.).


=== Discussion ===
This page exists to collect the arguments on both sides and to record counterarguments, so that:
This page exists to collect the arguments on both sides and to record counterarguments, so that:
# a decision can be reached on this which all interested developers can be satisfied with;
# a decision can be reached on this which all interested developers can be satisfied with;
# the reasons and arguments for the decision can be minuted, such that the perennial argument can be avoided in the future, unless the reasons given here can be shown to have evolved.
# the reasons and arguments for the decision can be minuted, such that the perennial argument can be avoided in the future, unless the reasons given here can be shown to have evolved.


Independently of how this is resolved, log files should be introduced, which could be erased (or rotated) every time ScummVM starts. Console messages which the user really should see should be modified to use other means (this is also important for the many ports that have no way to show a DOS console). Typically by showing a GUI dialog. For the specific case of unknown MD5 checksums, we ideally would even have a "Submit feeback" dialog which could semi-automate submissions of unknown checksums (e.g. by sending an email, or opening a pre-filled email in the user's email client, etc.), at least on desktop operating systems.
Independently of how this is resolved, it seems we have mostly consensus (have we?) that log files should be introduced, which could be erased (or rotated) every time ScummVM starts. There are some concern over details (e.g. what if a log file grows very large due to using "-d9"?) which however should be resolvable.


== Pros (Arguments for "Hiding The Console Window") ==
In addition, according to Fingolfin, console messages which the user really should see should be modified to use other means (this is also important for the many ports that have no way to show a DOS console). Typically by showing a GUI dialog. For the specific case of unknown MD5 checksums, we ideally would even have a "Submit feeback" dialog which could semi-automate submissions of unknown checksums (e.g. by sending an email, or opening a pre-filled email in the user's email client, etc.), at least on desktop operating systems.
 
=== Pros (Arguments for "Hiding The Console Window") ===


* Most Windows applications do not display a console window. It is hence confusing for users.
* Most Windows applications do not display a console window. It is hence confusing for users.
Line 23: Line 28:
* No vital or important messages for the user should be displayed on the console alone anyway; if the user needs to know about something, we must show this via e.g. a GUI dialog or an overlay message. Hence there should be no need to show it by default (any cases where important information is only visible on the console are BUGS and should be reported and fixed).
* No vital or important messages for the user should be displayed on the console alone anyway; if the user needs to know about something, we must show this via e.g. a GUI dialog or an overlay message. Hence there should be no need to show it by default (any cases where important information is only visible on the console are BUGS and should be reported and fixed).


== Pros (Arguments for logging to a file) ==
=== Pros (Arguments for logging to a file) ===


* Users need to restart ScummVM, to get more feedback, when bugs or issues occur and they haven't copied/pasted the relevant information from the console, and might not even be able to reproduce the bug/issue.
* Users need to restart ScummVM, to get more feedback, when bugs or issues occur and they haven't copied/pasted the relevant information from the console, and might not even be able to reproduce the bug/issue.
* Sometimes, when ScummVM crashes unexpectedly, the program exits completely, and the user loses the error in question. This doesn't happen with a log file.
* Sometimes, when ScummVM crashes unexpectedly, the program exits completely, and the user loses the error in question. This doesn't happen with a log file.
* A log file can be easily submitted via the bug tracker, even if it is big.
* A log file is often much easier for the developers to analyze than a screenshot.


== Cons (Arguments against "Hiding The Console Window") ==
=== Cons (Arguments against "Hiding The Console Window") ===


*  How do we report unknown games, or games with missing files to users?
*  How do we report unknown games, or games with missing files to users?
1,079

edits