adelikat
11b4f5a5b1
Lua - fix #691 - When calling client.reboot_core we still want to re-inject dependencies to the lua libraries
2016-08-28 12:07:26 -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
adelikat
47d9432ad4
Lua - set file watchers on lua session autoload
2016-02-14 21:51:12 -05:00
adelikat
36b82c3563
Lua Console - add a button that installs auto-complete for all bizhawk's lua library to Sublime Text 2's lua syntax, still todo - notepad++
2016-02-07 08:27:57 -05:00
adelikat
907850ce02
Lua - fix exception when reloading a lua script with registered functions while the registered functions dialog is open
2016-02-06 14:22:56 -05:00
adelikat
487fce328b
Lua - add option to detect changes in scripts and automatically reload them. Have this option off by default for now. Also fix reloading of scripts which was recently broken.
2016-02-06 13:50:02 -05:00
zeromus
5e89e563d0
overhaul lua sandboxing so that each lua script has its own sandbox. elaborate tracking of winform/event ownership to ensure that lua doesnt receive calls without going through the owner's sandbox. add win32-specific speed hacks for currdir set/get at higher speed. There may be bugs in this commit, but I think we're on the right track now.
2016-01-31 19:54:55 -06:00
adelikat
30c7b32bc1
Lua Console - when a lua exception occurs we also want to update the script status icons
2016-01-31 19:02:02 -05:00
adelikat
0ff2db5c8d
Lua - ResumeScripts - loop through only running scripts, to avoid sandbox calls for non-running scripts
2016-01-31 14:31:29 -05:00
zeromus
42c0b62261
fix some lua currdir bugs, but its all broken, dont pay any attention to it
2016-01-31 03:18:34 -06:00
zeromus
da865e28b8
try sandboxing currenty directory harder
2016-01-31 02:40:48 -06: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
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
1e57a0a221
Lua Console - remember column widths
2016-01-30 19:20:52 -05:00
adelikat
fdae465089
Lua - refresh the lua console when a script exits
2016-01-30 18:50:05 -05:00
feos
7409a32658
lua: attempt to use sandbox in callbacks.
2016-01-30 23:26:27 +03:00
zeromus
260ad45a88
fix lua's reboot_core function... maybe
2015-12-19 21:14:13 -06:00
feos
eb41e8a8e0
lua: remove registered functions on toggle option.
2015-11-29 22:56:28 +03:00
feos
fbd1d6d8e2
Lua: autoload recent scripts too (unless there's a recent session to autoload).
...
pixelText bg tweak.
2015-11-29 13:29:48 +03:00
feos
128c09e7b4
progress with lua:
...
- added fceux and gens/snes9x pixelated fonts
- added gui.pixelFont() function for them (no resizing, so perfectly scalable)
- added background to drawText and pixelText (halo was painfully slow, so just a box)
- reordered fore and back colors for gui.text (no need to specify back every time we want to change fore). thought its back color was shadow, that is obsoleted by halo now, whose color we can't change. anyway, it's way slower than simple text functions, so they should be used mostly.
- option to toggle all scripts if none is selected. greatly reduces routine when heavily tweaking a script, and is just generally pretty.
2015-11-28 22:19:15 +03:00
zeromus
93e7c91ee9
clean up lua console pause/stop behaviour a little bit and add listview icons to make it more clear what's going on
2015-10-22 16:28:52 -05:00
Tom Rochette
a783ef75f6
Simple Lua sandbox.
...
Uses an EnvironmentSandbox to restore the Environment.CurrentDirectory. Will also catch any script exception and redirect them to the Lua console.
With this change, I've tried to replace all the places where Lua is executed so that if an exception occurs, it is catched, sent to the console and a callback is executed if necessary.
This also fixes a small issue where any callback generating an exception would crash BizHawk.
2015-07-01 22:38:19 -04:00
adelikat
6982df8035
Lua console - add a null check on close, LuaImp should never be null unless something went bonkers on load
2015-03-28 01:09:50 +00:00
scepheo
48a6686f31
Lua Console: Command window gives slightly more sensible output now.
2015-02-08 23:47:15 +00:00
adelikat
53cda95ca5
Lua Console - don't nag to save a session, unless a session exists
2015-01-31 01:52:29 +00:00
scepheo
860227ee66
LuaConsole: Actually stop and restart script upon tool restart.
2015-01-29 14:50:09 +00:00
adelikat
6f2488aa57
Lua - clear out lua drawing surface on restart
2015-01-29 03:36:19 +00:00
adelikat
24a517d293
Lua - properly re-inject core dependencies on restart
2015-01-28 14:38:06 +00:00
adelikat
09072acb3b
Lua Console - immediate box - in some situations wrap the text in a console.log(), such as if the user simply types a variable name
2015-01-27 23:27:44 +00:00
adelikat
3b13ea4a8f
spaces to tabs, good ol whitespace commit
2015-01-27 23:18:48 +00:00
christoph.boehmwalder
99f9d91671
LuaConsole - Fixed tooltip of Duplicate button.
2015-01-03 22:40:11 +00:00
christoph.boehmwalder
e11811e2f8
Lua - Added an input box to the script console for on-the-fly command input
...
Set ImageScaling to None for all buttons in the toolbar in order to fix scaling issues
2015-01-02 19:36:32 +00:00
adelikat
b8d667812b
convert Lua Console to IToolFormAutoConfig
2015-01-01 17:48:25 +00:00
adelikat
a2bee4f88a
Lua Console - move "Autoload Session" to the recent session menu
2015-01-01 17:28:34 +00:00
goyuken
08d09bc64f
a few more itoolform cleanups
2014-12-15 18:13:54 +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
adelikat
21889bba58
Lua Console - replace a NullEmulator check with a Global.Game != null check as that is more precisely why a check is happening
2014-11-30 18:44:20 +00:00
adelikat
4681fef0c2
Add an IsNull() extension method to IEmulator (checks for null and if NullEmulator) and replace EmuHawk NullEmulator checks with this method instead
2014-11-30 14:18:44 +00:00
adelikat
96b626434f
Lua Console - on drag and drop, don't be case sensitive with the file extension
2014-11-26 17:42:30 +00:00
adelikat
e4cd7a3449
Lua Console - when reporting a script error, update the number of active scripts label
2014-11-18 01:09:06 +00:00
adelikat
252ea85f99
Lua Console - add a duplicate script menu and toolbar item, functions similarly to new script except it starts with the text from the highlighted script
2014-11-09 16:18:09 +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
fe09023ef6
When closing the lua console - clear the lua surface
2014-08-16 20:09:57 +00:00
adelikat
7ec866ced5
add some extensions to the ControlExtension class for converting cruddy .NET 1.0 collection objects to IEnumerable<T>, and start removing some code in specific forms that work around cruddy .NET 1.0 stuff
2014-07-28 03:01:57 +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
adelikat
ce4ce0bacc
Convert some static methods in ToolHelpers to extension methods
2014-07-28 01:51:11 +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
570f77cc68
Implement FastUpdate() on IToolForm. The intent here is for tools to do the minimum amount necessary when updating. This allows them to avoid slow things like drawing, but do critical activities such as Ram tools incrementing change counters, and loggers can continue logging. When Turboing, instead of bypassing tool updates, the client will run the fast update instead. Note: a few tools still need to be thought out as to what they need to do in a fast update
2014-07-25 01:55:21 +00:00
zeromus
0fe74f95e7
fix LuaConsole PWD-related bugs
2014-06-03 02:39:15 +00:00
adelikat
0782c9820d
Lua - implement event.onexit() - fires when the calling script stops execution, supports multiple callbacks per script
2014-05-26 03:08:16 +00:00