We were using some sort of special malformed non-path seperator character to stand in for the path seperator character in in the lump names, and then compensating for that brokenness when loading lumps.
On save, we were relying in our zip library compensating for the brokenness.
* Fix exception, scroll to branch on updating branch and fix#2645
* Make loadbranch hotkey deselect all but one branch
matches updatebranch behavior and fixes part of #2645
still no cores which support it, "Debug" is still hardcoded, still uses holding
Fast Forward hotkey to trigger
no idea how OverrideAdapter, or the IInputAdapters, or the Bk2/BkmController
will work, I've just thrown NotImplementedException from those
Open `Config` > `Controllers...` with any rom loaded and go to the last tab.
A "Debug" virtual channel is hardcoded, and will be present on every core.
As with the previous commit, holding Fast Forward causes this channel to fire
and it will be passed through to a bound host gamepad.
The prescale slider works. Virtual channels with a player number prefix also
work, but the single "Debug" channel without a prefix is hardcoded.
Caveats: Reopening the config dialog doesn't load the host channel back into the
combobox. It will save to config correctly.
This has been here since it was added in a2ba761ae. I think it's never caused
problems because the two lists are the same in all cases where the method's
result is used (the single caller, ArtManager.Close, immediately checks the
result of this method and throws if multiple atlases are used).
Y'know, where the thing they're being passed to is created... I don't think them
only being attached once was a problem, as one is also called from elsewhere and
the other is kinda useless
* Pass IDialogParent to IVideoWriter impls via ctor instead of param
* Refactor IDialogController/Parent, moving some of it to Client.Common
tl;dr: MessageBoxButtons.OK => ShowMessageBox/ModalMessageBox,
MessageBoxButtons.YesNo or .OKCancel => ShowMessageBox2/ModalMessageBox2,
MessageBoxButtons.YesNoCancel => ShowMessageBox3/ModalMessageBox3.
Possible breaking change: Cheats had `Owner ?? this` as its "self", which I
think parented any modals it opened to MainForm instead of the Cheats window.
The Cheats window will be their parent now regardless. Other than that, all the
icons and stuff for all the other dialogs should be exactly the same.
* Remove WinForms dep from AV classes where possible
* Cleanup CoreFileProvider init, passing MainForm as IDialogParent
* Pass MainForm as IDialogParent to MovieSession
* Pass IDialogController through to one MovieZone ctor
* Use MessageBox helpers in RecordMovie
* Implement IDialogParent on misc. Forms to use MessageBox helpers
* Use MessageBox helper in misc. config Forms
* Pass IDialogController through to misc. Forms for MessageBox helpers