% % acceptance vectors for Js code % sel@ _Ent.Page < |Jstruct % % Jsx editing vector operations % note that the case for the first tab is derived from the tab # in E4 % to derive startup, use a separate lookup for prior tab 'name' in E5 % Ent._E3 ">Jstruct " log() < |Initial "JsCode" *helpface |Tab % % react to the tab selection % Ent._E4 trim ">>Tab " log() < |Options % % check for first time entering % Ent._E5 trim ">>>Options " log() < |-1 % % this is startup, the first time form loaded % user selects the desired path from here % % set the display name of the node being edited % fill the Name field % "SetVed(true,true);" 0 !JS.CompA 0 !JS.CompB > not { *noedoff1 } if Help.! |Change root? { *untabber } { *jspmchng } ifelse |JsEdit *jspmedit |New _Edits any)? { "Tabber(1);" Help.! } { *jspmnewm } ifelse > pop % % expand specific references % |Expand *jsphexpa |Search _@ !Values.SearchA "Body" !Values.SearchC "Search" vector() % % invoke Xhelp % |Help "JsCode" !Help.Url *xhelstar % % Lint all % |LintAll _Linting not dup !Linting { false !App.Logging *jsphalls } { true !App.Logging } ifelse % % Lint the individual function % |Lint sel@ *jsphlint % % advanced tree operations % |Tree hide % % spaces interpreted as hierarchy seps % edit the requested tree % "Pshop Listen" *treemang |Save "Jdone(true);SendOps('Store');" Help.! |Store *jspmstor |Wide % % only edit non-root nodes % _\ positive { "Tabber(1);" Help.! % % edit the current jsx text in the wide editor % Ent._E5 unescape !JsEditing "cmirarea" "jsedit.html" *archcmir } { } ifelse |Cancel empty !Edits "Jdone(false);Tabber(0);" Help.! *reselect( % % done % |Reject *nodebacr % % new functions from text % |Functions Ent._E5 unescape *jspmfunx empty !Edits "Jdone(false);Tabber(0);" Help.! % % interpret PS symbology in code % |Replace Ent._E5 unescape *jspmanly % % see Lint info % |See *servinit *procserv *jsphiniu( % % set compare anchor A % |AnchorA *fanchora % % set compare anchor B % |AnchorB *fanchorb > pop > *acceptun % % stack: found %