Completed Proposal Non-grayed-out editing commands

From Audacity Wiki
Revision as of 17:01, 7 May 2017 by PeterSampson (talk | contribs) (Developer/QA Backing: replies to Gale)
Jump to: navigation, search
Proposal pages help us get from feature requests into actual plans. This page is a proposal to not gray out the editing cammands tha relu uopn a selection when no selection is present.
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.

  • Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.

The Problem

Now that we have addressed for 2.1.3 the issue of grayed-out commands while in Pause mode there remains the issue of grayed-out commands when no selection is present.

Users are often confused that their editing commands can appear grayed-out and inoperable. This occurs when they issue a command that relies on the presence of a selection and they have not made a selection.

We addressed this problem earlier by adding the "Select all if none selected" preference with the default setting of "on". This mitigated the problem in that the user always had an automatic "selection" even if they had not explicitly made one and thus the commands were not grayed-out if this remained "on", but it did little or nothing to educate the user about the importance of selections in Audacity - plus it made the GUI more opaque that it need be. This is exacerbated as when such an automatic select all in in force as the GUI does not apply the dark gray background to the selected waveforms to indicate the selection with a visual cue.

Further if the user has turned off the "Select all if none selected" a while back and forgotten about it they can then get confused by the graying out and lack of action and can't figure out what to do (and the current GUI is of no assistance in this situation).

Users really do need to learn about making selections, it is one of the fundamentals of Audacity usage.

Proposed Feature

Do not gray-out the commands if a command is invoked that requires a selection with no selection present, then we pop an informative help message to the user telling them to make a selection.

This would be both easily "discoverable" and at the same time educational - and would make for a much clearer GUI.

We could even add a Help button in the dialog to take the user the the page on Selecting Audio in the Manual (like the one we have in the new Timer Record setup dialog).

Developer/QA Backing

  • Bill 06May2017: -1
    Too complicated. Anyone using an editor of any kind (word, graphics, or audio) should understand “select, then act” or “noun, verb”.
    I thought I might support it without the complicated modeless dialog that stays on the screen while the user makes a selection (instead a modal dialog that says, in effect: "Hey dummy! Make a selection first!"), but I remain convinced that menu commands that cannot be executed should be disabled.
  • Peter 07May17: +1 I now just want to see an error message or an error dialog - in order to educate the user.
  • James 07May2017 +1
I'm in favour of the Alternative 1 wording and think the Help button is essential. The user can learn about default options after learning the essential immediate points, which are (a) that they need to select and (b) how to select. I don't think the point about users switching off the preference and forgetting they have is one we should lose much sleep over. Such users will at least know point (a), and if it is two users of the same machine, one will probably be giving advice/help to the other. Bill's "Hey Dummy" point doesn't wash with me either. The user feels much more like a dummy if they can't use the software at all, when other people who use it say it is really good / simple / powerful. I'm not currently in favour of the dialog being modeless. I think better is to require the user to do two steps - select the audio and then apply their effect. Otherwise they might get into the habit of doing things in 'the wrong' order.
  • Gale 07May2017: -1
I agree a lot depends on us actually having a Help button (why is this so hard?) and moreover on users bothering to read the help. The naive never bothered to read the Help before we had autoselection so why should they read it and understand it now, even if we point them to the right place?

The autoselection works for the naive recording a USB turntable but is too coarsely implemented and so can lead to a selection being replaced by "all". Therefore the knowledgeable object to it. If we fixed autoselection, I see almost no need for this proposal. Is it not better people remain in ignorance and record their tapes and records than give up in frustration when blocked by a modal message they can't be bothered to deal with? Giving up in frustration happened before we had autoselection, and it will happen again if we have a modal message with zero help on the message about how to select (particularly, how to select all, which most of the naive will want).

  • Bill 07May2017: Gale wrote: "Is it not better people remain in ignorance and record their tapes and records than give up in frustration when blocked by a modal message they can't be bothered to deal with?" My answer is: No, it is not better. Users should learn to select then act. If we must enable menu commands that do nothing then we should tell the user why that command will do nothing. By all means give them a help button. If they are "frustrated" by having to learn to use the software properly, I have little sympathy.
    • Peter 07May17: A Help button shouldn't be hard, a link to the Manual (selection page) as we have with Timer Record and Analyze Contrast.

      Gale is trying to make this proposal depend upon auto-selection (or an improved version of autoselection). This should not be the case - this is a relatively simple proposal that sates IF the user has no selection AND tries to effect an action that depends on having a selection THEN we pop an error messge (simple or complex).

      This proposal does not depend at all on how the selection is made either manually or automatically.

      If we wish to discuss extending autoselection then this should be done a different proposal or discussion thread - not this one.

Use Cases

  • Many reports on the Forum of confusion caused by Grayed-out commands
  • Users are particularly confused when they have an automatic (and invisible) Select All present and then they hit the Delete or Cut commands and all their audio disappears.


  • A pop-up modal "reminder"
    • "Please select some audio for <name of command> to act on, then try again."
  • Add a Help button in the "reminder" dialog to take the user the the page on Selecting Audio in the Manual
  • User makes the audio selection that they want (not our guess, which we acknowledge will frequently be wrong) and clicks the OK button.
  • On clicking OK, the "reminder" closes and the effect UI pops up (or for effects with no UI, the effect is applied).
  • We should probably retain the existing "Select all if none selected" preference, but turn it "off" by default for first installation and for reset of audacity.cfg. All other existing users would have their .cfg unchanged.
    • Add a FAQ for "How do I get the automatic "Select All" for any users who lose this functionality as part of a re-install with a reset and can't find the Preference.
  • We may need to add advice in the message telling the user that they would need to use Preferences to turn off automatic selection if and when no longer required. As after checking the auto-selection checkbox in the meassge than they will not see the message again.

GUI Examples

Alternative 1: A message about what went wrong with a button for further help if needed. (message box title - No Audio Selected):

Cannot apply Reverb effect: No audio selected.

Select the audio that you wish to apply Reverb to,
then try again.

[Help] [OK]

Alternative 2: A modeless version of 1. (message box title - No Audio Selected):

Cannot apply Reverb effect: No audio selected.

Select the audio that you wish to apply Reverb to,
then press "OK" to continue.

[Help] [Cancel] [OK]

Alternative 3: A message that offers full project selection and the opportunity to make that automatic in future.

No Audio Selected for Action

Select some audio for <action> to act on, for example by click and drag, then click OK.

Or choose options for selecting the entire project then click OK.

[_] Select entire project now
[_] Enable Preference to auto-select entire project for action

[Help] [OK ] [Cancel]
  • The message names the selected effect/generator/analyzer/command.
  • The OK button remains grayed out until there is an audio selection.
  • The Cancel button closes the dialog and cancels the effect.
  • The Help button opens an appropriate page in the manual.

We do not explain in the dialog how to make a selection. The few users who can't guess can click on Help. Verbose messages believed to be counterproductive

When a selection is subsequently made, the OK button becomes active, and clicking on it will:

  1. Close the message dialog.
  2. Launch the selected (named) effect or command.

Select All on None

  • Effects and Analyzers not to be grayed out when no slection is present.
  • Default setting for select-all-on-none would be set to disabled, rather than removing that setting entirely.

Previous Feature Requests relating to this proposal