theRAPTLab / gsgo

GEM-STEP Foundation repo migrated from GitLab June 2023
1 stars 1 forks source link

Prototype Script Line Editor v2 - [merged] #661

Closed benloh closed 1 year ago

benloh commented 2 years ago

Merges dev-bl/next-gui-slothelp -> dev-next-gui

This is a work in progress.

This cleans up the slot editor (right panel) and starts to lay out the key information components on the screen according to the Script Wizard Mockup (see #400). Most of the existing functionality should still work. Keywords other than prop are still not supported.

screenshot_1028

NOTES

benloh commented 2 years ago

@daveseah I expect to continue to work on this when I get back, but feel free to merge if it'll help you continue your work.

benloh commented 2 years ago

@jdanish This is obviously not finished, but it is mostly functional (still only for the prop keyword though), so you might give it a spin.

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 12:17

It looks like a lot of the bits are in place. Main still seems to work as far as I can tell with the version of Aquatic Energy too, so I'll accept the merge!

For broader testing, maybe we can suggest that testers take low res screen recording with Quicktime Player as they're working and send us timestamps of where they experienced issues. Seeing the entire session that lead up to an error would make debugging go faster, and reporting might also be faster for the testers as well who no longer have to think of what they were doing or try to remember the specifics of it.

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 13:18

I have a laundry list of things to finish while you're gone. This is from the current hit list:

1. Symbol Helper Fixes

2. Adding {value} assignments in prop keyword

This includes adding support for the {value} gsType, which can be a literal, expr, or objref

3. Adding {expr} support

This is the last major parsing feature, and may require rewriting the expression runner to understand objref syntax only.

4. Add call and if support

The call keyword works the same as prop. The if keyword is the first one to require blocks as part of its parameters, and requires {expr} support to work.

5. Add when 'blueprint context' support

This is a different kind of validation parser because of the test syntax being quite different from prop and call and statements in the consequent need to know what blueprints were mentioned in the parent when statement.

I think that finishes up all the engine stuff. We have the new line editing addition/deletion capabilities now with the new TRANSPILER EditableToken routines to plug into UI when you get back.

Accepting the merge!

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 13:19

marked this merge request as ready

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 13:20

approved this merge request

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 13:20

mentioned in commit 7e37d7b1c4e993d9c6500c3ed48de34443ddc83f

benloh commented 2 years ago

In GitLab by @jdanish on Jun 4, 2022, 13:21

Dumb question, but what is a "slot"?

Also, I am not seeing help text / popup info. Not sure if I am misunderstanding or something is not working?

Thanks!

benloh commented 2 years ago

A "slot" is our dev nomenclature for the placeholder for each word in a gemscript line. End users probably won't have to use the word, but we might need to think through some of the naming.

There is no popup info at the moment, and the help text is baked in as a placeholder. This is more about positioning. We still need to add help to the data structures.

benloh commented 2 years ago

In GitLab by @jdanish on Jun 4, 2022, 14:09

Ahh ok thanks