aboutsummaryrefslogtreecommitdiff
path: root/qmidiplayer-desktop/qmpchannelswindow.cpp
AgeCommit message (Collapse)Author
2024-01-14Fixes for channels window and simple visualization.Gravatar Chris Xiong
a) Channel status light doesn't blink in release builds. b) Simple visualization shows blank channel info when opened.
2023-11-26Initial Qt 6 port. Many bug fixes.Gravatar Chris Xiong
2020-05-12Stop using a dumber version of QRect().Gravatar Chris Xiong
This is going to break old configuration, so bump QMP_CONFIGURATION_FILE_REV.
2020-05-12Format EVERYTHING.Gravatar Chris Xiong
Hopefully this will make the source code less horrendous and actually readable. The command used was: ``` astyle --suffix=none --style=allman --attach-extern-c --attach-closing-while --indent-switches --indent-after-parens --pad-oper --pad-header --unpad-paren --align-pointer=name --recursive './*.cpp,*.hpp' ```
2020-04-19Legacy code massacre!Gravatar Chris Xiong
Complete reconstruction of the settings infrastructure. All options are now registered using a revamped option API. Legacy configuration files are no longer compatible. Please make a backup.
2019-11-02Keyboard plugin: show additional information on the side.Gravatar Chris Xiong
qmpPluginAPI::registerEventHandler now accepts an optional argument that determines whether the handler is called prior to or after an event is sent.
2019-10-16Some dumb style plugins assume a parameter that defaults to null to be non-null.Gravatar Chris Xiong
2019-10-08Continue reducing usage of widgets in QTableWidget.Gravatar Chris Xiong
2019-10-05Replaced the option "default output device" with a more powerful one.Gravatar Chris Xiong
Old code for default output device completely removed.
2019-09-10We refactorin', eh? Hell yeah.Gravatar Chris Xiong
(Almost) Completely rewritten qmpChannelsWindow, one of the oldest component, now with a dedicated data model. Removed dumb design (CMidiPlayer::getChstates). Now QMidiPlayer requires C++14 to build. More refactoring like this coming up soon.
2019-06-18Device initialization file implementation (part 1).Gravatar Chris Xiong
Added UI for external device configuration. Instrument mapping portion of the device intialization file is now working. Fixed a few spots where return value of getChannelPreset() is ignored. Fixed layout of the preset selection dialog.
2019-06-16Inital implementation of the device properties API.Gravatar Chris Xiong
Added new interfaces to qmpMidiOutDevice. Implemented the new interfaces for qmpMidiOutFluid. Initial infra for device initialization file parsing. Move to the new interfaces for getting list of presets. Use DevIL instead of CxImage. External output devices are broken now but that is for another commit.
2019-05-26Major code refactor continued and (mostly) concluded.Gravatar Chris Xiong
Removed all references to ICallback in official plugins. New flag field in SEvent. Further type usage corrections.
2019-05-25Massive code refactor en cours!Gravatar Chris Xiong
Less complain from compilers: - use nullptr instead of NULL - use types for event fields - explicit type casting added Stop saving parameters of meta events in p1/p2 fields of SEvent. callback_t now uses std::function, deprecating ICallback. Not recommended for daily usage, or even testing: the code refactor is still a work in progress.
2019-04-22New development cycle!Gravatar Chris Xiong
Partially reintroduce High DPI handling. Pressing enter when a preset is focused now opens the preset selection dialog. Close all functionality windows before shutting down. Temporary fix for switching all channels of an external synth to mono mode unintentionally. And the most important one of them all: simple visualization! I'm ditching the 0.8.6 cycle because there was no clear goal for that release now (as the OPL3 emulation is now delayed indefinitely). In contrast, the 0.8.7 release has a pretty good-looking feature set mainly focused on improving support for external synthesizers: - Per-device initialization profile. - Instrument mapping files. - And a simple visualization ~~for showing off your external synthesizers~~. As always no ETA is set, nor will I promise the implementaion of all the features listed above.
2019-03-13Set preset bank correctly in XG mode.Gravatar Chris Xiong
Removed High DPI handling code. Good luck to Windows users out there. Skulpture style: dials are no longer blurred if scaled.
2019-01-25Fixed a crash caused by improper preset probing.Gravatar Chris Xiong
Further ensure CC#8 is initialized correctly. Minor string table update.
2018-10-02Fixed layout with Qt 5.11.0.8.6_fluidsynth-1.x_finalGravatar Chris Xiong
Minor code cleanups in qmpchannelswindow. Documentation update.
2017-08-22Windows type of functionality windows is now Qt::Dialog.Gravatar Chris Xiong
Initialization fluidsynth asynchronously. Minor documentation update.
2017-08-10Windows of several main functionalities are no longerGravatar Chris Xiong
QDialogs. Fixed unexpected behavior. Now visualization window can be closed by sending it a close signal. Trying a solution to address the problem that prevents plugins from being loaded correctly in Windows if the path contains Chinese characters. Not even tried to build in Windows though.
2017-06-21Fixed FTBFS on Windows.Gravatar Chris Xiong
Fixed the default output device option. Seeking now restores CC values correctly.
2017-06-21Complete rewrite of the MIDI mapper.Gravatar Chris Xiong
Enforces single fluidsynth instance. Documentation update. Minor changes to make lite version work.
2017-02-13Fix pitch bend range handling.Gravatar Chris Xiong
Allow registering a string option as file path. Provide an easier way to set path values in options. Revert to old geometry storage mechanism and improved it. Hope this one will work on Windows. Make the time slider less ugly.
2017-02-12UI revolution cont'd. Powered by @BLumia.Gravatar Chris Xiong
Expose new APIs to plugin developer. Use svg icons.
2017-02-12New functionality API. Port built-in features to the new API.Gravatar Chris Xiong
Start the revamp of the main Window. Credit of the new design goes to @BLumia.
2016-05-21Use QDirIterator instead, fixing plugin loading problems in Windows.Gravatar Chris Xiong
Also scale UI elements.
2016-05-20Scale GUI correctly on a high DPI device.Gravatar Chris Xiong
Fix building for Windows. RC-bugs still exist.
2016-05-11Fixed a crash caused by the visualization plugin.Gravatar Chris Xiong
Fixed a bug when piano is hidden but the option "arrange channels on a stair" is enabled. Add channel label display. However it's still buggy so it's currently disabled.
2016-04-24Problematic commit...Gravatar Chris Xiong
2016-04-13Ghost Lead.Gravatar Chris Xiong
2016-04-10The Last Judgement.Gravatar Chris Xiong
2016-04-09Blocked thread!Gravatar Chris Xiong
2016-04-08the Awakening of the Evil.Gravatar Chris Xiong
2016-04-07Lunatic Princess.Gravatar Chris Xiong
2016-04-06Too young too simple.Gravatar Chris Xiong