Personal note: The user interface can be especially important for disabled people. For instance, some people might not be able to operate a mouse.Quote from MSDN Home > MSDN Library > Win32 and COM Development > User Interface > Official Guidelines for User Interface Developers and Designers > Windows Interface Components > Secondary Windows
Layout
Because secondary windows often provide a large part of the user's interaction with your application, spend a significant amount of time on the design and layout of the controls you place in the windows. Consistency and aesthetics contribute to readability and comprehension of operations and tasks. This, in turn, has an impact on the overall usability of your application.
Total Commander is not consistent in using access keys. Missing access keys in:
Configuration-Layout
Configuration-Display
Configuration-Color
Configuration-FTP
Configuration-Packer
Configuration-Help and Apply button
Find Files(search)-tab headers
Find Files(search)-Advanced tab
Find Files(search)-Advanced tab
Menu option "Net/FTP Download From List" is a strange name for an option which downloads, uploads, copies and moves from a list. Or is this functionality officially not supported? It is not described in the help file is it?
Find Files(search)-Start search, Cancel and Help buttons are not accessible by tab key.
Inconsistency in disabling options that are not applicable (already notified Christian Ghisler):
Configuration
Page: Layout
Show drive buttons - child checkboxes are disabled when not applicable
Show current directory - child checkbox is disabled when not applicable
Page: FTP
Create a log file - editbox is disabled when not applicable
PORT mode: only use ports from limited range - editboxes are disabled when not applicable
Page: Misc
Only play for long operations - editbox is disabled when not applicable
Page: ZIP packer
other (1st occurence) - editbox is enabled when not applicable. radio button is checked by activation of the editbox.
other (2nd occurence) - editbox is enabled when not applicable. radio button is checked by a change in the editbox.
Page: Folder Tabs
Limit tab title length to - editbox is enabled when not applicable. checkbox is not checked by a change in the editbox
Page: Operation
descript.ion - checkbox is enabled when not applicable. radio button is not checked by a change in the checkbox
In Total Commander the arrow keys can sometimes not be used to navigate between option button choices. Examples:
Configuration-Copy/Delete (already notified Christian Ghisler) (in my opinion a very unclear dialog)
Configuration-Zip packer
The input focus location (see quote below) in the active window is not always visible. Using the arrow keys you can walk from controls with tab stops (buttons, check boxes, etc.) to controls without tab stops (group boxes, panels, etc.) if these controls are all at the same level (a child control is not at the same level as it's parent control).
Example: Select menu File/Change attributes and press arrow down several times and see what has focus.
This problem can be avoided by avoiding nesting of controls without tab stops (i.e. a panel inside a group box) and by placing all loose controls with tab stops (i.e. buttons) in a panel. This panel can have an invisible border so the user will not now it is there.
I.e. a panel can still be placed inside a group box. Just make sure the parent of the panel is the form and not the group box.
(I used Delphi 2 for testing. Christian Ghisler uses Delphi 2 for creating Total Commander.)
Some quotes:
I hope Christian Ghisler and his beta testers will pay more attention to the user interface.Quote from MSDN Home > MSDN Library > Win32 and COM Development > User Interface > Official Guidelines for User Interface Developers and Designers > Windows Interface Components > Secondary Windows
Navigation in Secondary Windows
...Always use arrow keys to navigate between option button choices and within list box controls.
Also define access keys to provide navigation to controls within a secondary window. This allows the user to access a control by pressing and holding the ALT key and an alphanumeric key that matches the access key character designated in the label of the control.
Quote from MSDN Home > MSDN Library > Win32 and COM Development > User Interface > Official Guidelines for User Interface Developers and Designers > Windows Interface Components > Menus, Controls, and Toolbars
Option Buttons
...
Interaction
...
Assign access keys to option button labels to support a keyboard interface for the buttons. You should also support the TAB or arrow keys to allow the user to navigate to and choose a button. Access keys or arrow keys automatically set the input focus to an option and select that button.
Quote from MSDN Home > MSDN Library > Win32 and COM Development > User Interface > Official Guidelines for User Interface Developers and Designers > Fundamentals of Designing User Interaction > General Interaction Techniques
Keyboard Navigation
Keyboard navigation requires a user to press specific keys and key combinations to move the input focus — the indication of where the input is being directed — to a particular location. The appearance of the input focus varies by context; in text, it appears as a text cursor or insertion point. In most other contexts, it is represented by a dotted rectangle. You should display the input focus location in any active window.