Commit Graph

47 Commits

Author SHA1 Message Date
jacob1
55e6074942 use override in all possible places 2019-03-09 21:07:32 -05:00
jacob1
3b3775addf Add blur lua event, called when opening another interface window 2018-12-27 21:17:24 -05:00
jacob1
a8489ba6f5 add new events api, replaces legacy event functions
event.register(event.mousedown, function(...) print(...) end)
event.unregister(event.mousedown, somefunc)

mouseclick event split into mousedown, mouseup, mousemove, mousewheel
keypress event split into keypress, keyrelease, textinput. key* events only contain keycode and scancode, don't attempt to represent a letter (was very broken at this before). Also have helpful shift/ctrl/alt flags passed in. textinput just represents inserted text, can probably even handle foreign characters.
register_step replaced with event.tick event

All legacy register_* and unregister_ functions are removed. There is a compatibility lua script, might embed it later. tpt.set_shortcuts / tpt.test also removed. event.getmodifiers added, just a misc function to get the currently held modifiers

Lots of code duplication to handle each event is removed, it's not handled in a more generic way. Although the Event class / child classes could use some work.
2018-11-16 00:07:26 -05:00
jacob1
e5230b5b9f upgrade to SDL 2
Still currently in process, there are some issues:
Windows version doesn't work, mac version might not work, opengl might not work
Icon doesn't work (on Linux at least)
Lua will need some changes, there are some sdl 1.2 hacks in there
When entering fullscreen, the window loses focus
When holding down mouse out of bounds, mouse move events stop being sent
When letting go of mouse out of bounds, mouseup event doesn't take into account double scale mode
Clicking on startup without moving mouse will draw at 0,0 for a frame
Renderer probably won't compile because USE_SDL doesn't entirely work

... and maybe others

Some nice things were done though:
no more blit2, sdl can do the scaling itself
3d effect removed, no reason to support this joke any longer
No need to support copy/paste ourselves, sdl does it now
text handling done much better now, separate events for key presses and text input
when a new window is shown, all events ignored until next tick (ignore textinput event if window shown from key press event like console)
2018-05-25 21:19:44 -04:00
mniip
ff27d69424 Switch from std::string to String/ByteString in most of the code
Also switch SimulationData from weird arrays to std::vector
2018-04-30 21:13:24 +03:00
jacob1
67bc12de97 Fix issue where TPT was bought by EA 2018-04-01 15:26:13 -04:00
jacob1
40d2850ff7 TPT has now gone free to play! Many elements are unlocked by default, but by using Powdercoins you can unlock new elements and promote your saves to front page! 2018-03-31 22:40:23 -04:00
jacob1
0d1c3f5f49 ctrl+p shortcut to select prop tool 2018-02-03 17:39:23 -05:00
jacob1
6bd068713e recording improvements
remove 'r' record shortcut
add tpt.record function. Still gives the user a confirm prompt
recordings now go into recordings/<timestamp>/, where timestamp is the time the recording was started. <timestamp> is returned by the tpt.record function. Each new recording starts the filenames over at 0 again.

