J.D. Purcell
b53502eed8
Spaces -> tabs.
2017-04-15 16:37:30 -04:00
adelikat
fc59710dab
some code cleanup, mostly introducing C#6isms, also add a customized resharper+stylecop settings file in case anyone is using resharper
2017-04-10 10:30:05 -05:00
adelikat
c61d432fd6
Don't position tools to last saved position if that position is not visible on screen
2017-02-21 16:57:47 -06:00
adelikat
5277be6833
Ram Search - update the size and display type dropdowns on restart. Fixes #762
2017-02-07 18:54:58 -06:00
adelikat
4a7321b096
Ram watch - yet another tweak to restart logic, ugh
2017-01-29 20:21:47 -06:00
adelikat
dca03607be
Ram watch - another tweak to previous commit
2017-01-29 19:56:09 -06:00
adelikat
c5ff514760
Ram watch - fix logic when deciding whether to keep the current watch list when rebooting the core, the check was always failing
2017-01-29 19:32:52 -06:00
adelikat
44a1e691f3
Ram Search - show restored/removed messages when undoing/redoing, fixes #749
2017-01-14 20:00:55 -06:00
adelikat
e73a66b07e
When ram watch is open with a file open, and loading another rom, only keep the ram watch file open if all the domains are compatible, else close it, addresses #285 . There is arguably not a black and white expectation in this scenario but I think this is marginally more expected than exceptions and erroneous watch values
2016-11-12 11:46:32 -06:00
adelikat
36dcf53cc0
on specialized number boxes, select all text when reseting an empty box to a default value. This fixes #685
2016-11-09 10:19:49 -06:00
adelikat
3f191be372
Ram Search - Better event to tie toolbar enabling logic to for indices changing - fixes #629
2016-09-21 14:31:42 -04:00
adelikat
3bf11dbf68
Fix slow Ctrl+A on Ram Search and Ram Watch, fixes #630
2016-09-21 10:56:57 -04:00
zeromus
a7d2b8d7f7
* add a new IToolForm update mechanism which has extensible update points (so a tool can both pre- and post- update)
...
* make trace logging "core-pushes" model, to a sink installed by the frontend. This sink can go straight to the disk without wasting memory if that's what the Trace Logger tool has selected; or the Trace Logger will buffer it if it needs to. Formerly, we had a "core-pushes-to-buffer" and "client-pulls-once-per-frame" which necessarily caused huge buffers no matter what was going on.
2016-08-13 15:31:26 -05:00
parasyte
71c7edbb24
Add address mask setting for breakpoints
2016-08-08 04:37:39 -07:00
Isotarge
e0ac148e76
Fix #669
...
- Fixes RAM Watch, RAM Search, and RAM Poke usability issue w/negative
numbers.
- Bonus fix for unhandled exception when entering . in to the specific
value box
2016-07-22 02:15:43 +09:30
Isotarge
41ff244e01
Poke: Ram -> RAM #669
2016-07-22 01:52:43 +09:30
Isotarge
5a20a520bd
Tools: Ram -> RAM #669
2016-07-22 01:32:54 +09:30
nattthebear
111648cf98
Break a bunch of memory domain stuff with pointless refactoring
2016-04-13 19:50:06 -04:00
zeromus
66683b16ed
replace "Ok" with "OK"
2016-03-26 21:50:33 -05:00
Isotarge
822f571621
RAM Search: Fix unhandled exception
...
Fixes an unhandled exception when beginning to type a negative number
into the search box when display is set to float
2016-03-05 08:11:08 +10:30
zeromus
2f50771494
fix ramwatch popup dialogs not referencing ramwatch as parent
2016-02-17 16:37:53 -06:00
adelikat
51e12040d1
Ram Watch - fix logic that determines whether to show Freeze or Unfreeze in the context menu
2016-01-31 11:55:00 -05:00
adelikat
9cb0072f0f
Ram Search - also fix leadings zeros in the Difference box
2016-01-31 09:15:17 -05:00
adelikat
0013646db5
Rip out obsolete notion of a WatchList domain, change ram watch menu item to Default Domain, who's functionality is simply to decide the default domain used when adding a new watch, also add some Visual Studio designer shenanigans for a previous commit I made that broke it
2016-01-30 22:17:31 -05:00
adelikat
aaf4d39b58
Ram Watch/Search - misc code cleanup
2016-01-30 21:21:17 -05:00
adelikat
6f75ef6dba
Move another function to ToolFormBase
2016-01-30 21:07:03 -05:00
adelikat
894a9c2318
Rework ToolHelpers from a static object to ToolFormBase that inherits form and have a lot of tools inherit it, in hopes of moving a lot of copy pasta into a base class, move a few functions that show up a lot there
2016-01-30 20:24:53 -05:00
adelikat
7bb3e04105
Ram Search - fix having lots of leading zeros in the different by box
2016-01-30 18:28:29 -05:00
Connor Olding
f0c939d87c
reimplement strings for OSD watches
...
also fixed saving separators
2015-12-23 17:18:39 -08:00
Hathor86
a7074c6341
ExternalToolManager and BizHawkExternalToolattribute
...
Add those 2 classes in order to help handling of external tools
- Also fix value setting in watches constructor
- Bugfix in loading externaltools (they loaded multiple times)
- Add new version of Hello World external tool
Whitespaces noise in RamWatch.cs... :s The code hasn't changed
2015-12-13 21:38:35 +01:00
Hathor86
708bb4fa93
Final stuff to WatchList
...
Now fully use comparer class. That saves memory and offer extensibility
ItemCount property obsolete => Moved to Count property (which did the same thing)
Moved ConfigPersistAttribute.cs, IToolForm.cs, IToolFormAutoConfig.cs back to common
2015-12-09 00:54:54 +01:00
adelikat
48487f2a90
Sort out and fix problems with Ram Search watch files showing up in the Ram Watch recent list
2015-12-04 23:18:46 -05:00
Hathor86
32271899c3
Comments on Watch derived class; started on watchlist
...
+ Moved WatchList.cs to specific directory (just a matter of ordering)
+ Mark some properties and methods in watchlist as obsolete
+ Create Comparer class that are used for sorting (Only domain and
address atm, other a still stored with linq). Unlike OrderBy in LINQ, it
doesn't create a new list for sorting (so it saves memory), furthermore,
it runs faster.
Finally, change to type of Watch.Address from nullable lon to regular
long (the rare times watch.Address.Value was used, there wasn't any
check of null and so, program would have crashed -
InvalidOperationException -)
2015-12-01 22:18:55 +01:00
Hathor86
1e2f4e12be
Watch refactoring
...
Some improvement when you get Available types. Used to return a new
array each time you call the function. It has been transformed into an
IEnumrable and yield return.
DisplayType, PreviousType and Watchsize have been moved outside the
Watch Class
2015-11-28 22:52:00 +01:00
Hathor86
d4b4c06f0c
Draft of API
...
So, I create a new dll named BizHawk.Client.ApiHawk and moved few stuff
to it.
Also moved some stuff to BizHawk.Client.Common. Don't think it can be
desiociated.
I started comment Watch and rearrange code (put some #region etc...
It compiles and it seems working :)
2015-11-26 23:05:29 +01:00
zeromus
53eae133e7
fix #537 Annoyance with "always on top"
2015-11-12 17:32:49 -06:00
zeromus
be4af1ec2f
when editing watches, populate the edit dialog with the actual memorydomain of the watch you're editing, instead of mainmemory
2015-11-03 03:24:25 -06:00
zeromus
7e0996b44b
fix Memory watch: Strange rectangle #526
2015-10-18 22:13:41 -05:00
zeromus
7e9c966887
fix some weirdly bloated dialog box resx files simply by deleting their icons and re-setting them
2015-10-13 00:14:12 -05:00
adelikat
1ee56ea4ef
Ram Search - fix save menu item adding to ram watch recent files instead of ram search
2015-10-11 09:53:32 -04:00
adelikat
6d4dea9a14
Don't attempt to remember tool window size/position if tool is minimized/maximized, this fixes issue #491 but also fixes the bug in every tool (unless there is a tool that does not implement IAutoToolFormConfig that I missed in this changeset)
2015-09-05 17:05:14 -04:00
adelikat
8a4e33981c
Ram Watch - only show the Read/Write breakpoints context menu items if the selected address(es) are on the system bus, and only show if all the criteria to use them are available rather than showing and disabling them.
2015-07-21 22:30:38 -04:00
zeromus
f8497507f7
proof of concept: handle VirtualItemsSelectionRangeChanged on VirtualListView to fix some bugs when shift+clicking. Better fix is to correct all this stuff at the base class level and turn it into a more normalized event that works the way you expect.
2015-07-18 12:32:48 -05:00
scrimpeh
60c3734e8c
Ram Watch - Fix moving up and down blocks of identical Watches
2015-07-05 18:55:43 +02:00
adelikat
5d5a4d10f2
Ram Search - make IInputPollable an optional service not a required one
2015-04-17 15:21:19 +00:00
SuuperW
9b8d2f70ab
Various fixes
2015-03-22 16:55:34 +00:00
pjgat09
876bb5adf4
Ram search: fix searching for a specific value >= 0x80000000
2015-03-15 02:35:47 +00:00
scepheo
32b788b352
Hex Editor and new RAM Watch now default to memory domain byte size.
2015-02-24 10:18:20 +00:00
adelikat
abbfcad071
Fix Ram Watch designer file
2015-02-08 22:30:18 +00:00
scepheo
714f4a9687
RAM Watch: Added read/write breakpoint setting to context menu.
2015-02-08 17:39:59 +00:00
scepheo
0ff1808101
RAM Search: Fixed go-to using index instead of address.
2015-02-08 00:35:32 +00:00
scepheo
bdfdd96686
RAM Poke: Pressing the "Poke" button now also closes the dialog.
2015-01-30 16:15:08 +00:00
adelikat
5636c1b6a1
Ram Search - support copy similarly to ram watch
2015-01-27 03:09:13 +00:00
adelikat
f547dfbb21
some fixes to last commit
2015-01-27 02:53:57 +00:00
adelikat
bb2cd1b476
Ram Watch - support copy and paste (generates and receives the same text as would be in a .wch file)
2015-01-27 02:37:18 +00:00
adelikat
e51ffd95d8
Ram Watch/Search - disable poke and freeze toolbar items based on writability of a domain, also smarter enabling/disabling of them in general
2015-01-25 16:07:15 +00:00
adelikat
71d7c2537a
Ram Watch/Search - also disable freezing if a domain is not writable
2015-01-25 15:15:56 +00:00
adelikat
7ed8704555
add a CanPoke() extension method for memory domains, checks for a null or not implemented Poke Poke delegate, use it to disable Poke on Ram Search and Ram Watch, still todo - hex editor and lua
2015-01-25 14:37:37 +00:00
zeromus
2a1f40982c
dont know how valuable it will be, but just in case.. 16.16 fixed point support
2015-01-22 01:24:20 +00:00
adelikat
aff2e9544e
Ram Search - change "Add to Ram Watch" hotkey from ctrl+R to ctrl+W for consistency
2015-01-21 23:20:58 +00:00
adelikat
a8b1fc609a
Ram Poke - handle the case of an absurd amount of addresses picked
2015-01-19 02:04:04 +00:00
adelikat
ebf7273cbe
Hex Editor - open poke dialog in a logical location, update the hex editor when Poke is clicked on the Poke pop up dialog
2015-01-19 01:39:47 +00:00
adelikat
f647f16592
Ram Watch - add/edit watch - support 32 bit domains
2015-01-18 19:50:31 +00:00
adelikat
515a41592c
Convert a whole bunch of ram stuff from int to long
2015-01-18 18:59:23 +00:00
adelikat
6507fa5d92
Hex Editor - convert addresses from int to long, fixes Go to address on 32bit domains, highlighting on addresses after 7FFFFFFF is still busted though
2015-01-18 18:01:27 +00:00
adelikat
fbdb29b64c
refactor IMemorydomains to be a domain list instead of having a domain property, refactor cores to register an IMemoryDomains instead of being one
2015-01-14 21:55:48 +00:00
adelikat
ab518e9e7c
Ram Search - Issue 342 - add an "Account for lag" option to the auto-search feature, on by default because I decided that you probably really want that most of the time and don't realize that you do
2015-01-02 21:53:39 +00:00
adelikat
153e823f78
Ram Search - a minor code refactor - remove a functional call that is only used once in another function and just do the code there
2015-01-02 21:33:03 +00:00
adelikat
38c1ffa1e9
Fix autoloading of Ram Watch
2015-01-02 15:19:18 +00:00
adelikat
47d1e480da
Ram Watch - a null check
2015-01-02 14:40:18 +00:00
adelikat
89fcceecfc
ToolManager - support autoloading from custom settings that inherit ToolDialogSettings, Ram Search - convert recent files to ConfigPersist
2015-01-01 02:08:45 +00:00
adelikat
31823693ae
Cheats, Ram Watch - Fix bugs in column hide/show in new system
2015-01-01 01:21:06 +00:00
adelikat
6440c9c44b
Ram Watch - convert to ConfigPersist, and do column stuff the new way
2015-01-01 00:47:22 +00:00
adelikat
fd28a593f6
Ram Watch - add a null check on Restart()
2014-12-22 00:59:39 +00:00
goyuken
78ea103114
ramwatch fix
2014-12-21 21:43:03 +00:00
scepheo
eaaaef8f1d
RamSearch: Have Restart() handle settings loading so RAM Search actually works again.
2014-12-17 20:04:25 +00:00
adelikat
ffe3be09a4
Remove some now useless logic in the Restart() method of some tools (checking IsHandleCreated and IsDisposed)
2014-12-17 03:48:08 +00:00
adelikat
95c57da72c
Ram Watch - add back the text property as "Ram Watch" don't know when that went blank
2014-12-17 03:03:12 +00:00
scepheo
14e2b280ac
Removed reference to Global.Emulator from RamSearchEngine.
2014-12-16 01:50:22 +00:00
scepheo
77be509e44
RAM Search: Implement previous type "last change". Fixes issue 331.
2014-12-16 01:19:29 +00:00
goyuken
ea47246658
remove the IEmulator inheritance from some services, and fix code as needed
2014-12-15 22:25:06 +00:00
goyuken
7b580e7dca
tim the tool form taylor
2014-12-15 03:19:23 +00:00
adelikat
3af65a6498
removed some deletable code I missed
2014-12-14 01:42:05 +00:00
adelikat
8eda262ebe
convert Ram Watch and Hex Editor to use EmulatorServices
2014-12-13 22:54:07 +00:00
adelikat
c00b8ad78e
Ram Search - convert to using EmulatorServices
2014-12-13 22:40:04 +00:00
scepheo
769cbeb1a0
- IToolForm: Added RequiredServices attribute to define dependencies, and added EmulatorServices for ToolManager to supply them.
...
- IServiceProvider, BasicServiceProvider: Added compile-time unknown type versions of GetService and HasService.
- ToolManager: Added IsAvailable to test whether all dependencies for a tool are available.
2014-12-13 21:54:59 +00:00
goyuken
0b16e36776
fix issue 330
2014-11-29 18:57:57 +00:00
adelikat
e6e2972e3d
Make IMemoryDomains inherit IEmulator and simplify some code slightly as a result
2014-11-23 16:03:04 +00:00
zeromus
200d11df62
cleanup ramwatch during rom loads for other platforms a bit. should fix #285 . the whole concept of ramwatch when loading other platforms needs some help though (the current watches mutate into some format senseless for the new platform)
2014-10-11 19:49:22 +00:00
adelikat
a71031d6d0
fix the same stale memory domain problem from 7909 but in Ram Search
2014-09-28 16:51:06 +00:00
adelikat
f4d3b70469
Ram Watch - fix issue with stale memory domains when rebooting a core, some cores were unaffected, cores like atari 2600 were affected by this bug
2014-09-28 16:39:53 +00:00
adelikat
5ba74c631c
Remove MemoryDomains from IEmulator into a new Interface, IMemoryDomains, Add this interface to existing cores, except null emulator (and removed memory domain related code from it). Refactored EmuHawk for ram tools to use an instance of IMemoryDomains rather than IEmulator, don't expose ram tools unless the core implements IMemoryDomains. Still a few misc todos, and probably some cleanup
2014-09-01 18:43:41 +00:00
kylelyk
321c8c64bf
Added documentation to IControlMainForm, renamed a few variables, moved IControlMainForm related code in MainForm to the same region.
2014-08-19 19:24:17 +00:00
adelikat
813d1b1669
Input Roll - FullRowSelect and MultiSelect properties, SelectedIndexChanged event
2014-08-14 23:10:56 +00:00
hegyak
42caa87c67
Correct Error with RAMWatch and seperatorToolStripButton. Also unified all RamWatch internal button names.
2014-08-07 22:48:10 +00:00
adelikat
a84e3b3a3b
Ram Watch - account for separators in my background drawing bypassing logic
2014-08-02 01:36:06 +00:00
adelikat
d89dfd5595
Change Ram Watch and Ram Search to invalidate rather than refresh, also refactor ram search some to have more coherent update methods for when the listview changes size vs when the values need updating
2014-07-30 22:31:52 +00:00
adelikat
2fd1ffe824
VirtualListView - add a UseCustomBackground flag true by default, if set to false it will bypass custom background drawing logic resulting in that speedboost I keep doing checkins for. Refactor RamWatch to check if there is any need to draw ahead of time and set this flag. Most of the time this will result is a good speed boost for this dialog, only if they are watching a frozen address (which isn't very exciting anyway) or an out of range address (which they need to fix) do they suffer the speed cost of background drawing
2014-07-30 21:31:13 +00:00
adelikat
aeea08a823
Cleanup the InputPrompt class, removing unused methods, and converting some silly methods into properties allowing some pretty array initializers instead of function calls
2014-07-28 02:40:30 +00:00
adelikat
5d4ff76ed6
Convert a copy/pasted method in a bunch of tool dialogs to an extension method
2014-07-28 02:31:51 +00:00