### TODO - v0.36, 21-MAY-2012

Known bugs and restrictions

- The built-in joystick GUI control includes support for trackballs -- this is completely untested due to the lack of controllers with trackballs (it should basically work, but be prepared for bugs and unexpected behavior).
- The icon sizes of all menu actions are not adjusted to the actual font size -- this is a Qt restriction, and I have not yet found a way to work around this restriction... however, it's just a minor/cosmetic issue.
- On UNIX / X11 platforms, the QMC2 variant launcher will try to raise a probably already running other variant -- this feature is very dependent on the window manager which may decide to ignore XMapRaised().
- MAME/MESS output notifiers are not supported on Windows yet.
- The built-in MiniWebBrowser has a fairly restrictive set of features which is tailored to the uses of QMC2. It's not even meant to be a full-featured browser, even though it meanwhile supports most of the typical browser-functions.
- Depending on the complexity of a style / style sheet combination, it may slow down GUI operations (that's no bug, but you should note it).
- X11 only: Embedded emulators that change their display sizes at runtime (usually during startup) may not always be centered correctly.
- Both the 'set repair' and 'set rewriter' functions (ROMAlyzer features) only work on ZIPs! As of yet, there's no support for CHDs or ROM sets stored as unzipped files in individual sub-directores.
- Due to a Qt restriction, a QTabWidget's corner-widget (if any) is only shown when the tab-position is either 'north' or 'south'.
- Windows only: There are known issues for embedded emulators running in Direct 3D mode ('-video d3d'): full-screen switching will lead to a crash (of the emulator) and screen-shots aren't taken correctly from within the GUI (black image).

Work in progress

- Adding a Swedish translation -- thanks to Daniel Nylander
- Adding a Greek translation -- thanks to Kostas Albanidis
- Adding a stand-alone CHDMAN GUI (see tools/qchdman/)
- Adding an Italian translation -- thanks to Stefano Cereda
- Adding a Romanian translation (mostly done) -- thanks to Mihai Boisteanu
- Adding a set rename tool to the ROMAlyzer which uses the -listxml outputs from both the old and the current emulator to gather the changes automagically
- Adding support for an optional ROM/CHD database which can be used to store unique copies of all (good) ROMs and CHDs and to retrieve complete sets from it to a local path -- among other things, this can be used to keep different versions of individual ROM/CHD files (due to changing sets) or to just keep your local ROM path clean
- Arcade mode: partially working, disabled by default (use "make WIP=1 ..." for a preview) -- development frozen: a complete rewrite using QML / QtDeclarative is planned

Planned changes, new features and improvements

- Add support for nested slot-options to the MESS device-configurator
- Add support for state-checking & -caching of software-list entries
- Add a driver column to all game/machine-lists
- Add support for local movie files to the YouTube video-player
- Redesign all image-classes to be part of the same class-hierarchy to eliminate code-doubling -- add support for multiple images when redesigning this code
- Add support for David Haywood's (Haze) Universal Machine Emulator (MAME/MESS unification project) in the form of an additional variant -- see bug tracker ID #22
- Add support for 3D arcade cabinet models from the 3D Arcade project
- Add a 'personal rich-text notes' detail for games/machines in general (similar to the notes feature used in the software-detail widget)
- Allow changing the order and visibility of any 'special' widgets (emulator & front-end logs, emulator control, audio player and downloads)
- Add support to hide/show specific categories in both major game lists when the use of catver.ini has been enabled
- Add an option to allow for automatic switching to the last viewed detail of each game/machine
- Add support for launching emulators in record & playback modes
- Morph game/machine favorites, play-history and search results into tree-widgets (like the other lists) and let the user categorize his/her favorites freely
- Add support for category- & version-ini's from http://www.mameworld.info/mameinfo/ as an alternative to catver.ini
- Make the tool-bar's actions / separators customizable
- Add ability to restore, reset (to default), export, import and/or apply individual emulator options by adding a column with respective action (tool) buttons that are enabled/disabled according to the option's current ini-state (import/export are always available)
- Add a backup / restore tool for QMC2's configuration and caches (though it's a trivial task, see Q2.17 in the FAQ)
- Add export / import functionality for YouTube video attachments (to allow for merging of videos found by different people, or to backup / restore discovered videos)
- Add a high-score database
- Update MAWS quick download links: the cabinet artwork URLs are no longer found (since the latest MAWS site changes)
- Extend the template syntax to include the version an option was added/removed and process such options only if the current MAME/MESS version lies within this range (both new attributes will be optional, though, meaning that if they are omitted QMC2 will process the respective option regardless of the current MAME/MESS version -- just as it works now)
- Add a joystick & keyboard configurator for MAME and MESS
- Add support for MAME/MESS output notifications on Windows
- Add support for even more game/machine images (hiscores, howtos, ...)
- Create an improved setup wizard with QWizard
- Fix case-insensitive obsoleteness checks (image- and sample-checks) on Windows -- see bug tracker ID #5 (see also next item)
- Rewrite the image checker and also support all additional image data
- Consider improving the encryption for stored passwords (weak now, but a warning is presented)
- Consider adding an M1 interface as a new game-detail tab for all MAME targets (but M1 appears not be up-to-date with MAME)