Disclaimer: I'm mostly nitpicking here, but that's my job. :)
+ msgBox.setText( "<html>Mixxx was unable to bind to <b><i>" +
+ config->getValueString(ConfigKey("[Soundcard]",
"DeviceMaster")) +
+ "</i></b> at start-up, this could be because another
application is using the "+
+ "sound device or the device is not plugged in (USB sound
cards), would you "+
+ "like Mixxx to:<ul>"+
+ "<li><b>Retry</b> after you have closed the other
application or reconnected the sound device."+
+ "<li><b>Reconfigure</b> Mixxx's hardware prefs to use a
different sound card device for output."+
+ "<li>Get <b>Help</b> from the Mixxx Wiki and possibly get
more info about this problem."+
+ "<li><b>Cancel</b> now to exit Mixxx without touching your
settings"+
+ "</ul></html>");
Let's try to simplify the wording a bit. Also keep in mind that since we
don't have any localisation, we should try to make the text very clear
for non-English speakers. (For example, "touching your settings" might
not be as clear as it sounds to you and me.)
"Mixxx was unable to [bind/open/access???] [your soundcard]. Another
application may be currently using it or the device may not be plugged
in. Would you like to:
* <b>Retry</b> after you have closed the other application or
reconnected the sound device.
* <b>Reconfigure</b> Mixxx to use a different sound device.
* Get <b>Help</b> from the Mixxx Wiki about this problem.
* <b>Exit</b> now without modifying your settings.
- Removed "at start-up" because ... we _are_ at start up, it's redundant
because the user has already taken the action of starting up the
application. :)
- Removed explicit USB soundcards reference.
- I'd change the Cancel button to "Exit", since that's what you're
doing. The sentence in the final bullet is way shorter that way too.
- Just made it less verbose in general.
The one thing I don't know about is the magic verb "bind" in the first
sentence. I can't think of a good word that describes the action that
intuitively makes sense for someone that doesn't have a technical
background. Maybe someone else has ideas...
Otherwise, the changes to mixxx.cpp and soundmanager.cpp look OK to me.
One thing that's sketchy is that the cmetrics call in mixxx.cpp gets
called every time you hit retry and it fails, which is not quite what
that message was meant for. As cmetrics is still in flux and that
message probably needs to be rethought anyways, don't worry about it.
Another sketchy bit is that you've now buried our PortAudio
initialization and termination inside functions which you wouldn't guess
would perform that action based on their names. At some point we may
want to move those calls out to more explicit functions that
init/shutdown the sound system. Maybe we can think about doing that if
we ever code up refreshing the sound devices from the prefs dialog.
Anyways, good stuff once again Philip. Thanks!
Albert
------------------------------------------------------------------------------
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel