Commit Graph

765 Commits

Author SHA1 Message Date
Dustin Carlino
d56f2fad1c reorg time travel plugin. at last, teardown the old active_plugin cruft. 2018-12-24 18:08:52 -08:00
Dustin Carlino
c83c4c4899 collapse ViewMode, moving ambient plugins out 2018-12-24 17:57:47 -08:00
Dustin Carlino
fc15b28826 lift the special case search plugin out of simmode. 2018-12-24 17:47:41 -08:00
Dustin Carlino
d06f80e918 lift warp plugin out of simmode. and categorize display logs as view,
just to organize the directory more.
2018-12-24 17:31:21 -08:00
Dustin Carlino
597828ce28 revamp toggleable layers plugin, and get rid of debug mode 2018-12-24 17:22:52 -08:00
Dustin Carlino
ad3ef954eb revamping hider plugin 2018-12-24 16:30:45 -08:00
Dustin Carlino
46b3e85bd3 flatten some DebugMode stuff that actually doesnt need to be permap, since it's exclusive blocking 2018-12-24 12:38:51 -08:00
Dustin Carlino
a626f5c542 remove steepness plugin; it's annoying and useless 2018-12-24 12:32:39 -08:00
Dustin Carlino
3b372dd9ce move DisplayLogs into exclusive_blocking_plugin 2018-12-24 12:26:02 -08:00
Dustin Carlino
7b8b9fdbe6 flatten SimMode into DefaultUIState 2018-12-24 12:19:16 -08:00
Dustin Carlino
39c3e2917e flatten EditMode into DefaultUIState 2018-12-24 10:39:24 -08:00
Dustin Carlino
d989e2fb09 convert object hider into a modal menu 2018-12-24 08:17:23 -08:00
Dustin Carlino
567ded85de stop drawing weird time left box. update the text in the diagram instead. 2018-12-23 21:31:37 -08:00
Dustin Carlino
ae6f8d5e16 show entire signal diagram when hovering 2018-12-23 21:11:30 -08:00
Dustin Carlino
e05d4be34b draw blinkers in the front and back, increase size, tweak color 2018-12-23 09:20:18 -08:00
Dustin Carlino
551a8ef63a aw yeah, unicode arrow key descriptions. and tweaking some wording from filip's feedback 2018-12-22 23:20:21 -08:00
Dustin Carlino
5d28acd1af traffic signal editor left bar should be drawn below top menu 2018-12-22 22:18:03 -08:00
Dustin Carlino
0edded5725 trying out a quick way to mark parts of the screen unavailable for map-space mouseover. oh hey, it works great. 2018-12-22 20:03:12 -08:00
Dustin Carlino
2d7034e9cb canvas wont serve up map-space cursor when it's out of the window 2018-12-22 17:12:30 -08:00
Dustin Carlino
0aece4944d prep for disabling mouseover by changing canvas API. fix neighborhood
plugin to handle out-of-bounds points while we're there.
2018-12-22 16:49:47 -08:00
Dustin Carlino
099fd288fe all arrows are rounded 2018-12-22 14:02:42 -08:00
Dustin Carlino
88ef720f16 dont overdraw turns in turn cycler, and fix colors when cycling through individual turns 2018-12-22 13:40:33 -08:00
Dustin Carlino
ce45b5469b highlight turn icon circle, not arrow, so we can keep seeing the current priority. draw the big turn differently too. 2018-12-22 13:31:08 -08:00
Dustin Carlino
9b6725fc7d back to adjusting GUI colors 2018-12-22 13:12:10 -08:00
Dustin Carlino
9d32ef8b83 use const functions to construct constant colors in many cases, now that rust 2018 is here 2018-12-22 12:39:17 -08:00
Dustin Carlino
0f62da0f63 centralize and adjust constants for text colors. also clean up places
unnecessarilly passing in RGB values for constants
2018-12-22 12:26:34 -08:00
Dustin Carlino
2510625efc removing piston window size type from canvas, meaning piston deps are now very narrowly isolated to part of ezgui 2018-12-21 10:00:45 -08:00
Dustin Carlino
31ddbd0e61 draw stop sign line closer to the intersection 2018-12-20 12:32:59 -08:00
Dustin Carlino
c27015223c distinguish intersection types by color, even when zoomed out 2018-12-20 12:03:44 -08:00
Dustin Carlino
0c2a389f96 dont draw complicated stop sign depiction when hovering. simplify lots of the rendering hints, also fixing up traffic signal crosswalk depiction. 2018-12-20 11:28:42 -08:00
Dustin Carlino
f0250b4571 always depict traffic signals, not just when hovering with turn cycler.
partly broken right now.
2018-12-20 11:00:50 -08:00
Dustin Carlino
7b9a24f99f draw traffic signal timer box in the intersection, not the corner of the screen 2018-12-20 10:42:17 -08:00
Dustin Carlino
999c4e6975 follow build.rs output rules better... even though spurious recompiles
still happen. :(
2018-12-20 10:21:52 -08:00
Dustin Carlino
b7f31cc8f4 make canvas know initial screen size, so centering on map pt initially does work 2018-12-18 15:37:44 -08:00
Dustin Carlino
887a8a7fcb dont show intersection stuff when zoomed out 2018-12-18 13:50:31 -08:00
Dustin Carlino
64e5bcc8f8 draw turn blinkers on cars 2018-12-18 12:24:37 -08:00
Dustin Carlino
0a18d2afd2 fix broken top menu hotkeys when a submenu is present 2018-12-18 11:50:23 -08:00
Dustin Carlino
3a3499db39 dont show car lookahead buffers by default 2018-12-18 10:03:22 -08:00
Dustin Carlino
cdc9c58ab4 start tutorial mode centered on the right thing. improve map label API by returning references. 2018-12-18 09:57:51 -08:00
Dustin Carlino
ac961f2016 start tutorial with sim playing 2018-12-18 09:48:22 -08:00
Dustin Carlino
7621f6a999 dont offer an irrelevant ped scramble cycle 2018-12-18 07:54:22 -08:00
Dustin Carlino
7ebc51ee64 use arrow keys to switch cycles, not numbers. remove number_chosen. only allow arrow keys in wizard menus. 2018-12-17 20:40:32 -08:00
Dustin Carlino
fdac85f7fb use the modal sidebar, not the osd, in a few places 2018-12-17 17:03:46 -08:00
Dustin Carlino
e368919cfd fixing neighborhood editor 2018-12-17 16:58:24 -08:00
Dustin Carlino
4a98e1d086 convert all plugins to modal calls 2018-12-17 16:40:03 -08:00
Dustin Carlino
787c965985 explicit type for screen-space stuff in ezgui 2018-12-17 14:25:05 -08:00
Dustin Carlino
32db434862 trying out modal flow in UserInput... at least initially displaying the
sidebar
2018-12-17 13:58:06 -08:00
Dustin Carlino
acbd08240d few things that should be in top menu 2018-12-17 13:16:31 -08:00
Dustin Carlino
bbacdfb676 declaring modal menus 2018-12-17 13:08:46 -08:00
Dustin Carlino
875edddc7a undo the few remaining places that pass in keys to plugins 2018-12-17 11:49:36 -08:00
Dustin Carlino
b3dea902de handle window close event 2018-12-17 11:33:57 -08:00
Dustin Carlino
21c61e4a60 avoid typos in action_chosen 2018-12-17 10:23:14 -08:00
Dustin Carlino
e64c44da33 change calls in UI 2018-12-17 10:05:19 -08:00
Dustin Carlino
1f1f3b63e2 wiring up submenu events 2018-12-17 09:07:49 -08:00
Dustin Carlino
8aa12fb6d9 highlight selected item in top menu 2018-12-16 19:41:11 -08:00
Dustin Carlino
efc0db122a specify top menu in UI, but it doesn't do anything yet 2018-12-16 18:23:17 -08:00
Dustin Carlino
2a5384cf11 making wizard use the new Menu 2018-12-16 16:29:25 -08:00
Dustin Carlino
11945739bd rename old ezgui menu to scrolling menu, which color picker will keep using for now 2018-12-16 14:18:43 -08:00
Dustin Carlino
4629015e12 delete unused TreeMenu and stop passing in the category for unimportant actions 2018-12-16 14:13:28 -08:00
Dustin Carlino
9adcb0315e making my own event, mapping piston's event to it. will simplify downstream code and make moving away from piston even easier. 2018-12-15 20:44:28 -08:00
Dustin Carlino
cf74050758 dont call event() for a render event 2018-12-15 12:24:06 -08:00
Dustin Carlino
003881fe93 prototyping right-click context menus. solid start, lots of work needed. 2018-12-15 10:39:50 -08:00
Dustin Carlino
7b6d20bb08 tweak instructions and at least say what current turn priority is in OSD 2018-12-14 12:38:38 -08:00
Dustin Carlino
8a8d017063 hide all agents when editing intersections, so turn icons are always
visible
2018-12-14 12:21:12 -08:00
Dustin Carlino
3f2a7d6e68 display when a traffic signal is in overtime 2018-12-14 12:01:00 -08:00
Dustin Carlino
a8ee229793 fix traffic signal bugs letting TurnPriority::Banned cars in on a cycle 2018-12-14 11:40:18 -08:00
Dustin Carlino
28d025103c show accepted agents when hovering over an intersection 2018-12-14 11:29:14 -08:00
Dustin Carlino
2a8842aa00 brief round of clippy 2018-12-14 11:13:05 -08:00
Dustin Carlino
c55faec3fe more color in tooltips 2018-12-14 11:11:34 -08:00
Dustin Carlino
2b16b9571e making it easier to create one-line Texts 2018-12-14 11:01:14 -08:00
Dustin Carlino
0f1c475ab7 simplify tutorial map, actually count cars spawning now 2018-12-14 10:55:21 -08:00
Dustin Carlino
84b136be14 finally letting tutorial mode listen to sim events 2018-12-14 10:38:14 -08:00
Dustin Carlino
a3a41ed186 move PerMapUI to state module 2018-12-13 15:26:02 -08:00
Dustin Carlino
b8ca1728e2 dont need PluginsPerUI; collapse it into DefaultUIState 2018-12-13 15:21:32 -08:00
Dustin Carlino
59c30ac03e make tutorial mode go through its two states again 2018-12-13 14:59:35 -08:00
Dustin Carlino
7c48ec02cc making tutorial UIState that just wraps and delegates, doesn't do
its own thing yet
2018-12-13 14:51:40 -08:00
Dustin Carlino
bb71418fd3 make UI generic over UIState 2018-12-13 14:30:18 -08:00
Dustin Carlino
28327b4905 another attempt to remove the list of plugins and use a struct directly. keeping active_plugin idx. 2018-12-13 14:24:04 -08:00
Dustin Carlino
79dc9aee40 pulling UI state behind a trait. result is a bit convoluted still. 2018-12-13 14:03:09 -08:00
Dustin Carlino
f9016c6871 move recalc_current_selection... it's this temporary bit of state 2018-12-13 11:22:25 -08:00
Dustin Carlino
8e715de098 simplify UI state a bit... dont plumb around extra KML shapes to display. if we load an A/B test or different map edits, no need to preserve the KML; its for one-off debugging. 2018-12-13 11:13:33 -08:00
Dustin Carlino
4b7a424b1f remove duplicate color definitions and don't allow them 2018-12-12 17:27:34 -08:00
Dustin Carlino
a5befc83fe run rustfmt in the build script 2018-12-12 17:22:15 -08:00
Dustin Carlino
87bbadecc1 change ColorScheme to use the generated code. remove the terrible mutability. 2018-12-12 17:18:47 -08:00
Dustin Carlino
90fffe2410 invoke from build.rs 2018-12-12 17:03:31 -08:00
Dustin Carlino
13134a091b generate a module 2018-12-12 16:55:01 -08:00
Dustin Carlino
010a636ae6 change the colorscheme method name to find more easily in parsing 2018-12-12 16:25:08 -08:00
Dustin Carlino
9d653b103d starting a python script to find ColorScheme calls 2018-12-12 16:14:24 -08:00
Dustin Carlino
26af5526f2 just moving some plugin-bundling code to a separate module, but not really changing ownership structure yet 2018-12-12 14:36:26 -08:00
Dustin Carlino
d61255a4b3 lift panic handling from UI's event to ezgui runner, use also for draw 2018-12-12 14:11:18 -08:00
Dustin Carlino
e29ff690f8 move PluginCtx 2018-12-12 13:58:02 -08:00
Dustin Carlino
dd859ba76d clean up interaction between UI and get_objects_onscreen a bit 2018-12-12 12:27:45 -08:00
Dustin Carlino
3c710c2e8a fix the sim score plugin 2018-12-12 10:47:02 -08:00
Dustin Carlino
6cc7399b89 draw full turns using sharp bends if needed 2018-12-11 15:19:35 -08:00
Dustin Carlino
de5c02a6c4 preps for merging intersections again... notes and not passing Map
during first few phases of construction
2018-12-11 12:26:21 -08:00
Dustin Carlino
577e674e51 setting up a scenario for the first tutorial (commit 1,000!) 2018-12-11 10:14:21 -08:00
Dustin Carlino
11584efbb6 starting a TutorialMode, sneakily installing the plugin based on filename (ew) 2018-12-10 16:12:31 -08:00
Dustin Carlino
7e6f6a6a61 quick fix to the crashing chokepoints plugin 2018-12-09 18:06:31 -08:00
Dustin Carlino
ebc5419f9a jump to previous/next savestate 2018-12-09 17:47:54 -08:00
Dustin Carlino
44d9065123 wrap long agent tooltips 2018-12-09 15:28:04 -08:00
Dustin Carlino
dacd423080 clippy pt4 2018-12-09 12:04:02 -08:00
Dustin Carlino
caae9bcc36 clippy pt3 2018-12-09 11:33:24 -08:00
Dustin Carlino
f48757c5e7 clippy pt2 2018-12-08 19:56:54 -08:00
Dustin Carlino
ab86835611 initially playing with clippy... pt1 2018-12-08 18:21:56 -08:00
Dustin Carlino
7363302d5d one key to toggle lane types 2018-12-08 14:15:44 -08:00
Dustin Carlino
e71fa25229 moving sim_controls into SimMode, expressing it as a Paused/Running state 2018-12-08 13:51:31 -08:00
Dustin Carlino
8ee38d8dba defining a mode to control the sim, with diff trip/all and score split
out. more soon.
2018-12-08 13:07:48 -08:00
Dustin Carlino
b92303ecab avoiding overlapping keys in ViewMode 2018-12-08 12:19:16 -08:00
Dustin Carlino
c0317c0ce0 fix initial zoom when loading new PerMapUI. this broke a few commits ago when moving ToggleableLayers from per-UI to per-map plugins. 2018-12-07 14:17:40 -08:00
Dustin Carlino
cd4c39dec6 consolidating event and new_event 2018-12-07 14:06:47 -08:00
Dustin Carlino
dc0298a713 switch to new_color_for and new_draw everywhere (and rename them), cleaning up Ctx creations 2018-12-07 13:38:36 -08:00
Dustin Carlino
e604d3866c rewrite turn cycler; it was confusing because it used to cycle through turns over time 2018-12-07 11:45:42 -08:00
Dustin Carlino
6a32166452 rewrite lots of stuff with NLL! \o/ 2018-12-06 12:47:20 -08:00
Dustin Carlino
91b2b07fbd remove more extern crate's; import macros directly 2018-12-06 11:22:12 -08:00
Dustin Carlino
375a923a9d try removing most extern crate's 2018-12-06 11:00:13 -08:00
Dustin Carlino
f64f411093 upgrade all crates to 2018 in Cargo.toml. this requires switching to
crate:: paths everywhere. not yet fiddling with 'extern crate's
2018-12-06 10:57:31 -08:00
Dustin Carlino
6a0cd7f71e rust 2018: run the new fmt, delete the unneeded script 2018-12-06 10:05:50 -08:00
Dustin Carlino
dc450a1959 moving search into view 2018-12-06 10:02:11 -08:00
Dustin Carlino
6a317aea33 moving warp into ViewMode 2018-12-06 09:47:51 -08:00
Dustin Carlino
63c80405f5 neighborhood summary part of ViewMode 2018-12-06 09:39:01 -08:00
Dustin Carlino
0b39be0d1a moving each of the Modes into that directory's mod.rs 2018-12-06 09:34:10 -08:00
Dustin Carlino
5b6cdf24bd making a View mode, with mostly ambient/stackable plugins 2018-12-05 21:13:36 -08:00
Dustin Carlino
7cac74457c debug mode -- pt2, the stateful and ambient plugins 2018-12-05 19:17:29 -08:00
Dustin Carlino
d8492b7e17 bundling together a debug mode too -- pt1, the easy transient plugins 2018-12-05 18:22:18 -08:00
Dustin Carlino
96df555107 refactor edit plugins to not need an inactive state 2018-12-05 17:02:27 -08:00
Dustin Carlino
da46544e99 bundling exclusive editor-like plugins together in one meta plugin,
edit_mode
2018-12-05 16:28:15 -08:00
Dustin Carlino
7a10378b00 make UI handle loading new maps with no buildings to focus on 2018-12-05 11:47:58 -08:00
Dustin Carlino
636eb1fb1c overriding crosswalk colors for stop signs 2018-12-05 10:57:12 -08:00
Dustin Carlino
6295d6b2e7 drawing turns at a stop sign 2018-12-05 10:34:08 -08:00
Dustin Carlino
545b96a74a also suppress stop sign icon when relevant 2018-12-05 10:11:57 -08:00
Dustin Carlino
fa33c96201 revamp stop sign editor... space to toggle priorities, reset to default 2018-12-05 10:03:38 -08:00
Dustin Carlino
3198ade5d1 add a 4th turn priority... can completely ban turns. make pathfinding
pay attention to this.
2018-12-05 09:48:22 -08:00
Dustin Carlino
956ebc04e6 add a new cycle for ped scramble mode 2018-12-04 15:48:29 -08:00
Dustin Carlino
e640c6d46d let user invoke presets 2018-12-04 15:29:42 -08:00
Dustin Carlino
06bd34b1f4 move cycles up/down, delete them, add them 2018-12-04 15:01:33 -08:00
Dustin Carlino
b8e33bb3a2 draw capped arrows after dashes more carefully for long last lines 2018-12-04 14:04:05 -08:00
Dustin Carlino
11f89c0ee5 one key to toggle through priorities 2018-12-04 13:52:53 -08:00
Dustin Carlino
843281ee62 restrict keys when hovering on turn icon vs not 2018-12-04 13:43:28 -08:00
Dustin Carlino
accfeaf457 only 3 colors for turn icons... match current state, not possible changes 2018-12-04 13:39:46 -08:00
Dustin Carlino
33f36954c8 adjust color of changed intersections and current turn icon full turn 2018-12-04 13:33:25 -08:00
Dustin Carlino
5ea6e0ea18 adjust possible controls 2018-12-04 13:06:16 -08:00
Dustin Carlino
1bb146fe23 couple crosswalk turn pairs together in a cycle 2018-12-04 12:52:59 -08:00
Dustin Carlino
4851761fc6 dont show shared sidewalk corner icons at all in the editor 2018-12-04 12:39:57 -08:00
Dustin Carlino
16a4607aca show full turn of current selected icon 2018-12-04 12:34:06 -08:00
Dustin Carlino
1aabbb1e32 bringing back turn icons to the editor. needs more tweaks, but a start 2018-12-04 12:25:15 -08:00
Dustin Carlino
ac4c7a5b83 edit cycle time 2018-12-04 11:44:34 -08:00
Dustin Carlino
038cd385d7 show cycle duration in sidebar 2018-12-04 11:20:51 -08:00
Dustin Carlino
2c7abcbc3a hiding crosswalks way more sanely 2018-12-04 11:08:18 -08:00
Dustin Carlino
d4006d3e93 stop drawing traffic signal box when some plugins are active 2018-12-04 10:26:35 -08:00
Dustin Carlino
43fa67177d plumbing generic things in ezgui runner 2018-12-04 10:20:08 -08:00