Commit Graph

1016 Commits

Author SHA1 Message Date
adelikat aa94ddccd5 Tastudio - expand message column to fix text, similarly to branches 2019-12-03 20:10:00 -06:00
adelikat 1a6c1e7ebe InputRoll - simplify 2019-12-03 20:05:32 -06:00
adelikat eb63fa5a92 Tastudio - Branches - fix width calculation when expanding to fix user text 2019-12-03 20:03:10 -06:00
adelikat c2b942d9a4 InputRoll - remove some vestigial code 2019-12-03 18:57:50 -06:00
adelikat b230502228 Tastudio - cleanup 2019-12-03 18:44:01 -06:00
adelikat 6640146c0a InputRoll - add a flag for whether the control can be toggled into HorizontalOrientation, and only enable it on tastudio 2019-12-02 20:29:29 -06:00
adelikat d687babb41 TAStudio - expose Horizontal Orientation in non-developer builds 2019-12-02 20:23:14 -06:00
adelikat 2a12cac9e5 InputRoll - implement shift+Up/Down logic to highlight rows 2019-11-29 16:12:23 -06:00
adelikat 68797f18f7 Tastudio - fix crash when attempting to use right-click column autohold if the movie was loaded via autoload 2019-11-27 20:10:06 -06:00
adelikat f926142921 cleanup OSDManager 2019-11-26 19:36:04 -06:00
adelikat 1b8b4b4926 Tastudio - rip out option to do autorestore on mouse up vs down, make it on up only, and fix autorestore logic 2019-11-26 18:54:46 -06:00
adelikat 223cef2620 Tastudio - cleanups 2019-11-26 18:50:56 -06:00
adelikat 943454554d Tastudio - don't update bookmark view on UpdateValues() 2019-11-26 17:34:50 -06:00
adelikat e1b91d13ab InputRoll - cleanups and simplifications 2019-11-26 15:55:07 -06:00
adelikat 24a0bdbbed Tastudio/InputRoll - improve performance in UpdateValues some 2019-11-26 14:37:49 -06:00
adelikat 1e53d8221f tastudio - set branches and marker views to the same font as the main inputroll 2019-11-26 14:24:31 -06:00
adelikat ea6b67ac39 cleanups in Bookmarks and Marker Controls 2019-11-26 14:10:54 -06:00
adelikat 9a54a461b5 don't redraw twice on Branches and Markers UpdateValues() 2019-11-26 13:34:24 -06:00
adelikat 31114e6abf FastUpdate - do nothing, super speed up for shift+tab. UpdateValues - remove unnecessary Draw 2019-11-26 13:16:32 -06:00
adelikat fed8cd335d fix a few designer files I missed when refactoring default values 2019-11-26 13:11:24 -06:00
adelikat 47273f1278 Tastudio - fix FastUpdate being slower than Update, it seems to need the same logic but just forgot all the logic, let's ensure it doesn't forget 2019-11-26 13:03:28 -06:00
adelikat 69e5a3b088 Tastudio - fix major slowdown when moving the mouse over the InputRoll 2019-11-26 12:58:04 -06:00
adelikat 22fdbd08d0 InputRoll - don't hardcode padding variables in the constructor 2019-11-26 12:51:36 -06:00
adelikat bab5877d1a InputRoll - don't hardcode GrideLines to true 2019-11-26 12:44:31 -06:00
adelikat 56b33498d9 InputRoll - rip out the UseCustomBackGround flag, and only key off the existence of the override. Seems to be a speed hack, but the only attempt to make it faster (in ram watch) was actually making things slower 2019-11-26 12:33:39 -06:00
adelikat a45b33b8c6 move arrow key hack from tastudio to inputroll so it applies to all inputrolls 2019-11-26 12:07:00 -06:00
adelikat cd672da319 a few inputroll/tastudio cleanups 2019-11-26 11:36:55 -06:00
adelikat 9b93c557b8 InputRoll - don't hardcode disabling of Home and End, make it a flag instead (true by default, false for tastudio's inputroll), also fix home/end to be expected listview behavior and delete ctrl+home, ctrl+end those aren't expected behaviors 2019-11-26 10:09:24 -06:00
adelikat 557c68862e InputRoll - make AllowRightClickSelect true by default 2019-11-26 09:42:14 -06:00
adelikat 64f32983f6 misc movie code cleanups 2019-11-25 08:37:11 -06:00
adelikat 6eef264f91 paste - only invalidate on the first different frame pasted, rather than the first selected frame 2019-11-24 19:14:49 -06:00
adelikat cb912bea58 Tastudio - when clearing, invalidate on the first non-empty input rather than first selected row 2019-11-24 17:53:27 -06:00
adelikat 5bbdf2a49e Tastudio.MenuItems - cleanup, fix potential NRE's surrounding clipboard access, fix off by one on clear menu item invalidation logic, fix not dispointing of a disposable dialog 2019-11-24 16:54:08 -06:00
adelikat 1f4a2274d3 TasMovie - more cleanup 2019-11-24 16:06:01 -06:00
adelikat 60487c6a96 don't use Guid.GetHashCode, this was a leftover from some old bad code 2019-11-24 15:53:33 -06:00
adelikat caced9c2a8 TasMovie - remove unused constructor params 2019-11-24 15:40:26 -06:00
adelikat 883fea9ec6 Add a font picker, fixes #952 2019-11-24 14:58:58 -06:00
adelikat 8bbc2c75d0 lua - tastudio.loadbranch - use the already existing (and better) load branch method 2019-11-24 14:41:03 -06:00
adelikat 2aaae85c36 InputRoll - use the built in Font property rather than a private variable. Make the default the natural control default, and set the main Tastudio InputRoll window to be arial 8 2019-11-24 14:38:05 -06:00
adelikat 4e9b780539 Lua - implement tastudio.loadbranch #fixes #1650 2019-11-24 13:55:46 -06:00
adelikat 74e1f97ebb cleanups in BookmarksBranchesBox 2019-11-24 13:00:03 -06:00
adelikat b4c4c3b870 .tasproj - use json to save/load statemanager settings. This is a breaking format change, earlier .tasproj will load and silently fallback to default settings 2019-11-23 21:43:23 -06:00
feos d15dc56e15 address #1631 for gambatte 2019-11-20 21:25:55 +03:00
feos 4e389ab1ec address #1631 for subneshawk 2019-11-20 21:10:21 +03:00
feos b70c49892c omit autosaving if we have the default project name
close #1599
2019-11-20 20:04:03 +03:00
adelikat adf834480a remove .bkm as a standard movie type, require user to run the importer 2019-11-14 21:39:15 -06:00
J.D. Purcell 6eb44acd4f Fix noise from last merge. 2019-11-03 18:04:31 -05:00
adelikat b9ade1a555 Merge branch 'master' into MoreUnixMonoCompatWork 2019-11-03 12:55:53 -06:00
J.D. Purcell fae50bc807 TAStudio: Fix crash when ctrl+clicking with no previous row selected. 2019-11-03 10:51:24 -05:00
adelikat 5d6c33f080 remove TAStudio ui that was picking the renderer (it's automatic now) 2019-11-01 15:56:26 -05:00
adelikat 6c7653e158 Merge branch 'master' into MoreUnixMonoCompatWork
This doesn't compile because of Input.cs, didn't know what to do. Also search for Merge TODO for some commenting things that probably need to be deleted
# Conflicts:
#	BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
#	BizHawk.Client.EmuHawk/CustomControls/InputRoll.Drawing.cs
#	BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs
#	BizHawk.Client.EmuHawk/Program.cs
#	BizHawk.Client.EmuHawk/tools/Lua/LuaConsole.cs
#	BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
#	BizHawk.Client.EmuHawk/tools/ToolHelpers.cs
#	BizHawk.Client.EmuHawk/tools/ToolManager.cs
#	BizHawk.Client.EmuHawk/tools/TraceLogger.Designer.cs
#	BizHawk.Client.EmuHawk/tools/TraceLogger.cs
#	BizHawk.Client.EmuHawk/tools/Watch/RamSearch.Designer.cs
#	BizHawk.Client.EmuHawk/tools/Watch/RamSearch.cs
#	BizHawk.Common/BizInvoke/DynamicLibraryImportResolver.cs
2019-10-31 17:01:19 -05:00
J.D. Purcell 28c0586c8b InputRoll horizontal - WIP. 2019-10-27 21:00:52 -04:00
J.D. Purcell 90724bb777 Work on InputRoll horizontal mode a bit. 2019-10-27 17:55:53 -04:00
adelikat f579961823 marker control - no need to set Color.White, that is the default 2019-10-27 10:14:29 -05:00
adelikat cbace55d01 Tastudio - misc cleanups 2019-10-27 09:59:05 -05:00
adelikat aaee3cf48c Tastudio - fix splitter restore logic on restore defaults 2019-10-27 09:34:32 -05:00
adelikat 6604e5dc17 InputRoll - cleanup and fix some typos 2019-10-26 17:16:15 -05:00
adelikat b54be19e9e InputRoll - reorg - put in its own folder, break out column and cell classes into separate files 2019-10-26 16:49:52 -05:00
adelikat 437c2f067a TAStudio - Consolidate the two restore defaults menu items. Restore splitter positions when restoring defaults 2019-10-26 11:40:04 -05:00
J.D. Purcell 6395089a9c TAStudio.ListView.cs: Fix missing alpha values. 2019-10-25 18:02:31 -04:00
YoshiRulz d0159ee565
Port InputRoll by adding GDI+ implementation
also available for Windows users via a toggle in TAStudio
2019-10-25 19:17:50 +10:00
adelikat c0e2529b20 tastudio - don't nag about inaccurate cores if autoloading a file 2019-10-24 15:49:23 -05:00
J.D. Purcell 1df41efc0d Consolidate core accuracy warning dialog. 2019-10-21 23:54:16 -04:00
adelikat ccdf616d46 convert Tastudio UndoHistory from VirtualListView to InputRoll 2019-10-19 20:03:05 -05:00
J.D. Purcell eed94c11cc TAStudio: Improve control alignment and fix branches/markers not showing due to DPI scaling. Fixes #1151. 2019-10-13 13:04:23 -04:00
James Groom 90b0574bc3
Remove unnecessary calls to ToList (e.g. in foreach)
squashed PR #1591
2019-10-13 15:50:57 +00:00
J.D. Purcell 9b8db26086 TAStudio: Disable DPI scaling at least until I find a proper fix. It's ugly but now usable at 150% scaling. 2019-10-12 23:27:42 -04:00
J.D. Purcell 0dcb0b9bb4 Fix DPI scaling issue in custom message boxes (Snex9x/QuickNES accuracy warnings). 2019-10-12 22:34:53 -04:00
adelikat 512b03f1b4 misc cleanups in tastudio files, mostly typos and redundant code 2019-06-28 17:51:03 -05:00
adelikat 5075160355 some cleanups 2019-06-15 18:38:56 -05:00
adelikat 3ec2ec325a IStateManager - refactor indexer to not return a keyvalue pair, since it by design will try to return the exact frame, returning the frame is redundant 2019-06-15 16:43:21 -05:00
adelikat 394a6d86b5 According to the TSM api, the indexer will never return null, check length instead 2019-06-15 16:38:33 -05:00
adelikat cd0c237e31 simplify some tastudio logic 2019-06-15 16:26:16 -05:00
adelikat 5366b854a6 remove unnecessary savestate clone 2019-06-15 16:20:57 -05:00
adelikat eaef336492 rip out IStateManager.MountForWriteAccess() and simplify 2019-06-15 16:06:35 -05:00
adelikat 2a8b4504cd Simplify 2019-06-15 15:43:22 -05:00
adelikat e0a51eaab1 Rename IStateManager.StateCount -> IStateManager.Count 2019-06-15 14:49:43 -05:00
feos 2423f44540 tastudio: drop laglog from branches since they don't have greenzone anymore 2019-06-13 19:39:52 +03:00
feos bc990061b7 tastudio: refactor out a variable
fix autorestore triggering while drawing on future frames
2019-06-12 22:34:16 +03:00
feos b90e4b9838 tastudio: fix seek progressbar not to disappear on (every other) middle-click and || button
mainform: show pause icon first, even if we're seeking, because seeking is mostly a tastudio feature and its status is reported by tastudio already. fixes #1456
2019-06-10 23:34:19 +03:00
feos f5bcdc4aba fix #1513
OSD info on branch hover is mandatory, so I'm not removing it. drawing the branch OSD-framebuffer on the emulator screen is barely possible without butchering everything, so I'm not doing it. instead, keep both core and client framebuffers and use them where they make sense: osd FB shows up on hover, core FB goes to emulator screen on branch load.
2019-06-09 20:34:14 +03:00
alyosha-tas 65e350ef7d Fix #1553 2019-05-27 10:56:58 -04:00
alyosha-tas 7c3d4f7e48 use previous value 2019-04-27 10:30:50 -04:00
alyosha-tas d726a6476f Fix #1555 2019-04-27 07:59:10 -04:00
alyosha-tas 655729f29c TAStudio: orderly shutdown if starting TAStudio returned nullEmulator. 2019-04-21 08:46:50 -04:00
YoshiRulz e6374ef477
Use string interpolation 2019-03-19 00:06:37 +10:00
feos 766de68e18 tastudio: don't tell about clipboard if it's empty 2019-01-23 17:24:42 +03:00
alyosha-tas c4b3a7c3b8 TAStudio: Update window name when using saveas, Fixes #1444 2019-01-19 14:47:12 -06:00
alyosha-tas 6e1a19b5f8 TAStudio: Ask to override existing bk2 file when exporting 2019-01-19 14:02:45 -06:00
alyosha-tas 2bddf3663e TAStudio: Fix some bugs in new from menues 2019-01-19 13:30:42 -06:00
feos 56e77f4907 tastudio: allow to actually unbind markers from input, and unbind by default 2019-01-05 21:48:40 +03:00
feos cd2d63b04a tastudio:
- don't use branch laglog after loading it. it's useless because we invalidate if needed anyway
- PauseOnFrame being null started to crash seeking, fixed
- make use of movie alias in branchbox
- capture tsm state after loading the branch

todo: if we load a branch in the middle of invalid greenzone, advancing won't draw new greenzone even tho states are being created. laglog doesn't seem to allow gaps either. unsure how to resolve
2019-01-05 21:30:06 +03:00
feos 3857ccc18f fix #1388 2018-12-04 19:57:01 +03:00
feos 8e58777c70 tastudio: update branchview buttons on any selection change
fix crash on branch dbl-clk without selection
2018-12-04 00:53:53 +03:00
feos c85bb39d98 tastudio: branch loading now can behave as it does for regular rerecording!
Old control scheme for Branches ON:
- Loading in read+write (recording) mode restores the branch input and truncates it after the branch frame
- Loading in read-only (playback) mode only makes emulation jump to the frame of the branch, disregarding its savestate and timeline

Old control scheme for Branches OFF:
- Loading a branch ALWAYS restores its entire input

TASEditor adds to this that you only start recording after you load a branch in rec mode, but I don't think this is important here.
2018-12-04 00:16:14 +03:00
feos d03e12590e tastudio: make state-save hotkeys usable if the slot is empty, just add a branch 2018-12-03 23:27:21 +03:00
feos 731584344d tastudio: BranchesRestoreEntireMovie and LoadBranchOnDoubleclick 2018-12-03 22:33:42 +03:00
feos 0433b10d31
Revert "This fixes a bug in TAStudio where you cannot use '<'to get to frame 0" (#1382)
I'm committing the proper fix after this
2018-11-28 22:03:16 +03:00
adelikat b73e9d2f7a
Merge pull request #1371 from TASVideos/rewind_frame0
This fixes a bug in TAStudio where you cannot use '<'to get to frame 0
2018-11-18 11:07:11 -06:00
adelikat 06bb89791f Add a nag when attempting to record a quicknes movie (but allow the user to continue), fixes #1353 2018-11-18 10:05:12 -06:00
adelikat c8265f6c10 allow snes9x movies to be recorded (still nag, but allow the user to continue) 2018-11-18 09:52:35 -06:00
alyosha-tas 4794c1bd46
Add files via upload 2018-11-18 09:04:56 -06:00
Isotarge e808618981 TAStudio: Squish some more exceptions
- Opening a TASProj or closing BizHawk with the Virtual Pad open
- Opening TAStudio with small window size saved in settings
2018-10-19 12:35:14 +10:30
feos fbdea8282d add missing zxs mnemonics
tastudio: properly handle Show X menu items
2018-09-10 20:22:41 +03:00
feos 47a66db995 tastudio: break keys into as many menus as needed, and show their ranges
the code looks somewhat crazy
2018-09-09 21:13:42 +03:00
feos 1b6d6988fc tastudio: break the keys menu into 2 dropdowns
WIP
2018-09-09 19:46:55 +03:00
feos 0893d96a7e tastudio: menus for keys 2018-09-09 17:41:57 +03:00
feos ef89b7bf67 tastudio: don't create player menus if we don't even have players 2018-09-09 16:48:25 +03:00
feos 1455e4cad7 tastudio: hide a few computer columns by default 2018-09-09 15:38:45 +03:00
feos 86999815f7 tastudio: show branch screenshot on the right if it's offscreen
fix #1311
2018-09-08 19:32:27 +03:00
feos c2e2e9a1f7 tastudio: fix #1310
we don't need statecount info to be THAT up-to-date
2018-09-07 23:33:07 +03:00
feos 08e33f7ec1 tastudio: make current branch track its new pos upon reordering 2018-06-23 00:47:46 +03:00
feos cea1a04425 tastudio: select newly created branch
makes button action experience smoother
2018-06-23 00:31:16 +03:00
feos a751131787 tastudio: disable shift+up/down, it breaks float editing mode 2018-03-12 21:41:11 +03:00
feos 61bf9b67a8 tastudio: a whole bunch of actions shouldn't be possible with no selection 2018-03-12 21:41:11 +03:00
feos 560092ffae tastudio: allow scrolling/jumping to marker 0 2018-03-11 20:05:33 +03:00
feos 661a15dc2c tsm decay: remove states within internal state gap
states settings: clamp things harder
2018-03-11 17:57:30 +03:00
feos 7162de1d3c tastudio: let's just report state count
will help to sort out possible decay bugs
2018-03-11 14:59:58 +03:00
feos e8103a1c53 tastudio macros: don't die from colons in paths when saving to file
disable macros menu items when there's no selection
2018-03-08 22:58:18 +03:00
TASeditor 6580c2abef Tastudio: drawing stuff, selection, patterns, add column lua function (#1125)
* alt+columnclick draws pattern
* selection: taseditor logic
* shift/ctrl keys restructure to taseditor
shift + up/down: move frame courser up/down by one
shift + pageup/pagedown: move frame courser to next/prev marker
ctrl + left/right: add/remove selection at last selected row
ctrl + shift + left/right: add/remove selection at first selected row
* Alt+drawing pattern
still not working with drawing upwards
* pattern drawing
upwards drawing working except it doesn't update last row.
TODO: Disallow Alt click to focus on menu.
* pattern: last input ignoring fixed
* Lua columnms
TODO: Don't save them into tasproj
* no need to update float edit stuff or cell changes when its not needed
* Shift+clicking draws input from first selected row to clicked cell
* fixed pattern drawing on empty cells
2018-03-08 22:15:47 +03:00
feos 40e28f2f98 tastudio: enable paste menu items when clipboard is available 2018-03-08 19:23:26 +03:00
feos b2642cd0d9 tastudio: let's try this super annoying method to introduce *intended* control scheme to users 2018-03-08 15:31:07 +03:00
feos f81f41f6f7 tastudio: fix #916 2018-03-08 14:44:09 +03:00
feos bf8c21663d
State manager decay (#1128)
* Finally use exponential decay algorithm for greenzone
  * Works in both directions (unlike fceux taseditor)
* Stop using last accesses states for anything
* When dropping states per project save, account for state gap better
* Use _states.Keys[i] instead of _states.ElementAt{i).Key in speedy parts, because it's apparently tons faster
* Use StateIsMarker() where it's supposed to be used
* Markers are still left untouched
* Branch states are still dead (probably forever)
2018-03-08 12:24:35 +03:00
feos 0fe703c9b7 tsm: redo the algo from scratch, probably not last time 2018-02-27 01:28:24 +03:00
feos 7ae374df01 tastudio: fuck this 2018-02-21 02:06:25 +03:00
TASeditor 36900b15d4 tastudio lua: setinput functions, onbranch callbacks (#1098) 2018-02-10 14:58:46 +03:00
vadosnaprimer fb692806c3 tastudio: supposedly fix #1090 question mark 2018-01-10 22:32:22 +03:00
vadosnaprimer d074880242 tastudio: MarkerView.ShrinkSelection() 2018-01-10 22:06:43 +03:00
vadosnaprimer 5bff769fe9 tastudio:
- scroll to new marker and new branch
- don't kill selection per marker removal
2018-01-10 22:06:41 +03:00
zeromus c17f793733 in 1809d19ecb @vadosnaprimer made the disk capacity for greenzone disabled, but for some reason old settings files may still be setting a value into it, or maybe old tasprojs or something, so I just put a big limit on it so things dont crash. /shrugs 2018-01-09 14:21:58 -06:00
vadosnaprimer fcb7588724 use actual Clamp() 2017-12-01 18:19:29 +03:00
vadosnaprimer cea50c1ab1 fix #1072
thanks for helping, .net
2017-11-30 19:53:52 +03:00
vadosnaprimer 1809d19ecb smart state gap for greenzone. fix #915
disable disk capacity setting
2017-11-05 22:34:58 +03:00
vadosnaprimer fbbe42d7fa tastudio: drop logic that shrinks branch screenshot popup
the fact that it was screwing up osd text (that's not pixel based by design) causes more problems than smaller popup was ever intended to solve. and it's not branch or tasproject size, because screenshots are stored in the same resolution as your emulator screen. so I don't even know which problems it was solving. if it was made to shrink because originally it couldn't expand outside tastudio, this has been resolved a while ago, and we can afford covering as much user screen as they already cover with emuhawk. unless they complain, then it can return as an option.
2017-11-05 17:33:12 +03:00
feos 1bd535c31f tastudio: don't trigger right button up events if left button is still held down 2017-10-07 23:40:54 +03:00
feos 7529570ab8 tastudio: unbreak things if user cancels movie conversion on file open 2017-10-07 23:17:02 +03:00
feos 84412eafd9 tastudio: do normal seeking while recording too. needs testing
if you go to a frame while recording and unpaused, it will seek to that frame (not touching input since rec mode is suspended), and after it reaches it, it will unpause and restore rec mode
2017-10-07 15:20:30 +03:00
adelikat 62c2e0fc6a TAStudio - remove ability to edit the platform id when editing the header 2017-07-30 14:21:40 -05:00
adelikat f424a22033 Tastudio - fix recent menu - fixes #920 2017-07-17 11:20:59 -05:00
adelikat f53624f336 tastudio greenzone settings - don't check for if 64 bit process 2017-07-09 09:39:36 -05:00
adelikat ac6b18c137 tastudio - change performance profile nag to a snes9x nag 2017-06-12 20:56:32 -05:00
feos 3ba4adb6bc tastudio: finish moving column click edits to taseditor logic 2017-05-29 20:20:44 +03:00
adelikat 19dde8018a InputRoll cleanups 2017-05-24 11:45:57 -05:00
adelikat 74b2cca967 more tastudio cleanups 2017-05-24 10:50:25 -05:00
adelikat b03e224c5e TAStudio cleanup 2017-05-24 10:49:35 -05:00
nattthebear ebe789eed2 heh 2017-05-10 07:45:23 -04:00
feos 8dcf9fb61a tastudio: tweak editing selection by clicking column header
instead of reverting every button state, apply the reverted state of the first selected frame to all the selection
2017-04-23 14:47:10 +03:00
adelikat 1184e8ed05 lua - implement tastudio.getselection(), tastudio.insertframes(), tastudio.deleteframes() 2017-04-22 20:50:03 -05:00
J.D. Purcell b53502eed8 Spaces -> tabs. 2017-04-15 16:37:30 -04:00