you probably still need a lua script to use the recording feature, this should make it easier for those
2017-09-04 14:06:28 -04:00
jacob1
6931f35520 hold shift when saving or loading stamps to not save / load pressure, closes #491 2017-08-03 00:13:06 -04:00
jacob1
b38b2047e6 some changes to sign handling (attempt to fix crash that I can't reproduce) 2017-07-28 21:19:06 -04:00
krawthekrow
95d2014724 allow redo with Ctrl-Y 2016-11-14 10:03:08 -05:00
Mark Theng
8de12d616e fix resume simulation/reload in the middle of subframe debugging (#330) 2016-09-04 21:33:33 -04:00
jacob1
b75c8318e4 add tpt.num_menus and tpt.menu_enabled functions 2016-07-08 20:33:01 -04:00
Matthew Miller
083d488566 Added a favorites menu. (#298)
Added a favorites menu.
2016-06-25 11:55:18 -04:00
jacob1
10262b87da remove PARTICLEDEBUG define and replace it with tpt.setdebug(0x8) to activate the key shortcuts 2016-02-24 22:06:43 -05:00
jacob1
66863b7578 update last tool and drawMode when clicking too, fixes some issues 2015-10-10 01:17:19 -04:00
jacob1
6ae3593465 remove pointQueue, replace with something that works properly
No longer draws a single point by itself at the start, and draws a final line to the point where the mouse is released
2015-09-21 02:13:01 -04:00
jacob1
16781bcb8e two new lua mouse up events (4 & 5) for some corner cases
Also fixes mouse held event being stuck in one of those cases
2015-09-20 21:40:00 -04:00
jacob1
cd97d6364b add comma before Newtonian Gravity in HUD 2015-09-20 17:29:30 -04:00
jBot-42
78c700a62b Added ambient heat to the HUD 2015-09-20 17:26:38 -04:00
jacob1
722b9d93d6 a few minor improvements so that stamps are more consistent in tpt++ / my mod 2015-09-19 21:19:17 -04:00
jacob1
bbdbb67079 fix tpt.brushx returning incorrect value when brush is updated with tpt.brushID 2015-09-19 20:01:53 -04:00
jacob1
d67cb4b582 add new s: sign which does a save search
also change some searchController stuff to properly queue searches when one is already going on
2015-06-27 19:03:41 -04:00
jacob1
2c0287b71d PARTICLEDEBUG define which turns on some particle debugging key shortcuts
Also fix particle updating bug
2015-02-06 20:33:10 -05:00
jacob1
efd69b208d fix a ton more errors in the interface code, including all the -Wreorder ones 2015-01-16 19:58:39 -05:00
jacob1
1a2e3a11fc cancel drawing when the mouse moves in / out of the zoom window, fixes #228 2015-01-10 13:35:23 -05:00
jacob1
35782fdd10 'l' always loads last save from disk (won't load cached deleted save) 2014-12-15 15:13:37 -05:00
jacob1
a801f0a0b4 allow lua mousepress event to cancel drawing, fixes #229 2014-11-06 20:06:45 -05:00
jacob1
32328ad4fe re-implement tpt.setdebug 2014-09-27 22:25:15 -04:00
jacob1
f8782338d7 make tpt.selected* and tpt.brushx/y writable (replaces simstate branch) 2014-08-19 02:01:31 -04:00
jacob1
e4b08c88cf fix link signs preventing you from using quickoption buttons, fix being unable to place zoom window on link signs. Fixes #222 2014-08-05 19:26:21 -04:00
Simon Robertshaw
8f4296ac39 Spark sign tool, {b|sometext}, when the sign is clicked, the a spark will be created at the signs position. Also MouseDown events that draw particles from being triggered when clicking on a sign 2013-10-19 18:59:49 +01:00
jacksonmj
79edfe9589 Include elements[].Enabled in check for invalid lava ctype 2013-09-08 09:26:31 +01:00
jacob1
bfc1cf99ca instant save option option, hold ctrl when clicking a save in the save preview to skip the entire preview and not load the comments 2013-07-25 19:43:25 -04:00
jacob1
aa59c89fa2 logging in in the save preview will update the login button on the main screen 2013-07-18 16:33:59 -04:00
jacob1
f56a2f6000 add back replace mode and specific delete. Activated with insert key / delete key, use ctrl+alt click to select what to use for the checks 2013-07-18 15:40:32 -04:00
jacob1
8d5fe459fe 'n' to toggle Newtonian Gravity, quickoption tooltips show which keys you need to press to toggle them 2013-07-15 13:09:19 -04:00
jacob1
3aac957e50 HUD displays the correct name of LIFE particles in the HUD, show mouse position in HUD on the edges of the screen 2013-06-20 20:29:20 -04:00
jacob1
a1f9da2d0c fix tpt.selectedl not changing sometimes when using the element search or sample tool. Assume that new saves will get the auto-vote, so set that too. 2013-06-08 00:23:06 -04:00
jacob1
2119343b6a fix sim.NUM_PARTS, other small changes 2013-06-05 23:17:34 -04:00
jacob1
cbc80de652 some new sim and ren lua api functions 2013-05-29 20:35:46 -04:00
jacob1
dfc33aaeea finish return values for the legacy api, add sim.saveStamp and sim.loadStamp 2013-05-15 13:51:45 -04:00
jacob1
94d21a1679 when called with no arguments, some tpt. functions will act as get functions (unfinished)
Also, redo some menu stuff to use int's instead of Menu *s, and fix bug with toggleable buttons being toggled without triggering their actions
2013-05-14 23:50:26 -04:00
Simon Robertshaw
c2cdec9e62 Togglable lua scripting 2013-05-11 11:52:35 +01:00
Simon Robertshaw
b4fb55f86e Allow signing out and editing profile from the old login button, add a button to edit avatar (directs to the website at the moment) Allow viewing profiles by clicking avatars 2013-04-07 14:40:00 +01:00
Simon Robertshaw
9abe51526c Move all GUI source files into gui/ 2013-03-22 14:14:17 +00:00