Commit Graph

81 Commits

Author SHA1 Message Date
adelikat d4c8615e95 remove unused usings and other redundancies 2020-04-23 20:33:18 -05:00
adelikat 70633419ac
Refactor TasMovie and add interface (#1940)
* create ITasMovie interface, still lots of todos

* interface for TasMovie.ChangeLog

* rename method

* interface more TasMovie things

* file rename

* interface more ITasMovie things

* make Bk2Movie and TasMovie internal, rely on interfaces for behavior and MovieService for instantiation

* MovieService cleanup

* cleanup TasBranch handling and simplify ITasMovie api

* more branch logic cleanup and ITasMovie simplificaiton

* more cleanup of branch handling

* more ITasMovie simplification

* nitpick cleanup

* Use IMovie.GetInputLogEntry instead of GetLogEntries

* more ITasMovie cleanup

* move come ITasMovie properties to TasBranchCollection

* TasMovie cleanup

* simplify ITasMovie more

* cleanup
2020-04-19 13:38:45 -05:00
adelikat 03a7ea8438 IMovie.PopulateWithDefaultHeaderValues() - pass in dependencies instead of using Globals 2020-04-14 17:30:32 -05:00
YoshiRulz e1951b9fc5
Cleanup PathExtensions
Fixes f02295455/c731e1168/5c7135d67
2020-03-21 13:45:58 +10:00
adelikat 33a14327b7 move most logic from PathManager to extension methods in BizHawk.Common 2020-03-15 15:45:11 -05:00
adelikat 348cbd18df
Remove PathManager code that had dependencies on Globals (#1881)
* move one usage of Firwmare method into Firmware config where it is better suited

* PathManager - remove unused code

* move some PathEntry specific logic out of PathManger and into PathEntryCollection extension methods

* PathManager - detangle some exe pathing logic from Global.Config usage, clarify what a completely broken method should actuall do

* move more logic from PathManager to PathEntryCollection extension method

* move absolute path creation to PathEntryCollection, lots of refactoring and simplifying of PathEntries usage

* simplify PathEntryColleciton usage more

* simplify PathEntryCollection more

* break PathEntry classes into separate files, a bit of cleanup

* move Rom path logic out of PathManager into PathEntryCollectionExtensions

* move config UseRecentForRoms and LastRomPath into PathEntries, note that this is a breaking change for previous configs, those values will revert back to default values

* move SaveRamPath logic from PathManager to PathEntryCollections

* move cheats path logic from PathManager to PathEntryCollection

* move another method out of PathManager

* move some Retro hacks to PathEntryCollections, exposes more implicit dependencies

* move savestate logic out of PathManager to PathEntryCollection

* move more logic out of PathManager

* move some savestate logic out of PathManager, move most to MainForm where it is used, detangle some implicit dependencies from SaveSlotManager

* rename method

* move more logic from PathManager to PathCollectionEntry

* movie final Global.Config.PathEntries logic out of PathManager and into PathEnties
2020-03-15 15:12:36 -05:00
YoshiRulz 9829fd699b Unify helpers for generating file extension lists (for open/save) 2020-02-20 21:59:20 +00:00
adelikat 656f2b814e Move IEmulator extensions to the Emulation.Common namespace, the intent is that these are used and serve as built in functionality, so it's overly tedious to when most situations require both Common and an additional extensions namespace 2020-02-15 12:33:15 -06:00
adelikat 4b7a7dd293
Make Binary states default and Textstates opt-in for cores (#1848)
* Rewind & State config - remove the default option

* remove the savestate type of default, not that this is a breaking config change for anyone that had specifically set savestates to text

* remove BinaryStatesPreferred from IStatable and use config setting when starting movies from "Now" in record movie dialog

* remove BinaryStatesPreferred from cores

* make text savestates an extension method off of IStatable and an inteface ITextStatable it uses if the core implements it. This will allow cores to opt in to text states if desired

* make cores with actual text savestate impleemntations get ITextStatable, remove text state logic from cores that just have a binary as as text implementation
2020-02-15 10:22:26 -06:00
adelikat 626efe8caf put control extension methods into the EmuHawk names space isntead of a custom one. We want these to be found and used, and most dialogs use them 2020-02-03 12:54:32 -06:00
adelikat c2bec296e6 simplify some repeated boilerplate on the DragEnter event by consolidating it to an extension method 2020-02-03 12:42:28 -06:00
adelikat afd460f1d2 pass in globals to Play/Record movie dialogs 2019-12-22 14:18:17 -06:00
adelikat 5fe25d03ad Play/Reocrd movie dialogs - pass in mainform 2019-12-17 11:24:34 -06:00
adelikat 1239149af5 cleanup movie forms 2019-11-02 11:05:01 -05:00
J.D. Purcell 39b54f7202 Fix missing UI usings. 2019-11-02 00:38:50 -04:00
YoshiRulz e6374ef477
Use string interpolation 2019-03-19 00:06:37 +10:00
adelikat 28da1e215f misc code formatting improvements in random files in EmuHawk 2017-04-17 15:23:31 -05:00
adelikat 117e0b07e7 Pass the core instance to the record movie dialog 2016-12-04 12:51:48 -06:00
adelikat 604ed74ff9 remove some usages of VideoProviderGlue by checking for VideoProvider availability before doing some dependent processes 2016-12-04 10:30:51 -06:00
zeromus d7186c9e6f remove c#6isms 2016-01-21 21:22:26 -06:00
Adam Sturge 2f11a3adca Updated brace alignment 2016-01-15 19:16:35 -08:00
Adam Sturge 7949e2e182 Added Directory.Exists check for Movie director when clicking the browse button 2016-01-15 19:14:59 -08:00
adelikat 490adc905e Support recording movies that start from SaveRam, note: as of this changeset tastudio does not support this concept and may interact in weird ways with saveram-anchored movies 2015-07-26 15:41:22 -04:00
goyuken 82fcd0bc5e refactor IVideoProvider into a service. uses in mainform and friends are still hacky 2015-01-14 22:37:37 +00:00
adelikat e2033c9d2e AsStatable() and also update statusbar saveslots on CloseRom() 2014-12-05 00:52:16 +00:00
adelikat bdccb6d400 Record Movie - remove the "Now" option if the core doesn't implement IStatable 2014-11-30 17:37:22 +00:00
adelikat 76148ae111 Break off savestate functionality from IEmulator into IStatable and refactor things accordingly. Still todo (a big todo): EmuHawk should gracefully handle a core that is not an IStatable by disabling functionality dependent upon it (Savestates, Rewind, Tastudio, etc) 2014-11-30 16:42:58 +00:00
goyuken ff54192fdc fix missing movie extension for game names that have a . at Length-4 2014-11-30 04:02:31 +00:00
goyuken daf74eb91b framebuffer in movie anchor states 2014-10-27 01:14:47 +00:00
adelikat 33eb056221 Fix record movie dialog defaulting to tasproj after tastudio is opened 2014-10-18 21:08:05 +00:00
adelikat 3880c45398 Fixing Recording from "now", for the 500th time 2014-08-16 15:01:53 +00:00
adelikat 0397ea1ff4 Remove the CustomControls/Util file and move all the classes into the Form Extensions file, since they were all extension methods for window form objects 2014-07-27 15:22:30 +00:00
adelikat ee93e988bc a small and pointless code refactor in the record movie dialog 2014-07-21 18:14:27 +00:00
adelikat cb3e340a1a Movie stuff 2014-07-08 15:15:35 +00:00
adelikat 7e39e67b1f tastudio - more fixes to startup logic, still convolted, buggy and wrong, but better! 2014-07-08 13:46:59 +00:00
adelikat 893a8b16e5 Record Dialog - Fix crash when movie folder does not already exist 2014-06-29 20:07:21 +00:00
adelikat 711c9b52e4 Hack for FilesystemSafeName to remove . if it is the last character in the name (Such as Super Mario bros.) since this method is used for path building 2014-06-20 18:36:03 +00:00
goyuken 71ddbde18d bk2 savestate anchor stuff 2014-06-20 00:39:46 +00:00
adelikat 9f7685a211 small cleanup on RecordMovie 2014-06-14 00:46:41 +00:00
adelikat 124afa8f10 another slight improvement to Record Movie code 2014-06-13 16:58:05 +00:00
adelikat 9f2dc300ea Record movie - another slight simplification 2014-06-13 16:47:57 +00:00
adelikat 1ed4c93eea Record Movie dialog - Remove erroneous .state option in the SaveFileDialog filter. That was never a valid thing to do, how did it manage to stay like that all these years?
Also, some code cleanup
2014-06-13 16:45:33 +00:00
adelikat 05b3f369eb Now that SGB is the BoardName, don't save a SGB row in the movie header 2014-06-12 21:27:49 +00:00
adelikat b26b26efbe More movies 2.0 work 2014-06-12 20:42:46 +00:00
adelikat e0a9fcd650 More movie 2.0 stuff 2014-06-11 02:56:57 +00:00
adelikat 47d5b1e2e2 Movie Savestate blob from IMovieHeader to IMovie, Movie and TasMovie just use the MovieHeader object as usual, but at least the calling code no longer expects that 2014-06-11 00:41:20 +00:00
adelikat 6b2889957a Some refactoring of movie code to make the Header less implementation specific, and start Movie2.cs which will be a Movie 2.0 implementation 2014-06-08 22:12:15 +00:00
adelikat 7e9b13f5c3 Some movie refactoring - moving a function into the importer class, remove MovieExtension from the config file and instead add it as a movie property, add some todo comments in places regarding movie 2.0 2014-06-08 19:36:33 +00:00
adelikat 33d847e8ac rip out hacks that I put in to work around Game.Name being null 2014-05-23 16:22:24 +00:00
adelikat c9c2329651 Record Movie - refactor to check if Global.Emulator has a DisplayType property defined, and if so, use that to populate the PAL header, rather than a bunch of ifs on core type. Refactored ReflectionUtils to be Extension methods in their own namespace, added methods for checking and getting values from a public property 2014-05-20 15:39:43 +00:00