Considerations for the GUI - cogstat/cogstat GitHub Wiki

Beyond the menus, most commands are available with shortcuts and on a toolbar.

Menus

  • Use as few menus as possible. The functions should be behind only a few menus.
  • The menus follow the process of the analyses: Data – data handling (including items usually included in Files menu), Analyses - well, analyses, and Results – output handling. There is a final menu, called CogStat (in other software packages, this menu is called Help, including several non-help related items) with items relevant to the software in general.
    • This arrangement may be unusual for new users, but this is a more coherent grouping of software functions compared to traditional arrangements.
  • The Analysis menu includes the name of the tasks, not the name of the statistical procedure.
  • CogStat menu includes the items related to the software in general, such as Help, Preferences (unlike in other software, not in the Edit menu, which doesn't make too much sense), Exit (unlike in other software, not in the File menu, which solution would also be weird), etc.
  • Most menus should include a shortcut.

Dialogs

  • They should be as simple as possible. Smart details should be included in the decision tree behind those dialogs.
  • Several menus/dialogs for the partially same functions.
    • As CogStat grows, some functions get complicated. For example, the mixed-design comparison settings are more complex than the group comparison settings. These more general functions with more settings require more complex dialogs. When still running a simpler analyses using the more complex dialog, these complex settings (a) can be harder to understand for beginners, and (b) can be less handy for experienced users. Second, the simpler dialogs may include shortcuts for some analyses that are hard to include in the complex dialog version. For example, in variable-pair relation dialog, having more than two variables means that all combinations should be analyzed; on the other hand, relation of variables (multiple regression) displays the dependent variables and regressors separately.
    • For these cases, we may keep both the simple and the more general and complex menus/dialogs. Therefore, some functions are available from several menus/dialogs. The documentation should clarify the overlapping functions and the differences between those dialogs.
    • In the menu, display the specific/simple function first, then the general/complex.
  • OK button should be disabled until necessary details are set. #114
  • Variable selection
    • When relevant, source variable list should be on the left side, and selected variables for the analysis should be on the right side.
    • Variables chosen for an analysis should be removed from the source list.
    • When a variable is not chosen anymore, it should be sent back to the source list to its original position
    • Singular/plural labels should reflect if a single or multiple variables are allowed: e.g., "variable" for single, "variables" for multiple, and "variable(s)" for either single or multiple variables. TBD Should we hint if a setting is optional?
    • TBD When the target list includes some information the source should be matched with (as in variable comparison with multiple factors), where do the chosen source items land? What happens with the chosen variables when the factor number and/or factor level numbers change?
  • Dialogs should be resizable, tab order should be set, shortcut keys should be assigned to buttons (and maybe everything except the variable lists).

See also the GUI related issues.