lp:~mixxxdevelopers/mixxx/features_messageBox

Created by Sean M. Pappalardo and last modified

Extends ErrorDialog to be a proxy that allows any thread to create QMessageBoxes with StandardButtons. (Ordinarily only the GUI (main) thread can do this.)

See MidiScriptEngine::scriptErrorDialog() for an example of usage and MidiScriptEngine::errorDialogButton() for one on how to see what button was pressed.

Get this branch:
bzr branch lp:~mixxxdevelopers/mixxx/features_messageBox
Members of Mixxx Development Team can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Mixxx Development Team
Project:
Mixxx
Status:
Merged

Recent revisions

2381. By Sean M. Pappalardo

Idiot...forgot to add the renamed files.

2380. By Sean M. Pappalardo

- Renamed class to a more accurate "ErrorDialogHandler"
- Renamed class to "ErrorDialogProperties"
- Protected all ErrorDialogProperties variables and made access functions
- Made ErrorDialogHandler a singleton and removed the previous global variable
- Moved ErrorDialogProperties instantiation into ErrorDialogHandler
- Fixed MidiMapping and MidiScriptEngine to work with the changes, tests good
- Mutex-protected the m_dialogKeys QList in ErrorDialogHandler, the only reentrant shared data item that is used by multiple threads
- Changed qDebugs to qWarnings in a few files where it made sense, since qWarning now just logs and they'll still show up if qDebugs are disabled

2379. By Sean M. Pappalardo

- Removed messageBoxHandler, the first, flawed attempt at solving the initial problem
- Extended the heck out of ErrorDialog: any thread can use the global g_pDialogHelper->requestErrorDialog() to create one with standard buttons, and connect its stdButtonClicked() signal to be fired when one is clicked. See MidiScriptEngine.cpp scriptErrorDialog() and errorDialogButton() for an example of this.
- Removed old log file cruft from main.cpp
- Permanently made qWarning only log, as intended
- Set ErrorDialog to attempt to exit gracefully on fatal errors as well (should we do this?)
- MidiMapping: added reset() slot that resets the associated MIDI controller by restarting the script engine and re-applying the preset
- MidiMapping: made friendlier dialogs using the new method for when a mapping can't be bound, and fixed the hex-to-text conversion
- MidiScriptEngine: Changed qDebugs to qWarnings as appropriate, since they now just log and will still show up if we ever disable qDebugs for release builds
- update.cpp: clarified warning and actually made it a qWarning now for logging purposes

2378. By Sean M. Pappalardo

Right and I forgot to add the new files.

2377. By Sean M. Pappalardo

First incarnation of the MessageBoxHandler class. It doesn't work because you can't even set QMessageBox properties unless you're in the GUI thread...so much for flexibility.

2376. By Albert Santoni

* Only override Qt plugin path on OS X to use the bundled plugins when we think we're in a bundle. Makes running mixxx outside a bundle on OS X work again...

2375. By Albert Santoni

Re-enable Analyze view

2374. By Albert Santoni

Fix bad freeing of TIO in Analyze view

2373. By Albert Santoni

Move iTunes and Rhythmbox to the bottom of the library model so you don't have to scroll through them and get a giant messagebox popup that can't be cleared via MIDI

2372. By Albert Santoni

* Don't ignore keyboard when we're making sidebar selections... (Sorry RJ!) Fixes library MIDI control

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar RepositoryFormatKnitPack5 (bzr 1.6)
Stacked on:
lp:~mixxxdevelopers/mixxx/trunk
This branch contains Public information 
Everyone can see this information.