INPUTMAN.LST 158 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218
  1. Listing:
  2. 1 IMPLEMENTATION MODULE InputManager;
  3. 2 (*
  4. 3 * REPERTOIRE
  5. 4 * Release 1.6
  6. 5 * By Charles Bradford and Cole Brecheen
  7. 6 * (c) Copyright 1985-1992 PMI
  8. 7 * Green Bay, Wisconsin
  9. 8 * All rights reserved
  10. 9 * (414) 468-6040
  11. 10 *
  12. 11 * $Header: D:/logfiles/mods/inputman.mov 1.5 10 Mar 1991 15:28:34 coleb $
  13. 12 *
  14. 13 *)
  15. 14
  16. 15
  17. 16
  18. 17 IMPORT BigSets;
  19. 18 IMPORT ErrorManager;
  20. 19 IMPORT ErrorNames;
  21. 20 IMPORT FieldTypes;
  22. 21 IMPORT FrameManager;
  23. 22 IMPORT FramePainter;
  24. 23 IMPORT GenLists;
  25. 24 IMPORT KbdInput;
  26. 25 IMPORT Key;
  27. 26 IMPORT ListUtils;
  28. 27 IMPORT M2Strings;
  29. 28 IMPORT MsgBox2;
  30. 29 IMPORT Numbers;
  31. 30 IMPORT PosUtils;
  32. 31 IMPORT Rectangles;
  33. 32 IMPORT ScrnTypes;
  34. 33 IMPORT ScrnUtl1;
  35. 34 IMPORT StrConv;
  36. 35 IMPORT StrEdit;
  37. 36 IMPORT SYSTEM;
  38. 37 IMPORT UserOps;
  39. 38 IMPORT VWindows;
  40. 39
  41. 40 VAR
  42. 41 Initialized : BOOLEAN;
  43. 42
  44. 43 PROCEDURE Init();
  45. 44 BEGIN
  46. 45 IF Initialized THEN
  47. 46 RETURN;
  48. 47 ELSE
  49. 48 Initialized := TRUE;
  50. 49 END;
  51. 50 BigSets.Init();
  52. ***** ^ not supported yet
  53. ***** ^ not supported yet
  54. ***** ^ not supported yet
  55. 51 ErrorManager.Init();
  56. ***** ^ not supported yet
  57. ***** ^ not supported yet
  58. ***** ^ not supported yet
  59. 52 ErrorNames.Init();
  60. ***** ^ not supported yet
  61. ***** ^ not supported yet
  62. ***** ^ not supported yet
  63. 53 FieldTypes.Init();
  64. ***** ^ not supported yet
  65. ***** ^ not supported yet
  66. ***** ^ not supported yet
  67. 54 FrameManager.Init();
  68. ***** ^ not supported yet
  69. ***** ^ not supported yet
  70. ***** ^ not supported yet
  71. 55 FramePainter.Init();
  72. ***** ^ not supported yet
  73. ***** ^ not supported yet
  74. ***** ^ not supported yet
  75. 56 GenLists.Init();
  76. ***** ^ not supported yet
  77. ***** ^ not supported yet
  78. ***** ^ not supported yet
  79. 57 KbdInput.Init();
  80. ***** ^ not supported yet
  81. ***** ^ not supported yet
  82. ***** ^ not supported yet
  83. 58 Key.Init();
  84. ***** ^ not supported yet
  85. ***** ^ not supported yet
  86. ***** ^ not supported yet
  87. 59 ListUtils.Init();
  88. ***** ^ not supported yet
  89. ***** ^ not supported yet
  90. ***** ^ not supported yet
  91. 60 M2Strings.Init();
  92. ***** ^ not supported yet
  93. ***** ^ not supported yet
  94. ***** ^ not supported yet
  95. 61 MsgBox2.Init();
  96. ***** ^ not supported yet
  97. ***** ^ not supported yet
  98. ***** ^ not supported yet
  99. 62 Numbers.Init();
  100. ***** ^ not supported yet
  101. ***** ^ not supported yet
  102. ***** ^ not supported yet
  103. 63 PosUtils.Init();
  104. ***** ^ not supported yet
  105. ***** ^ not supported yet
  106. ***** ^ not supported yet
  107. 64 Rectangles.Init();
  108. ***** ^ not supported yet
  109. ***** ^ not supported yet
  110. ***** ^ not supported yet
  111. 65 ScrnTypes.Init();
  112. ***** ^ not supported yet
  113. ***** ^ not supported yet
  114. ***** ^ not supported yet
  115. 66 ScrnUtl1.Init();
  116. ***** ^ not supported yet
  117. ***** ^ not supported yet
  118. ***** ^ not supported yet
  119. 67 StrConv.Init();
  120. ***** ^ not supported yet
  121. ***** ^ not supported yet
  122. ***** ^ not supported yet
  123. 68 StrEdit.Init();
  124. ***** ^ not supported yet
  125. ***** ^ not supported yet
  126. ***** ^ not supported yet
  127. 69 UserOps.Init();
  128. ***** ^ not supported yet
  129. ***** ^ not supported yet
  130. ***** ^ not supported yet
  131. 70 VWindows.Init();
  132. ***** ^ not supported yet
  133. ***** ^ not supported yet
  134. ***** ^ not supported yet
  135. 71 END Init;
  136. ***** ^ not supported yet
  137. 72
  138. 73 CONST
  139. 74 RequiredMessage = "This field must be filled in. Press Return to continue.";
  140. ***** ^ not supported yet
  141. 75
  142. 76 PROCEDURE GetScrollableArea(TheFrame : ScrnTypes.DisplayFrame;
  143. ***** ^ not supported yet
  144. 77 VAR ScrollRect : Rectangles.ARectangle);
  145. ***** ^ not supported yet
  146. 78 (*
  147. 79 Returns a rectangle with the absolute field coordinates of
  148. 80 the scrollable area in the frame
  149. 81 *)
  150. 82 BEGIN
  151. 83 ScrnUtl1.GetVisibleArea(TheFrame, ScrollRect);
  152. ***** ^ not supported yet
  153. ***** ^ not supported yet
  154. ***** ^ not supported yet
  155. ***** ^ not supported yet
  156. 84 (* Gets physical screen coordinates of visible part of frame. *)
  157. 85 IF TheFrame^.headline > 0 THEN
  158. ***** ^ not supported yet
  159. ***** ^ not supported yet
  160. 86 IF NOT ScrnUtl1.BoxInFrame(TheFrame) THEN
  161. ***** ^ not supported yet
  162. ***** ^ not supported yet
  163. ***** ^ not supported yet
  164. 87 INC(ScrollRect.row1, TheFrame^.headline)
  165. ***** ^ undeclared identifier
  166. ***** ^ not supported yet
  167. ***** ^ not supported yet
  168. ***** ^ not supported yet
  169. ***** ^ not supported yet
  170. 88 ELSE
  171. 89 INC(ScrollRect.row1, TheFrame^.headline-1)
  172. ***** ^ undeclared identifier
  173. ***** ^ not supported yet
  174. ***** ^ not supported yet
  175. ***** ^ not supported yet
  176. ***** ^ not supported yet
  177. ***** ^ not supported yet
  178. 90 END;
  179. 91 END;
  180. 92 END GetScrollableArea;
  181. ***** ^ not supported yet
  182. 93
  183. 94
  184. 95 PROCEDURE ClosestField( TheFrame: ScrnTypes.DisplayFrame;
  185. ***** ^ not supported yet
  186. 96 TheField, col, row: CARDINAL; direction: VWindows.Compass ): CARDINAL;
  187. ***** ^ not supported yet
  188. 97
  189. 98 (*Returns the number of the field closest to TheField in the
  190. 99 direction specified. If you pass 0 to col and row, it
  191. 100 figures out where TheField is automatically. If you pass 0
  192. 101 to TheField, it assumes the cursor is presently outside of
  193. 102 a field, and that col and row indicate where it is.*)
  194. 103
  195. 104 VAR
  196. 105 dist, FieldCount, BestGuess, BestDistance,
  197. 106 ListStart, ListEnd, StartField, OldField: CARDINAL;
  198. 107 p1, p2, BestPoint: Rectangles.APoint;
  199. ***** ^ not supported yet
  200. 108
  201. 109 PROCEDURE Candidate( TheFrame: ScrnTypes.DisplayFrame;
  202. ***** ^ not supported yet
  203. 110 TheField: CARDINAL; VAR Cursor, FieldSpot:
  204. 111 Rectangles.APoint; direction: VWindows.Compass; VAR dist:
  205. ***** ^ not supported yet
  206. ***** ^ not supported yet
  207. 112 CARDINAL ): BOOLEAN;
  208. 113 VAR
  209. 114 tmpcol, tmprow: CARDINAL;
  210. 115 BEGIN
  211. 116 tmpcol := ScrnUtl1.VirtualFieldCol( TheFrame, TheField );
  212. ***** ^ not supported yet
  213. ***** ^ not supported yet
  214. ***** ^ not supported yet
  215. ***** ^ not supported yet
  216. 117 tmprow := ScrnUtl1.VirtualFieldRow( TheFrame, TheField );
  217. ***** ^ not supported yet
  218. ***** ^ not supported yet
  219. ***** ^ not supported yet
  220. ***** ^ not supported yet
  221. 118 FieldSpot.col := INTEGER(tmpcol);
  222. ***** ^ not supported yet
  223. ***** ^ not supported yet
  224. ***** ^ not supported yet
  225. 119 FieldSpot.row := INTEGER(tmprow);
  226. ***** ^ not supported yet
  227. ***** ^ not supported yet
  228. ***** ^ not supported yet
  229. 120
  230. 121 CASE direction OF
  231. ***** ^ not supported yet
  232. 122 VWindows.North, VWindows.NE, VWindows.NW:
  233. ***** ^ not supported yet
  234. ***** ^ not supported yet
  235. ***** ^ not supported yet
  236. ***** ^ not supported yet
  237. ***** ^ not supported yet
  238. ***** ^ not supported yet
  239. 123 IF (tmprow >= CARDINAL(Cursor.row)) THEN
  240. ***** ^ not supported yet
  241. ***** ^ not supported yet
  242. 124 RETURN FALSE;
  243. 125 END
  244. 126 ELSE
  245. 127 END;
  246. 128 CASE direction OF
  247. ***** ^ not supported yet
  248. 129 VWindows.South, VWindows.SE, VWindows.SW:
  249. ***** ^ not supported yet
  250. ***** ^ not supported yet
  251. ***** ^ not supported yet
  252. ***** ^ not supported yet
  253. ***** ^ not supported yet
  254. ***** ^ not supported yet
  255. 130 IF (tmprow <= CARDINAL(Cursor.row)) THEN
  256. ***** ^ not supported yet
  257. ***** ^ not supported yet
  258. 131 RETURN FALSE;
  259. 132 END;
  260. 133 ELSE
  261. 134 END;
  262. 135 CASE direction OF
  263. ***** ^ not supported yet
  264. 136 VWindows.East, VWindows.SE, VWindows.NE:
  265. ***** ^ not supported yet
  266. ***** ^ not supported yet
  267. ***** ^ not supported yet
  268. ***** ^ not supported yet
  269. ***** ^ not supported yet
  270. ***** ^ not supported yet
  271. 137 IF (tmpcol <= CARDINAL(Cursor.col)) THEN
  272. ***** ^ not supported yet
  273. ***** ^ not supported yet
  274. 138 RETURN FALSE;
  275. 139 END
  276. 140 ELSE
  277. 141 END;
  278. 142 CASE direction OF
  279. ***** ^ not supported yet
  280. 143 VWindows.West, VWindows.NW, VWindows.SW:
  281. ***** ^ not supported yet
  282. ***** ^ not supported yet
  283. ***** ^ not supported yet
  284. ***** ^ not supported yet
  285. ***** ^ not supported yet
  286. ***** ^ not supported yet
  287. 144 IF (tmpcol >= CARDINAL(Cursor.col)) THEN
  288. ***** ^ not supported yet
  289. ***** ^ not supported yet
  290. 145 RETURN FALSE;
  291. 146 END;
  292. 147 ELSE
  293. 148 END;
  294. 149 dist := Rectangles.Distance( Cursor, p2 );
  295. ***** ^ not supported yet
  296. ***** ^ not supported yet
  297. ***** ^ not supported yet
  298. ***** ^ not supported yet
  299. 150 RETURN TRUE;
  300. 151 END Candidate;
  301. ***** ^ not supported yet
  302. 152
  303. 153 BEGIN (*ClosestField*)
  304. 154 OldField := TheFrame^.CurrentField;
  305. ***** ^ not supported yet
  306. ***** ^ not supported yet
  307. 155 IF TheField # 0 THEN
  308. 156 col := ScrnUtl1.VirtualFieldCol( TheFrame, TheField );
  309. ***** ^ not supported yet
  310. ***** ^ not supported yet
  311. ***** ^ not supported yet
  312. ***** ^ not supported yet
  313. 157 row := ScrnUtl1.VirtualFieldRow( TheFrame, TheField );
  314. ***** ^ not supported yet
  315. ***** ^ not supported yet
  316. ***** ^ not supported yet
  317. ***** ^ not supported yet
  318. 158 ELSE
  319. 159 TheFrame^.CurrentField := 0;
  320. ***** ^ not supported yet
  321. ***** ^ not supported yet
  322. 160 END;
  323. 161 p1.col := INTEGER(col);
  324. ***** ^ not supported yet
  325. ***** ^ not supported yet
  326. ***** ^ not supported yet
  327. 162 p1.row := INTEGER(row);
  328. ***** ^ not supported yet
  329. ***** ^ not supported yet
  330. ***** ^ not supported yet
  331. 163 BestGuess := 0;
  332. 164 BestDistance := 65535;
  333. 165
  334. 166 CASE direction OF
  335. ***** ^ not supported yet
  336. 167 VWindows.East, VWindows.SW, VWindows.South, VWindows.SE:
  337. ***** ^ not supported yet
  338. ***** ^ not supported yet
  339. ***** ^ not supported yet
  340. ***** ^ not supported yet
  341. ***** ^ not supported yet
  342. ***** ^ not supported yet
  343. ***** ^ not supported yet
  344. ***** ^ not supported yet
  345. 168 ListEnd := LastInputField(TheFrame);
  346. ***** ^ undeclared identifier
  347. ***** ^ not supported yet
  348. 169 FieldCount := NextInputField( TheFrame, 0 );
  349. ***** ^ undeclared identifier
  350. ***** ^ not supported yet
  351. ***** ^ not supported yet
  352. 170 BestPoint.col := 32767;
  353. ***** ^ not supported yet
  354. ***** ^ not supported yet
  355. 171 BestPoint.row := 32767;
  356. ***** ^ not supported yet
  357. ***** ^ not supported yet
  358. 172 LOOP
  359. 173 IF TheFrame^.CurrentField = ListEnd THEN
  360. ***** ^ not supported yet
  361. ***** ^ not supported yet
  362. 174 EXIT
  363. 175 END;
  364. 176 IF Candidate( TheFrame, FieldCount, p1, p2, direction, dist ) THEN
  365. ***** ^ not supported yet
  366. ***** ^ not supported yet
  367. ***** ^ not supported yet
  368. ***** ^ not supported yet
  369. ***** ^ not supported yet
  370. ***** ^ not supported yet
  371. 177 IF (dist < BestDistance) THEN
  372. 178 BestDistance := dist;
  373. 179 BestPoint := p2;
  374. ***** ^ not supported yet
  375. ***** ^ not supported yet
  376. 180 BestGuess := FieldCount;
  377. 181 END;
  378. 182 IF (direction = VWindows.South)
  379. ***** ^ not supported yet
  380. ***** ^ not supported yet
  381. ***** ^ not supported yet
  382. 183 AND (p2.row > BestPoint.row) THEN
  383. ***** ^ not supported yet
  384. ***** ^ not supported yet
  385. ***** ^ not supported yet
  386. ***** ^ not supported yet
  387. 184 EXIT
  388. 185 ELSIF (direction = VWindows.East) AND ((p2.col >
  389. ***** ^ not supported yet
  390. ***** ^ not supported yet
  391. ***** ^ not supported yet
  392. ***** ^ not supported yet
  393. ***** ^ not supported yet
  394. 186 BestPoint.col) OR (p2.row > BestPoint.row)) THEN
  395. ***** ^ not supported yet
  396. ***** ^ not supported yet
  397. ***** ^ not supported yet
  398. ***** ^ not supported yet
  399. ***** ^ not supported yet
  400. ***** ^ not supported yet
  401. 187 EXIT
  402. 188 END;
  403. 189 END;
  404. 190 TheFrame^.CurrentField := FieldCount;
  405. ***** ^ not supported yet
  406. ***** ^ not supported yet
  407. 191 FieldCount := NextInputField( TheFrame, 0 );
  408. ***** ^ undeclared identifier
  409. ***** ^ not supported yet
  410. ***** ^ not supported yet
  411. 192 END;
  412. 193 ELSE
  413. 194 ListStart := FirstInputField(TheFrame);
  414. ***** ^ undeclared identifier
  415. ***** ^ not supported yet
  416. 195 FieldCount := PrevInputField( TheFrame, 0 );
  417. ***** ^ undeclared identifier
  418. ***** ^ not supported yet
  419. ***** ^ not supported yet
  420. 196 BestPoint.col := 0;
  421. ***** ^ not supported yet
  422. ***** ^ not supported yet
  423. 197 BestPoint.row := 0;
  424. ***** ^ not supported yet
  425. ***** ^ not supported yet
  426. 198 LOOP
  427. 199 IF TheFrame^.CurrentField = ListStart THEN
  428. ***** ^ not supported yet
  429. ***** ^ not supported yet
  430. 200 EXIT
  431. 201 END;
  432. 202 IF Candidate( TheFrame, FieldCount, p1, p2, direction, dist ) THEN
  433. ***** ^ not supported yet
  434. ***** ^ not supported yet
  435. ***** ^ not supported yet
  436. ***** ^ not supported yet
  437. ***** ^ not supported yet
  438. ***** ^ not supported yet
  439. 203 IF (dist < BestDistance) THEN
  440. 204 BestDistance := dist;
  441. 205 BestPoint := p2;
  442. ***** ^ not supported yet
  443. ***** ^ not supported yet
  444. 206 BestGuess := FieldCount;
  445. 207 END;
  446. 208 IF (direction = VWindows.North)
  447. ***** ^ not supported yet
  448. ***** ^ not supported yet
  449. ***** ^ not supported yet
  450. 209 AND (p2.row < BestPoint.row) THEN
  451. ***** ^ not supported yet
  452. ***** ^ not supported yet
  453. ***** ^ not supported yet
  454. ***** ^ not supported yet
  455. 210 EXIT
  456. 211 ELSIF (direction = VWindows.West) AND ((p2.col <
  457. ***** ^ not supported yet
  458. ***** ^ not supported yet
  459. ***** ^ not supported yet
  460. ***** ^ not supported yet
  461. ***** ^ not supported yet
  462. 212 BestPoint.col) OR (p2.row < BestPoint.row)) THEN
  463. ***** ^ not supported yet
  464. ***** ^ not supported yet
  465. ***** ^ not supported yet
  466. ***** ^ not supported yet
  467. ***** ^ not supported yet
  468. ***** ^ not supported yet
  469. 213 EXIT
  470. 214 END;
  471. 215 END;
  472. 216 TheFrame^.CurrentField := FieldCount;
  473. ***** ^ not supported yet
  474. ***** ^ not supported yet
  475. 217 FieldCount := PrevInputField( TheFrame, 0 );
  476. ***** ^ undeclared identifier
  477. ***** ^ not supported yet
  478. ***** ^ not supported yet
  479. 218 END;
  480. 219 END;
  481. 220
  482. 221 TheFrame^.CurrentField := OldField;
  483. ***** ^ not supported yet
  484. ***** ^ not supported yet
  485. 222 (* Preserve current field *)
  486. 223 IF BestGuess # 0 THEN
  487. 224 RETURN BestGuess;
  488. 225 ELSE
  489. 226 RETURN TheField;
  490. 227 END;
  491. 228 END ClosestField;
  492. ***** ^ not supported yet
  493. 229
  494. 230
  495. 231
  496. 232 PROCEDURE InSameRow( TheFrame: ScrnTypes.DisplayFrame; Field1, Field2:
  497. ***** ^ not supported yet
  498. 233 CARDINAL ): BOOLEAN;
  499. 234 BEGIN
  500. 235 RETURN (ScrnUtl1.VirtualFieldRow(TheFrame, Field1) =
  501. ***** ^ not supported yet
  502. ***** ^ not supported yet
  503. ***** ^ not supported yet
  504. ***** ^ not supported yet
  505. 236 ScrnUtl1.VirtualFieldRow(TheFrame, Field2) );
  506. ***** ^ not supported yet
  507. ***** ^ not supported yet
  508. ***** ^ not supported yet
  509. ***** ^ not supported yet
  510. 237 END InSameRow;
  511. ***** ^ not supported yet
  512. 238
  513. 239
  514. 240 PROCEDURE InSameCol( TheFrame: ScrnTypes.DisplayFrame; Field1, Field2:
  515. ***** ^ not supported yet
  516. 241 CARDINAL ): BOOLEAN;
  517. 242 BEGIN
  518. 243 RETURN (ScrnUtl1.VirtualFieldCol(TheFrame, Field1) =
  519. ***** ^ not supported yet
  520. ***** ^ not supported yet
  521. ***** ^ not supported yet
  522. ***** ^ not supported yet
  523. 244 ScrnUtl1.VirtualFieldCol(TheFrame, Field2) );
  524. ***** ^ not supported yet
  525. ***** ^ not supported yet
  526. ***** ^ not supported yet
  527. ***** ^ not supported yet
  528. 245 END InSameCol;
  529. ***** ^ not supported yet
  530. 246
  531. 247
  532. 248 (*Probably ought to move following two procedures to MakeFrame and
  533. 249 add Horizontal boolean to FieldRecType.*)
  534. 250
  535. 251 PROCEDURE InHorizGroup( TheFrame: ScrnTypes.DisplayFrame; TheField:
  536. ***** ^ not supported yet
  537. 252 CARDINAL ): BOOLEAN;
  538. 253 BEGIN
  539. 254 IF ScrnUtl1.FieldType( TheFrame, TheField ) # ScrnTypes.GroupMember THEN
  540. ***** ^ not supported yet
  541. ***** ^ not supported yet
  542. ***** ^ not supported yet
  543. ***** ^ not supported yet
  544. ***** ^ not supported yet
  545. ***** ^ not supported yet
  546. 255 RETURN FALSE;
  547. 256 END;
  548. 257 IF ScrnUtl1.ChoiceNumber( TheFrame, TheField ) <
  549. ***** ^ not supported yet
  550. ***** ^ not supported yet
  551. ***** ^ not supported yet
  552. ***** ^ not supported yet
  553. 258 ScrnUtl1.NumberOfChoices( TheFrame, TheField ) THEN
  554. ***** ^ not supported yet
  555. ***** ^ not supported yet
  556. ***** ^ not supported yet
  557. ***** ^ not supported yet
  558. 259 IF (NOT InSameRow( TheFrame, TheField, TheField + 1 )) THEN
  559. ***** ^ not supported yet
  560. ***** ^ not supported yet
  561. ***** ^ not supported yet
  562. 260 RETURN FALSE;
  563. 261 END;
  564. 262 END;
  565. 263 IF ScrnUtl1.ChoiceNumber( TheFrame, TheField ) > 1 THEN
  566. ***** ^ not supported yet
  567. ***** ^ not supported yet
  568. ***** ^ not supported yet
  569. ***** ^ not supported yet
  570. 264 IF (NOT InSameRow( TheFrame, TheField, TheField - 1 )) THEN
  571. ***** ^ not supported yet
  572. ***** ^ not supported yet
  573. ***** ^ not supported yet
  574. 265 RETURN FALSE;
  575. 266 END;
  576. 267 END;
  577. 268 RETURN TRUE;
  578. 269 END InHorizGroup;
  579. ***** ^ not supported yet
  580. 270
  581. 271 PROCEDURE InVerticalGroup( TheFrame: ScrnTypes.DisplayFrame; TheField:
  582. ***** ^ not supported yet
  583. 272 CARDINAL ): BOOLEAN;
  584. 273 BEGIN
  585. 274 IF ScrnUtl1.FieldType( TheFrame, TheField ) # ScrnTypes.GroupMember THEN
  586. ***** ^ not supported yet
  587. ***** ^ not supported yet
  588. ***** ^ not supported yet
  589. ***** ^ not supported yet
  590. ***** ^ not supported yet
  591. ***** ^ not supported yet
  592. 275 RETURN FALSE;
  593. 276 END;
  594. 277 IF ScrnUtl1.ChoiceNumber( TheFrame, TheField ) <
  595. ***** ^ not supported yet
  596. ***** ^ not supported yet
  597. ***** ^ not supported yet
  598. ***** ^ not supported yet
  599. 278 ScrnUtl1.NumberOfChoices( TheFrame, TheField ) THEN
  600. ***** ^ not supported yet
  601. ***** ^ not supported yet
  602. ***** ^ not supported yet
  603. ***** ^ not supported yet
  604. 279 IF (NOT InSameCol( TheFrame, TheField, TheField + 1 )) THEN
  605. ***** ^ not supported yet
  606. ***** ^ not supported yet
  607. ***** ^ not supported yet
  608. 280 RETURN FALSE;
  609. 281 END;
  610. 282 END;
  611. 283 IF ScrnUtl1.ChoiceNumber( TheFrame, TheField ) > 1 THEN
  612. ***** ^ not supported yet
  613. ***** ^ not supported yet
  614. ***** ^ not supported yet
  615. ***** ^ not supported yet
  616. 284 IF (NOT InSameCol( TheFrame, TheField, TheField - 1 )) THEN
  617. ***** ^ not supported yet
  618. ***** ^ not supported yet
  619. ***** ^ not supported yet
  620. 285 RETURN FALSE;
  621. 286 END;
  622. 287 END;
  623. 288 RETURN TRUE;
  624. 289 END InVerticalGroup;
  625. ***** ^ not supported yet
  626. 290
  627. 291
  628. 292 PROCEDURE NextSelection( TheFrame: ScrnTypes.DisplayFrame; TheField:
  629. ***** ^ not supported yet
  630. 293 CARDINAL ): CARDINAL;
  631. 294 VAR
  632. 295 TmpPtr: ScrnTypes.InputFieldPtr;
  633. ***** ^ not supported yet
  634. 296 BEGIN
  635. 297 ScrnUtl1.GetFieldPtr( TheFrame, TheField, TmpPtr );
  636. ***** ^ not supported yet
  637. ***** ^ not supported yet
  638. ***** ^ not supported yet
  639. ***** ^ not supported yet
  640. 298 IF TmpPtr^.GroupID = TmpPtr^.GroupSize THEN
  641. ***** ^ not supported yet
  642. ***** ^ not supported yet
  643. ***** ^ not supported yet
  644. ***** ^ not supported yet
  645. 299 RETURN ScrnUtl1.FirstMember( TheFrame, TheField );
  646. ***** ^ not supported yet
  647. ***** ^ not supported yet
  648. ***** ^ not supported yet
  649. ***** ^ not supported yet
  650. 300 ELSE
  651. 301 RETURN TheField + 1;
  652. 302 END;
  653. 303 END NextSelection;
  654. ***** ^ not supported yet
  655. 304
  656. 305
  657. 306 PROCEDURE PrevSelection( TheFrame: ScrnTypes.DisplayFrame; TheField:
  658. ***** ^ not supported yet
  659. 307 CARDINAL ): CARDINAL;
  660. 308 VAR
  661. 309 TmpPtr: ScrnTypes.InputFieldPtr;
  662. ***** ^ not supported yet
  663. 310 BEGIN
  664. 311 ScrnUtl1.GetFieldPtr( TheFrame, TheField, TmpPtr );
  665. ***** ^ not supported yet
  666. ***** ^ not supported yet
  667. ***** ^ not supported yet
  668. ***** ^ not supported yet
  669. 312 IF TmpPtr^.GroupID = 1 THEN
  670. ***** ^ not supported yet
  671. ***** ^ not supported yet
  672. 313 RETURN ScrnUtl1.FirstMember( TheFrame, TheField )
  673. ***** ^ not supported yet
  674. ***** ^ not supported yet
  675. ***** ^ not supported yet
  676. ***** ^ not supported yet
  677. 314 + TmpPtr^.GroupSize - 1;
  678. ***** ^ not supported yet
  679. ***** ^ not supported yet
  680. 315 ELSE
  681. 316 RETURN TheField - 1;
  682. 317 END;
  683. 318 END PrevSelection;
  684. ***** ^ not supported yet
  685. 319
  686. 320 PROCEDURE SelectionKeyMatch( TheFrame: ScrnTypes.DisplayFrame; KeyHit:
  687. ***** ^ not supported yet
  688. 321 CARDINAL; VAR SelectedFieldNum: CARDINAL ): BOOLEAN;
  689. 322 VAR
  690. 323 found: BOOLEAN;
  691. 324 ListEnd, cnt: CARDINAL;
  692. 325 FieldPtr: ScrnTypes.InputFieldPtr;
  693. ***** ^ not supported yet
  694. 326 BEGIN
  695. 327 IF KeyHit = 0 THEN
  696. 328 (*Jonathan March's 21 Jun 88 fix.*)
  697. 329 RETURN FALSE;
  698. 330 END;
  699. 331 cnt := 0;
  700. 332 found := FALSE;
  701. 333 ListEnd := GenLists.ListLength( TheFrame^.FieldList );
  702. ***** ^ not supported yet
  703. ***** ^ not supported yet
  704. ***** ^ not supported yet
  705. ***** ^ not supported yet
  706. 334 WHILE (NOT found) AND (cnt < ListEnd) DO
  707. 335 INC( cnt );
  708. ***** ^ undeclared identifier
  709. ***** ^ not supported yet
  710. 336 ScrnUtl1.GetFieldPtr( TheFrame, cnt, FieldPtr );
  711. ***** ^ not supported yet
  712. ***** ^ not supported yet
  713. ***** ^ not supported yet
  714. ***** ^ not supported yet
  715. 337 IF FieldPtr^.typ = ScrnTypes.GotoCode THEN
  716. ***** ^ not supported yet
  717. ***** ^ not supported yet
  718. ***** ^ not supported yet
  719. ***** ^ not supported yet
  720. 338 found := KbdInput.CAPkey(KeyHit) = KbdInput.CAPkey(FieldPtr^.MenuKey);
  721. ***** ^ not supported yet
  722. ***** ^ not supported yet
  723. ***** ^ not supported yet
  724. ***** ^ not supported yet
  725. ***** ^ not supported yet
  726. ***** ^ not supported yet
  727. ***** ^ not supported yet
  728. 339 ELSIF FieldPtr^.typ = ScrnTypes.GroupMember THEN
  729. ***** ^ not supported yet
  730. ***** ^ not supported yet
  731. ***** ^ not supported yet
  732. ***** ^ not supported yet
  733. 340 found := KbdInput.CAPkey(KeyHit) = KbdInput.CAPkey(FieldPtr^.ChoiceKey);
  734. ***** ^ not supported yet
  735. ***** ^ not supported yet
  736. ***** ^ not supported yet
  737. ***** ^ not supported yet
  738. ***** ^ not supported yet
  739. ***** ^ not supported yet
  740. ***** ^ not supported yet
  741. 341 END;
  742. 342 END;
  743. 343 IF found THEN
  744. 344 SelectedFieldNum := cnt;
  745. 345 END;
  746. 346 RETURN found;
  747. 347 END SelectionKeyMatch;
  748. ***** ^ not supported yet
  749. 348
  750. 349
  751. 350 PROCEDURE InSameGroup( TheFrame: ScrnTypes.DisplayFrame; Field1, Field2:
  752. ***** ^ not supported yet
  753. 351 CARDINAL ): BOOLEAN;
  754. 352 BEGIN
  755. 353 IF (ScrnUtl1.FieldType(TheFrame, Field1) # ScrnTypes.GroupMember) OR
  756. ***** ^ not supported yet
  757. ***** ^ not supported yet
  758. ***** ^ not supported yet
  759. ***** ^ not supported yet
  760. ***** ^ not supported yet
  761. ***** ^ not supported yet
  762. 354 (ScrnUtl1.FieldType(TheFrame, Field2) # ScrnTypes.GroupMember) THEN
  763. ***** ^ not supported yet
  764. ***** ^ not supported yet
  765. ***** ^ not supported yet
  766. ***** ^ not supported yet
  767. ***** ^ not supported yet
  768. ***** ^ not supported yet
  769. 355 RETURN FALSE;
  770. 356 END;
  771. 357 RETURN ScrnUtl1.FirstMember( TheFrame, Field1 ) =
  772. ***** ^ not supported yet
  773. ***** ^ not supported yet
  774. ***** ^ not supported yet
  775. ***** ^ not supported yet
  776. 358 ScrnUtl1.FirstMember( TheFrame, Field2 );
  777. ***** ^ not supported yet
  778. ***** ^ not supported yet
  779. ***** ^ not supported yet
  780. ***** ^ not supported yet
  781. 359 END InSameGroup;
  782. ***** ^ not supported yet
  783. 360
  784. 361
  785. 362 PROCEDURE MoveToSelected( VAR TheFrame: ScrnTypes.DisplayFrame; VAR
  786. ***** ^ not supported yet
  787. 363 TheField: CARDINAL );
  788. 364 (* Pass this routine any field number that's a GroupMember,
  789. 365 and it moves TheFrame^.CurrentField to the selected member
  790. 366 of the group (and also sets TheField to the field number
  791. 367 of that member). We assume the caller has sense enough
  792. 368 not to call this for fields that are not GroupMembers. *)
  793. 369 VAR
  794. 370 cnt, FieldNum: CARDINAL;
  795. 371 TmpPtr: ScrnTypes.InputFieldPtr;
  796. ***** ^ not supported yet
  797. 372 BEGIN
  798. 373 FieldNum := ScrnUtl1.FirstMember( TheFrame,
  799. ***** ^ not supported yet
  800. ***** ^ not supported yet
  801. ***** ^ not supported yet
  802. 374 TheField );
  803. ***** ^ not supported yet
  804. 375 TheField := FieldNum;
  805. 376 (*Save the number of the first choice in TheField, in
  806. 377 case we don't find one that's selected.*)
  807. 378 cnt := 1;
  808. 379 LOOP
  809. 380 ScrnUtl1.GetFieldPtr( TheFrame, FieldNum, TmpPtr );
  810. ***** ^ not supported yet
  811. ***** ^ not supported yet
  812. ***** ^ not supported yet
  813. ***** ^ not supported yet
  814. 381 IF (cnt = TmpPtr^.GroupSize) OR (TmpPtr^.selected) THEN
  815. ***** ^ not supported yet
  816. ***** ^ not supported yet
  817. ***** ^ not supported yet
  818. ***** ^ not supported yet
  819. 382 EXIT;
  820. 383 END;
  821. 384 INC( FieldNum );
  822. ***** ^ undeclared identifier
  823. ***** ^ not supported yet
  824. 385 INC( cnt );
  825. ***** ^ undeclared identifier
  826. ***** ^ not supported yet
  827. 386 END;
  828. 387 IF TmpPtr^.selected THEN
  829. ***** ^ not supported yet
  830. ***** ^ not supported yet
  831. 388 TheFrame^.CurrentField := FieldNum;
  832. ***** ^ not supported yet
  833. ***** ^ not supported yet
  834. 389 TheField := FieldNum;
  835. 390 ELSE
  836. 391 TheFrame^.CurrentField := TheField;
  837. ***** ^ not supported yet
  838. ***** ^ not supported yet
  839. 392 ScrnUtl1.GetFieldPtr( TheFrame, TheField, TmpPtr );
  840. ***** ^ not supported yet
  841. ***** ^ not supported yet
  842. ***** ^ not supported yet
  843. ***** ^ not supported yet
  844. 393 (* 28 Dec 88: added this to guarantee that we're
  845. 394 setting the ^.selected field of the first choice
  846. 395 field rather than the last one. Fix contributed by
  847. 396 Ulrik Schmidt. *)
  848. 397 TmpPtr^.selected := TRUE;
  849. ***** ^ not supported yet
  850. ***** ^ not supported yet
  851. 398 END;
  852. 399 END MoveToSelected;
  853. ***** ^ not supported yet
  854. 400
  855. 401
  856. 402 PROCEDURE RequiredFilled( FrameRec: ScrnTypes.DisplayFrame; VAR FieldNum:
  857. ***** ^ not supported yet
  858. 403 CARDINAL ): BOOLEAN;
  859. 404 VAR
  860. 405 LocalList : GenLists.GenList;
  861. ***** ^ not supported yet
  862. 406 TmpPtr: ScrnTypes.InputFieldPtr;
  863. ***** ^ not supported yet
  864. 407 ImagePtr: ScrnTypes.ImageElmtPtr;
  865. ***** ^ not supported yet
  866. 408 ListEnd : CARDINAL;
  867. 409 BEGIN
  868. 410 ListEnd := ScrnUtl1.FieldListTotal( FrameRec );
  869. ***** ^ not supported yet
  870. ***** ^ not supported yet
  871. ***** ^ not supported yet
  872. 411 FieldNum := 1;
  873. 412 WHILE FieldNum <= ListEnd DO
  874. 413 (* look at each required field, until one is not filled *)
  875. 414 ScrnUtl1.GetFieldPtr( FrameRec, FieldNum, TmpPtr );
  876. ***** ^ not supported yet
  877. ***** ^ not supported yet
  878. ***** ^ not supported yet
  879. ***** ^ not supported yet
  880. 415 IF (TmpPtr^.typ = ScrnTypes.EditorCode) AND TmpPtr^.req THEN
  881. ***** ^ not supported yet
  882. ***** ^ not supported yet
  883. ***** ^ not supported yet
  884. ***** ^ not supported yet
  885. ***** ^ not supported yet
  886. ***** ^ not supported yet
  887. 416 (*We've got a required Editor field*)
  888. 417 IF ScrnUtl1.ListFromEdField( FrameRec,
  889. ***** ^ not supported yet
  890. ***** ^ not supported yet
  891. ***** ^ not supported yet
  892. 418 FrameRec^.CurrentField, LocalList ) AND
  893. ***** ^ not supported yet
  894. ***** ^ not supported yet
  895. ***** ^ not supported yet
  896. 419 ListUtils.IsBlankList( LocalList ) THEN
  897. ***** ^ not supported yet
  898. ***** ^ not supported yet
  899. ***** ^ not supported yet
  900. 420 RETURN FALSE;
  901. 421 END;
  902. 422 ELSIF TmpPtr^.req THEN
  903. ***** ^ not supported yet
  904. ***** ^ not supported yet
  905. 423 ScrnUtl1.GetFieldImagePtr( FrameRec, FieldNum, ImagePtr );
  906. ***** ^ not supported yet
  907. ***** ^ not supported yet
  908. ***** ^ not supported yet
  909. ***** ^ not supported yet
  910. 424 (* if field is required and not filled, flag it and exit *)
  911. 425 IF PosUtils.IsBlank( ImagePtr^.text ) THEN
  912. ***** ^ not supported yet
  913. ***** ^ not supported yet
  914. ***** ^ not supported yet
  915. ***** ^ not supported yet
  916. 426 RETURN FALSE;
  917. 427 END;
  918. 428 END;
  919. 429 INC( FieldNum );
  920. ***** ^ undeclared identifier
  921. ***** ^ not supported yet
  922. 430 END;
  923. 431 FieldNum := 0;
  924. 432 RETURN TRUE;
  925. 433 END RequiredFilled;
  926. ***** ^ not supported yet
  927. 434
  928. 435
  929. 436 PROCEDURE MakeLegalKeys( TheFrame: ScrnTypes.DisplayFrame; VAR
  930. ***** ^ not supported yet
  931. 437 NewLegalKeys: KbdInput.KeyNumSet );
  932. ***** ^ not supported yet
  933. 438 (* construct the sets of legal keys for the field types *)
  934. 439 VAR
  935. 440 tmpkey, ListEnd, cnt: CARDINAL;
  936. 441 FieldPtr: ScrnTypes.InputFieldPtr;
  937. ***** ^ not supported yet
  938. 442 BEGIN
  939. 443 BigSets.SetUnion( UserOps.ScreenKeySet,
  940. ***** ^ not supported yet
  941. ***** ^ not supported yet
  942. ***** ^ not supported yet
  943. ***** ^ not supported yet
  944. 444 UserOps.FunctKeySet, NewLegalKeys );
  945. ***** ^ not supported yet
  946. ***** ^ not supported yet
  947. ***** ^ not supported yet
  948. 445 (*Add the FunctKeySet to the ScreenKeySet.*)
  949. 446 ListEnd := ScrnUtl1.FieldListTotal( TheFrame );
  950. ***** ^ not supported yet
  951. ***** ^ not supported yet
  952. ***** ^ not supported yet
  953. 447 IF ListEnd = 0 THEN
  954. 448 RETURN;
  955. 449 END;
  956. 450 FOR cnt := 1 TO ListEnd DO
  957. 451 ScrnUtl1.GetFieldPtr( TheFrame, cnt, FieldPtr );
  958. ***** ^ not supported yet
  959. ***** ^ not supported yet
  960. ***** ^ not supported yet
  961. ***** ^ not supported yet
  962. 452 CASE FieldPtr^.typ OF
  963. ***** ^ not supported yet
  964. ***** ^ not supported yet
  965. 453 ScrnTypes.GotoCode, ScrnTypes.GroupMember:
  966. ***** ^ not supported yet
  967. ***** ^ not supported yet
  968. ***** ^ not supported yet
  969. ***** ^ not supported yet
  970. 454 IF FieldPtr^.typ = ScrnTypes.GotoCode THEN
  971. ***** ^ not supported yet
  972. ***** ^ not supported yet
  973. ***** ^ not supported yet
  974. ***** ^ not supported yet
  975. 455 tmpkey := FieldPtr^.MenuKey;
  976. ***** ^ not supported yet
  977. ***** ^ not supported yet
  978. 456 ELSE
  979. 457 tmpkey := FieldPtr^.ChoiceKey;
  980. ***** ^ not supported yet
  981. ***** ^ not supported yet
  982. 458 END;
  983. 459 IF (tmpkey >= ORD('a')) AND (tmpkey <= ORD('z')) THEN
  984. ***** ^ undeclared identifier
  985. ***** ^ not supported yet
  986. ***** ^ undeclared identifier
  987. ***** ^ not supported yet
  988. 460 (*This stuff gives us case insensitivity in selection
  989. 461 characters.*)
  990. 462 BigSets.InclSet( NewLegalKeys, tmpkey );
  991. ***** ^ not supported yet
  992. ***** ^ not supported yet
  993. ***** ^ not supported yet
  994. ***** ^ not supported yet
  995. 463 BigSets.InclSet( NewLegalKeys, KbdInput.CAPkey(tmpkey) );
  996. ***** ^ not supported yet
  997. ***** ^ not supported yet
  998. ***** ^ not supported yet
  999. ***** ^ not supported yet
  1000. ***** ^ not supported yet
  1001. ***** ^ not supported yet
  1002. 464 ELSIF (tmpkey >= ORD('A')) AND (tmpkey <= ORD('Z')) THEN
  1003. ***** ^ undeclared identifier
  1004. ***** ^ not supported yet
  1005. ***** ^ undeclared identifier
  1006. ***** ^ not supported yet
  1007. 465 BigSets.InclSet( NewLegalKeys, tmpkey );
  1008. ***** ^ not supported yet
  1009. ***** ^ not supported yet
  1010. ***** ^ not supported yet
  1011. ***** ^ not supported yet
  1012. 466 BigSets.InclSet( NewLegalKeys, tmpkey + 32 );
  1013. ***** ^ not supported yet
  1014. ***** ^ not supported yet
  1015. ***** ^ not supported yet
  1016. ***** ^ not supported yet
  1017. 467 ELSE
  1018. 468 BigSets.InclSet( NewLegalKeys, tmpkey );
  1019. ***** ^ not supported yet
  1020. ***** ^ not supported yet
  1021. ***** ^ not supported yet
  1022. ***** ^ not supported yet
  1023. 469 END;
  1024. 470 ELSE
  1025. 471 (* fall through *)
  1026. 472 END;
  1027. 473 END;
  1028. 474 END MakeLegalKeys;
  1029. ***** ^ not supported yet
  1030. 475
  1031. 476
  1032. 477 PROCEDURE MovePointerBar( FrameRec: ScrnTypes.DisplayFrame; NewField :
  1033. ***** ^ not supported yet
  1034. 478 CARDINAL );
  1035. 479 VAR
  1036. 480 TmpStr : ARRAY [0..80] OF CHAR;
  1037. ***** ^ not supported yet
  1038. ***** ^ not supported yet
  1039. 481 NewRowsScrolled, NewColsScrolled : CARDINAL;
  1040. 482 FirstFieldCol, FirstFieldRow, LastFieldCol, LastFieldRow : CARDINAL;
  1041. 483 FirstVisibleRow, FirstVisibleCol, LastVisibleRow,
  1042. 484 LastVisibleCol : CARDINAL;
  1043. 485 Vis : Rectangles.ARectangle;
  1044. ***** ^ not supported yet
  1045. 486
  1046. 487 PROCEDURE ChangeSelection( TheFrame: ScrnTypes.DisplayFrame; NewField:
  1047. ***** ^ not supported yet
  1048. 488 CARDINAL );
  1049. 489 VAR
  1050. 490 FieldPtr: ScrnTypes.InputFieldPtr;
  1051. ***** ^ not supported yet
  1052. 491 BEGIN
  1053. 492 ScrnUtl1.GetFieldPtr( TheFrame, TheFrame^.CurrentField,
  1054. ***** ^ not supported yet
  1055. ***** ^ not supported yet
  1056. ***** ^ not supported yet
  1057. ***** ^ not supported yet
  1058. ***** ^ not supported yet
  1059. 493 FieldPtr );
  1060. ***** ^ not supported yet
  1061. 494 FieldPtr^.selected := FALSE;
  1062. ***** ^ not supported yet
  1063. ***** ^ not supported yet
  1064. 495 FramePainter.RedrawField( FrameRec, FrameRec^.CurrentField, FALSE );
  1065. ***** ^ not supported yet
  1066. ***** ^ not supported yet
  1067. ***** ^ not supported yet
  1068. ***** ^ not supported yet
  1069. ***** ^ not supported yet
  1070. ***** ^ not supported yet
  1071. 496 (* Takes the pointer bar off the old field. *)
  1072. 497 FramePainter.RedrawField( TheFrame, NewField, TRUE );
  1073. ***** ^ not supported yet
  1074. ***** ^ not supported yet
  1075. ***** ^ not supported yet
  1076. ***** ^ not supported yet
  1077. 498 TheFrame^.CurrentField := NewField;
  1078. ***** ^ not supported yet
  1079. ***** ^ not supported yet
  1080. 499 ScrnUtl1.GetFieldPtr( TheFrame, TheFrame^.CurrentField,
  1081. ***** ^ not supported yet
  1082. ***** ^ not supported yet
  1083. ***** ^ not supported yet
  1084. ***** ^ not supported yet
  1085. ***** ^ not supported yet
  1086. 500 FieldPtr );
  1087. ***** ^ not supported yet
  1088. 501 FieldPtr^.selected := TRUE;
  1089. ***** ^ not supported yet
  1090. ***** ^ not supported yet
  1091. 502 IF UserOps.DoPrompting THEN
  1092. ***** ^ not supported yet
  1093. ***** ^ not supported yet
  1094. 503 GetPromptStr( FrameRec, FrameRec^.CurrentField, TmpStr );
  1095. ***** ^ undeclared identifier
  1096. ***** ^ not supported yet
  1097. ***** ^ not supported yet
  1098. ***** ^ not supported yet
  1099. ***** ^ not supported yet
  1100. 504 ShowPrompt( FrameRec, TmpStr );
  1101. ***** ^ undeclared identifier
  1102. ***** ^ not supported yet
  1103. ***** ^ not supported yet
  1104. 505 END;
  1105. 506 END ChangeSelection;
  1106. ***** ^ not supported yet
  1107. 507
  1108. 508 BEGIN (* MovePointerBar *)
  1109. 509 IF NewField < FirstInputField(FrameRec) THEN
  1110. ***** ^ undeclared identifier
  1111. ***** ^ not supported yet
  1112. 510 NewField := LastInputField(FrameRec);
  1113. ***** ^ undeclared identifier
  1114. ***** ^ not supported yet
  1115. 511 ELSIF NewField > LastInputField( FrameRec ) THEN
  1116. ***** ^ undeclared identifier
  1117. ***** ^ not supported yet
  1118. 512 NewField := FirstInputField(FrameRec);
  1119. ***** ^ undeclared identifier
  1120. ***** ^ not supported yet
  1121. 513 ELSIF (ScrnUtl1.FieldType(FrameRec, NewField) =
  1122. ***** ^ not supported yet
  1123. ***** ^ not supported yet
  1124. ***** ^ not supported yet
  1125. ***** ^ not supported yet
  1126. 514 ScrnTypes.DispCode) THEN
  1127. ***** ^ not supported yet
  1128. ***** ^ not supported yet
  1129. 515 NewField := NextInputField( FrameRec, 0 );
  1130. ***** ^ undeclared identifier
  1131. ***** ^ not supported yet
  1132. ***** ^ not supported yet
  1133. 516 END;
  1134. 517 IF NewField = FrameRec^.CurrentField THEN
  1135. ***** ^ not supported yet
  1136. ***** ^ not supported yet
  1137. 518 RETURN;
  1138. 519 ELSIF FrameRec^.CurrentField = 0 THEN
  1139. ***** ^ not supported yet
  1140. ***** ^ not supported yet
  1141. 520 FrameRec^.CurrentField := FirstInputField(FrameRec);
  1142. ***** ^ not supported yet
  1143. ***** ^ not supported yet
  1144. ***** ^ undeclared identifier
  1145. ***** ^ not supported yet
  1146. 521 ELSIF InSameGroup( FrameRec, FrameRec^.CurrentField,
  1147. ***** ^ not supported yet
  1148. ***** ^ not supported yet
  1149. ***** ^ not supported yet
  1150. ***** ^ not supported yet
  1151. 522 NewField) THEN
  1152. ***** ^ not supported yet
  1153. 523 ChangeSelection( FrameRec, NewField );
  1154. ***** ^ not supported yet
  1155. ***** ^ not supported yet
  1156. ***** ^ not supported yet
  1157. 524 RETURN;
  1158. 525 ELSE
  1159. 526 FramePainter.RedrawField( FrameRec, FrameRec^.CurrentField, FALSE );
  1160. ***** ^ not supported yet
  1161. ***** ^ not supported yet
  1162. ***** ^ not supported yet
  1163. ***** ^ not supported yet
  1164. ***** ^ not supported yet
  1165. ***** ^ not supported yet
  1166. 527 (* Takes the pointer bar off the old field. This is
  1167. 528 in the ELSE clause because, if CurrentField is 0,
  1168. 529 we're placing the first pointer bar, and we don't
  1169. 530 need to take it off any other field.*)
  1170. 531 END;
  1171. 532 IF ScrnUtl1.FieldType(FrameRec, NewField) = ScrnTypes.GroupMember THEN
  1172. ***** ^ not supported yet
  1173. ***** ^ not supported yet
  1174. ***** ^ not supported yet
  1175. ***** ^ not supported yet
  1176. ***** ^ not supported yet
  1177. ***** ^ not supported yet
  1178. 533 (* This doesn't actually redraw the new field with the
  1179. 534 pointer bar on it. It just sets the variables that
  1180. 535 will put us on the right field if we're moving into
  1181. 536 a group from somewhere outside it; notice that we RETURN
  1182. 537 above if we're moving inside the same group. *)
  1183. 538 MoveToSelected( FrameRec, NewField );
  1184. ***** ^ not supported yet
  1185. ***** ^ not supported yet
  1186. ***** ^ not supported yet
  1187. 539 END;
  1188. 540
  1189. 541 FrameRec^.CurrentField := NewField;
  1190. ***** ^ not supported yet
  1191. ***** ^ not supported yet
  1192. 542 (* Now we've lost track of what the old field was. *)
  1193. 543
  1194. 544 (* Check and see if scrolling is needed *)
  1195. 545 IF NOT ScrnUtl1.EntirelyVisible(FrameRec, NewField) THEN
  1196. ***** ^ not supported yet
  1197. ***** ^ not supported yet
  1198. ***** ^ not supported yet
  1199. ***** ^ not supported yet
  1200. 546 GetScrollableArea(FrameRec, Vis);
  1201. ***** ^ not supported yet
  1202. ***** ^ not supported yet
  1203. ***** ^ not supported yet
  1204. 547
  1205. 548 FirstVisibleRow := CARDINAL(Vis.row1) + FrameRec^.RowsScrolled
  1206. ***** ^ not supported yet
  1207. ***** ^ not supported yet
  1208. ***** ^ not supported yet
  1209. ***** ^ not supported yet
  1210. 549 - FrameRec^.startrow;
  1211. ***** ^ not supported yet
  1212. ***** ^ not supported yet
  1213. 550 LastVisibleRow := CARDINAL(Vis.row2) + FrameRec^.RowsScrolled
  1214. ***** ^ not supported yet
  1215. ***** ^ not supported yet
  1216. ***** ^ not supported yet
  1217. ***** ^ not supported yet
  1218. 551 - FrameRec^.startrow;
  1219. ***** ^ not supported yet
  1220. ***** ^ not supported yet
  1221. 552 FirstVisibleCol := CARDINAL(Vis.col1) + FrameRec^.ColsScrolled
  1222. ***** ^ not supported yet
  1223. ***** ^ not supported yet
  1224. ***** ^ not supported yet
  1225. ***** ^ not supported yet
  1226. 553 - FrameRec^.startcol;
  1227. ***** ^ not supported yet
  1228. ***** ^ not supported yet
  1229. 554 LastVisibleCol := CARDINAL(Vis.col2) + FrameRec^.ColsScrolled
  1230. ***** ^ not supported yet
  1231. ***** ^ not supported yet
  1232. ***** ^ not supported yet
  1233. ***** ^ not supported yet
  1234. 555 - FrameRec^.startcol;
  1235. ***** ^ not supported yet
  1236. ***** ^ not supported yet
  1237. 556
  1238. 557 FirstFieldRow := ScrnUtl1.VirtualFieldRow(FrameRec, NewField);
  1239. ***** ^ not supported yet
  1240. ***** ^ not supported yet
  1241. ***** ^ not supported yet
  1242. ***** ^ not supported yet
  1243. 558 FirstFieldCol := ScrnUtl1.VirtualFieldCol(FrameRec, NewField);
  1244. ***** ^ not supported yet
  1245. ***** ^ not supported yet
  1246. ***** ^ not supported yet
  1247. ***** ^ not supported yet
  1248. 559 LastFieldRow := FirstFieldRow +
  1249. 560 ScrnUtl1.FieldHeight(FrameRec, NewField) - 1;
  1250. ***** ^ not supported yet
  1251. ***** ^ not supported yet
  1252. ***** ^ not supported yet
  1253. ***** ^ not supported yet
  1254. 561 LastFieldCol := FirstFieldCol +
  1255. 562 ScrnUtl1.FieldWidth(FrameRec, NewField) - 1;
  1256. ***** ^ not supported yet
  1257. ***** ^ not supported yet
  1258. ***** ^ not supported yet
  1259. ***** ^ not supported yet
  1260. 563 (* Default to no scrolling *)
  1261. 564 NewRowsScrolled := FrameRec^.RowsScrolled;
  1262. ***** ^ not supported yet
  1263. ***** ^ not supported yet
  1264. 565 NewColsScrolled := FrameRec^.ColsScrolled;
  1265. ***** ^ not supported yet
  1266. ***** ^ not supported yet
  1267. 566 (* Vertical *)
  1268. 567 IF FirstFieldRow < FirstVisibleRow THEN
  1269. 568 IF ScrnUtl1.InputFieldsAbove(FrameRec, NewField) THEN
  1270. ***** ^ not supported yet
  1271. ***** ^ not supported yet
  1272. ***** ^ not supported yet
  1273. ***** ^ not supported yet
  1274. 569 DEC(NewRowsScrolled, FirstVisibleRow-FirstFieldRow);
  1275. ***** ^ undeclared identifier
  1276. ***** ^ not supported yet
  1277. 570 ELSE
  1278. 571 (* Make sure any text above first input field is
  1279. 572 visible. *)
  1280. 573 NewRowsScrolled := 0;
  1281. 574 END (* if *);
  1282. 575 ELSIF LastFieldRow > LastVisibleRow THEN
  1283. 576 IF ScrnUtl1.InputFieldsBelow(FrameRec, NewField) THEN
  1284. ***** ^ not supported yet
  1285. ***** ^ not supported yet
  1286. ***** ^ not supported yet
  1287. ***** ^ not supported yet
  1288. 577 INC(NewRowsScrolled, LastFieldRow-LastVisibleRow);
  1289. ***** ^ undeclared identifier
  1290. ***** ^ not supported yet
  1291. 578 ELSE
  1292. 579 (* Scroll to bottom of frame *)
  1293. 580 INC(NewRowsScrolled, ScrnUtl1.PartOutside(FrameRec, Vis,
  1294. ***** ^ undeclared identifier
  1295. ***** ^ not supported yet
  1296. ***** ^ not supported yet
  1297. ***** ^ not supported yet
  1298. ***** ^ not supported yet
  1299. 581 VWindows.South));
  1300. ***** ^ not supported yet
  1301. ***** ^ not supported yet
  1302. 582 END;
  1303. 583 END (* if *);
  1304. 584 (* Horizontal *)
  1305. 585 IF FirstFieldCol < FirstVisibleCol THEN
  1306. 586 IF ScrnUtl1.InputFieldsToLeft(FrameRec, NewField) THEN
  1307. ***** ^ not supported yet
  1308. ***** ^ not supported yet
  1309. ***** ^ not supported yet
  1310. ***** ^ not supported yet
  1311. 587 DEC(NewColsScrolled, FirstVisibleCol-FirstFieldCol);
  1312. ***** ^ undeclared identifier
  1313. ***** ^ not supported yet
  1314. 588 ELSE
  1315. 589 NewColsScrolled := 0;
  1316. 590 END;
  1317. 591 ELSIF LastFieldCol > LastVisibleCol THEN
  1318. 592 IF ScrnUtl1.InputFieldsToRight(FrameRec, NewField) THEN
  1319. ***** ^ not supported yet
  1320. ***** ^ not supported yet
  1321. ***** ^ not supported yet
  1322. ***** ^ not supported yet
  1323. 593 INC(NewColsScrolled, LastFieldCol-LastVisibleCol);
  1324. ***** ^ undeclared identifier
  1325. ***** ^ not supported yet
  1326. 594 ELSE
  1327. 595 INC(NewColsScrolled, ScrnUtl1.PartOutside(FrameRec, Vis,
  1328. ***** ^ undeclared identifier
  1329. ***** ^ not supported yet
  1330. ***** ^ not supported yet
  1331. ***** ^ not supported yet
  1332. ***** ^ not supported yet
  1333. 596 VWindows.East));
  1334. ***** ^ not supported yet
  1335. ***** ^ not supported yet
  1336. 597 END;
  1337. 598 END (* if *);
  1338. 599 SlideFrame(FrameRec, FrameRec^.ColsScrolled, NewColsScrolled,
  1339. ***** ^ undeclared identifier
  1340. ***** ^ not supported yet
  1341. ***** ^ not supported yet
  1342. ***** ^ not supported yet
  1343. 600 FrameRec^.RowsScrolled, NewRowsScrolled);
  1344. ***** ^ not supported yet
  1345. ***** ^ not supported yet
  1346. ***** ^ not supported yet
  1347. 601 END (* if not entirely visible *);
  1348. 602
  1349. 603 IF ScrnUtl1.FieldType(FrameRec, NewField) # ScrnTypes.EditorCode THEN
  1350. ***** ^ not supported yet
  1351. ***** ^ not supported yet
  1352. ***** ^ not supported yet
  1353. ***** ^ not supported yet
  1354. ***** ^ not supported yet
  1355. ***** ^ not supported yet
  1356. 604 FramePainter.RedrawField(FrameRec, NewField, TRUE);
  1357. ***** ^ not supported yet
  1358. ***** ^ not supported yet
  1359. ***** ^ not supported yet
  1360. ***** ^ not supported yet
  1361. 605 (* Hightlight field *)
  1362. 606 END;
  1363. 607 IF UserOps.DoPrompting THEN
  1364. ***** ^ not supported yet
  1365. ***** ^ not supported yet
  1366. 608 GetPromptStr( FrameRec, FrameRec^.CurrentField, TmpStr );
  1367. ***** ^ undeclared identifier
  1368. ***** ^ not supported yet
  1369. ***** ^ not supported yet
  1370. ***** ^ not supported yet
  1371. ***** ^ not supported yet
  1372. 609 ShowPrompt( FrameRec, TmpStr );
  1373. ***** ^ undeclared identifier
  1374. ***** ^ not supported yet
  1375. ***** ^ not supported yet
  1376. 610 END;
  1377. 611 END MovePointerBar;
  1378. ***** ^ not supported yet
  1379. 612
  1380. 613
  1381. 614 PROCEDURE PageDown(TheFrame : ScrnTypes.DisplayFrame);
  1382. ***** ^ not supported yet
  1383. 615 (*
  1384. 616 Move to the field nearest to one scroll height below
  1385. 617 the current one.
  1386. 618 *)
  1387. 619 VAR
  1388. 620 Vis : Rectangles.ARectangle;
  1389. ***** ^ not supported yet
  1390. 621 NewField, ScrollHeight, NewRow, NewCol, Distance : CARDINAL;
  1391. 622 BEGIN
  1392. 623 IF ScrnUtl1.EntirelyVisible( TheFrame, LastInputField(TheFrame) ) THEN
  1393. ***** ^ not supported yet
  1394. ***** ^ not supported yet
  1395. ***** ^ not supported yet
  1396. ***** ^ undeclared identifier
  1397. ***** ^ not supported yet
  1398. 624 MovePointerBar( TheFrame, LastInputField(TheFrame) );
  1399. ***** ^ not supported yet
  1400. ***** ^ not supported yet
  1401. ***** ^ undeclared identifier
  1402. ***** ^ not supported yet
  1403. 625 RETURN;
  1404. 626 END;
  1405. 627 (*
  1406. 628 The next field isn't currently visible, need to
  1407. 629 repaint the entire frame
  1408. 630 *)
  1409. 631 GetScrollableArea(TheFrame, Vis);
  1410. ***** ^ not supported yet
  1411. ***** ^ not supported yet
  1412. ***** ^ not supported yet
  1413. 632 ScrollHeight := CARDINAL(Vis.row2-Vis.row1)+1;
  1414. ***** ^ not supported yet
  1415. ***** ^ not supported yet
  1416. ***** ^ not supported yet
  1417. ***** ^ not supported yet
  1418. 633 NewRow := ScrnUtl1.VirtualFieldRow(TheFrame, TheFrame^.CurrentField)
  1419. ***** ^ not supported yet
  1420. ***** ^ not supported yet
  1421. ***** ^ not supported yet
  1422. ***** ^ not supported yet
  1423. ***** ^ not supported yet
  1424. 634 + ScrollHeight;
  1425. 635 NewCol := ScrnUtl1.VirtualFieldCol(TheFrame, TheFrame^.CurrentField);
  1426. ***** ^ not supported yet
  1427. ***** ^ not supported yet
  1428. ***** ^ not supported yet
  1429. ***** ^ not supported yet
  1430. ***** ^ not supported yet
  1431. 636 NewField := ClosestField(TheFrame, 0, NewCol, NewRow+1,
  1432. ***** ^ not supported yet
  1433. ***** ^ not supported yet
  1434. 637 VWindows.North);
  1435. ***** ^ not supported yet
  1436. ***** ^ not supported yet
  1437. 638 MovePointerBar( TheFrame, NewField );
  1438. ***** ^ not supported yet
  1439. ***** ^ not supported yet
  1440. ***** ^ not supported yet
  1441. 639 END PageDown;
  1442. ***** ^ not supported yet
  1443. 640
  1444. 641
  1445. 642 PROCEDURE PageUp(TheFrame : ScrnTypes.DisplayFrame);
  1446. ***** ^ not supported yet
  1447. 643 (*
  1448. 644 Move to the field nearest to one scroll height above
  1449. 645 the current one.
  1450. 646 *)
  1451. 647 VAR
  1452. 648 Vis : Rectangles.ARectangle;
  1453. ***** ^ not supported yet
  1454. 649 NewField, vrow, ScrollHeight, NewRow, NewCol: CARDINAL;
  1455. 650 BEGIN
  1456. 651 GetScrollableArea(TheFrame, Vis);
  1457. ***** ^ not supported yet
  1458. ***** ^ not supported yet
  1459. ***** ^ not supported yet
  1460. 652 ScrollHeight := CARDINAL(Vis.row2-Vis.row1)+1;
  1461. ***** ^ not supported yet
  1462. ***** ^ not supported yet
  1463. ***** ^ not supported yet
  1464. ***** ^ not supported yet
  1465. 653 IF TheFrame^.RowsScrolled = 0 THEN
  1466. ***** ^ not supported yet
  1467. ***** ^ not supported yet
  1468. 654 MovePointerBar( TheFrame, FirstInputField(TheFrame) );
  1469. ***** ^ not supported yet
  1470. ***** ^ not supported yet
  1471. ***** ^ undeclared identifier
  1472. ***** ^ not supported yet
  1473. 655 ELSE
  1474. 656 vrow := ScrnUtl1.VirtualFieldRow(TheFrame, TheFrame^.CurrentField);
  1475. ***** ^ not supported yet
  1476. ***** ^ not supported yet
  1477. ***** ^ not supported yet
  1478. ***** ^ not supported yet
  1479. ***** ^ not supported yet
  1480. 657 NewRow := Numbers.IntMax( 1, INTEGER(vrow) - INTEGER(ScrollHeight) );
  1481. ***** ^ not supported yet
  1482. ***** ^ not supported yet
  1483. ***** ^ not supported yet
  1484. ***** ^ not supported yet
  1485. 658 NewCol := ScrnUtl1.VirtualFieldCol(TheFrame, TheFrame^.CurrentField);
  1486. ***** ^ not supported yet
  1487. ***** ^ not supported yet
  1488. ***** ^ not supported yet
  1489. ***** ^ not supported yet
  1490. ***** ^ not supported yet
  1491. 659 NewField := ClosestField(TheFrame, 0, NewCol, NewRow-1,
  1492. ***** ^ not supported yet
  1493. ***** ^ not supported yet
  1494. 660 VWindows.South);
  1495. ***** ^ not supported yet
  1496. ***** ^ not supported yet
  1497. 661 MovePointerBar( TheFrame, NewField );
  1498. ***** ^ not supported yet
  1499. ***** ^ not supported yet
  1500. ***** ^ not supported yet
  1501. 662 END;
  1502. 663 END PageUp;
  1503. ***** ^ not supported yet
  1504. 664
  1505. 665
  1506. 666 (*================== Exported Procedures ========================*)
  1507. 667
  1508. 668 PROCEDURE FirstInputField(FrameRec : ScrnTypes.DisplayFrame) : CARDINAL;
  1509. ***** ^ not supported yet
  1510. 669 VAR
  1511. 670 LastField, NewField : CARDINAL;
  1512. 671 BEGIN
  1513. 672 LastField := ScrnUtl1.FieldListTotal(FrameRec);
  1514. ***** ^ not supported yet
  1515. ***** ^ not supported yet
  1516. ***** ^ not supported yet
  1517. 673 NewField := 1;
  1518. 674 WHILE (ScrnUtl1.FieldType(FrameRec, NewField) = ScrnTypes.DispCode) DO
  1519. ***** ^ not supported yet
  1520. ***** ^ not supported yet
  1521. ***** ^ not supported yet
  1522. ***** ^ not supported yet
  1523. ***** ^ not supported yet
  1524. ***** ^ not supported yet
  1525. 675 IF NewField < LastField THEN
  1526. 676 INC(NewField);
  1527. ***** ^ undeclared identifier
  1528. ***** ^ not supported yet
  1529. 677 ELSE
  1530. 678 RETURN 1;
  1531. 679 END;
  1532. 680 END (* while *);
  1533. 681 RETURN NewField;
  1534. 682 END FirstInputField;
  1535. ***** ^ not supported yet
  1536. 683
  1537. 684 PROCEDURE LastInputField(FrameRec : ScrnTypes.DisplayFrame) : CARDINAL;
  1538. ***** ^ not supported yet
  1539. 685 VAR
  1540. 686 NewField : CARDINAL;
  1541. 687 BEGIN
  1542. 688 NewField := ScrnUtl1.FieldListTotal(FrameRec);
  1543. ***** ^ not supported yet
  1544. ***** ^ not supported yet
  1545. ***** ^ not supported yet
  1546. 689 WHILE (ScrnUtl1.FieldType(FrameRec, NewField) = ScrnTypes.DispCode) DO
  1547. ***** ^ not supported yet
  1548. ***** ^ not supported yet
  1549. ***** ^ not supported yet
  1550. ***** ^ not supported yet
  1551. ***** ^ not supported yet
  1552. ***** ^ not supported yet
  1553. 690 IF NewField > 1 THEN
  1554. 691 DEC(NewField);
  1555. ***** ^ undeclared identifier
  1556. ***** ^ not supported yet
  1557. 692 ELSE
  1558. 693 RETURN ScrnUtl1.FieldListTotal(FrameRec);
  1559. ***** ^ not supported yet
  1560. ***** ^ not supported yet
  1561. ***** ^ not supported yet
  1562. 694 END (* if *);
  1563. 695 END (* while *);
  1564. 696 RETURN NewField;
  1565. 697 END LastInputField;
  1566. ***** ^ not supported yet
  1567. 698
  1568. 699 PROCEDURE NextInputField( FrameRec : ScrnTypes.DisplayFrame;
  1569. ***** ^ not supported yet
  1570. 700 skip: CARDINAL ): CARDINAL;
  1571. 701 VAR
  1572. 702 LastField, NewField : CARDINAL;
  1573. 703 BEGIN
  1574. 704 LastField := ScrnUtl1.FieldListTotal(FrameRec);
  1575. ***** ^ not supported yet
  1576. ***** ^ not supported yet
  1577. ***** ^ not supported yet
  1578. 705 IF FrameRec^.CurrentField < (LastField - skip) THEN
  1579. ***** ^ not supported yet
  1580. ***** ^ not supported yet
  1581. 706 NewField := FrameRec^.CurrentField + skip + 1;
  1582. ***** ^ not supported yet
  1583. ***** ^ not supported yet
  1584. 707 ELSE
  1585. 708 NewField := 1;
  1586. 709 END;
  1587. 710 WHILE (ScrnUtl1.FieldType(FrameRec, NewField) = ScrnTypes.DispCode)
  1588. ***** ^ not supported yet
  1589. ***** ^ not supported yet
  1590. ***** ^ not supported yet
  1591. ***** ^ not supported yet
  1592. ***** ^ not supported yet
  1593. ***** ^ not supported yet
  1594. 711 AND (NewField # FrameRec^.CurrentField) DO
  1595. ***** ^ not supported yet
  1596. ***** ^ not supported yet
  1597. 712 IF NewField < LastField THEN
  1598. 713 INC(NewField);
  1599. ***** ^ undeclared identifier
  1600. ***** ^ not supported yet
  1601. 714 ELSE
  1602. 715 NewField := 1;
  1603. 716 END;
  1604. 717 END (* while *);
  1605. 718 RETURN NewField;
  1606. 719 END NextInputField;
  1607. ***** ^ not supported yet
  1608. 720
  1609. 721 PROCEDURE PrevInputField( VAR FrameRec : ScrnTypes.DisplayFrame;
  1610. ***** ^ not supported yet
  1611. 722 skip: CARDINAL ) : CARDINAL;
  1612. 723 VAR
  1613. 724 NewField : CARDINAL;
  1614. 725 BEGIN
  1615. 726 IF (FrameRec^.CurrentField + skip) > 1 THEN
  1616. ***** ^ not supported yet
  1617. ***** ^ not supported yet
  1618. 727 NewField := (FrameRec^.CurrentField - skip) - 1;
  1619. ***** ^ not supported yet
  1620. ***** ^ not supported yet
  1621. 728 ELSE
  1622. 729 NewField := ScrnUtl1.FieldListTotal(FrameRec);
  1623. ***** ^ not supported yet
  1624. ***** ^ not supported yet
  1625. ***** ^ not supported yet
  1626. 730 END;
  1627. 731 WHILE (ScrnUtl1.FieldType(FrameRec, NewField) = ScrnTypes.DispCode)
  1628. ***** ^ not supported yet
  1629. ***** ^ not supported yet
  1630. ***** ^ not supported yet
  1631. ***** ^ not supported yet
  1632. ***** ^ not supported yet
  1633. ***** ^ not supported yet
  1634. 732 AND (NewField # FrameRec^.CurrentField) DO
  1635. ***** ^ not supported yet
  1636. ***** ^ not supported yet
  1637. 733 IF NewField > 1 THEN
  1638. 734 DEC(NewField);
  1639. ***** ^ undeclared identifier
  1640. ***** ^ not supported yet
  1641. 735 ELSE
  1642. 736 NewField := ScrnUtl1.FieldListTotal(FrameRec);
  1643. ***** ^ not supported yet
  1644. ***** ^ not supported yet
  1645. ***** ^ not supported yet
  1646. 737 END;
  1647. 738 END (* while *);
  1648. 739 RETURN NewField;
  1649. 740 END PrevInputField;
  1650. ***** ^ not supported yet
  1651. 741
  1652. 742
  1653. 743 PROCEDURE HiLiteSelChars( TheFrame: ScrnTypes.DisplayFrame );
  1654. ***** ^ not supported yet
  1655. 744 VAR
  1656. 745 FieldListEnd, cnt: CARDINAL;
  1657. 746 TmpType : CHAR;
  1658. 747 BEGIN
  1659. 748 FieldListEnd := ScrnUtl1.FieldListTotal( TheFrame );
  1660. ***** ^ not supported yet
  1661. ***** ^ not supported yet
  1662. ***** ^ not supported yet
  1663. 749 FOR cnt := 1 TO FieldListEnd DO
  1664. 750 TmpType := ScrnUtl1.FieldType( TheFrame, cnt );
  1665. ***** ^ not supported yet
  1666. ***** ^ not supported yet
  1667. ***** ^ not supported yet
  1668. ***** ^ not supported yet
  1669. 751 IF (TmpType = ScrnTypes.GotoCode) OR
  1670. ***** ^ not supported yet
  1671. ***** ^ not supported yet
  1672. 752 (TmpType = ScrnTypes.GroupMember) THEN
  1673. ***** ^ not supported yet
  1674. ***** ^ not supported yet
  1675. 753 IF ScrnUtl1.EntirelyVisible( TheFrame, cnt ) THEN
  1676. ***** ^ not supported yet
  1677. ***** ^ not supported yet
  1678. ***** ^ not supported yet
  1679. ***** ^ not supported yet
  1680. 754 FramePainter.RedrawField( TheFrame, cnt, FALSE );
  1681. ***** ^ not supported yet
  1682. ***** ^ not supported yet
  1683. ***** ^ not supported yet
  1684. ***** ^ not supported yet
  1685. 755 END;
  1686. 756 END;
  1687. 757 END;
  1688. 758 END HiLiteSelChars;
  1689. ***** ^ not supported yet
  1690. 759
  1691. 760
  1692. 761 PROCEDURE LookAlive( TheFrame: ScrnTypes.DisplayFrame );
  1693. ***** ^ not supported yet
  1694. 762 VAR
  1695. 763 TmpStr: ARRAY [0..127] OF CHAR;
  1696. ***** ^ not supported yet
  1697. ***** ^ not supported yet
  1698. 764 fldtype : CHAR;
  1699. 765 BEGIN
  1700. 766 IF TheFrame^.action <= 'Z' THEN
  1701. ***** ^ not supported yet
  1702. ***** ^ not supported yet
  1703. 767 (* We are temporarily lowercasing the .action character
  1704. 768 to tell us whether the frame is under the control of
  1705. 769 ControlFrame. We use this to disable LookAlive when
  1706. 770 it is called in places where it probably shouldn't be.
  1707. 771 Not good. *)
  1708. 772 RETURN;
  1709. 773 END;
  1710. 774 HiLiteSelChars( TheFrame );
  1711. ***** ^ not supported yet
  1712. ***** ^ not supported yet
  1713. 775 IF (TheFrame^.CurrentField > 0) AND
  1714. ***** ^ not supported yet
  1715. ***** ^ not supported yet
  1716. 776 (TheFrame^.CurrentField <= ScrnUtl1.FieldListTotal(TheFrame)) THEN
  1717. ***** ^ not supported yet
  1718. ***** ^ not supported yet
  1719. ***** ^ not supported yet
  1720. ***** ^ not supported yet
  1721. ***** ^ not supported yet
  1722. 777 IF UserOps.DoPrompting THEN
  1723. ***** ^ not supported yet
  1724. ***** ^ not supported yet
  1725. 778 GetPromptStr( TheFrame, TheFrame^.CurrentField, TmpStr );
  1726. ***** ^ undeclared identifier
  1727. ***** ^ not supported yet
  1728. ***** ^ not supported yet
  1729. ***** ^ not supported yet
  1730. ***** ^ not supported yet
  1731. 779 ShowPrompt( TheFrame, TmpStr );
  1732. ***** ^ undeclared identifier
  1733. ***** ^ not supported yet
  1734. ***** ^ not supported yet
  1735. 780 END;
  1736. 781 fldtype := ScrnUtl1.FieldType( TheFrame, TheFrame^.CurrentField );
  1737. ***** ^ not supported yet
  1738. ***** ^ not supported yet
  1739. ***** ^ not supported yet
  1740. ***** ^ not supported yet
  1741. ***** ^ not supported yet
  1742. 782 IF ScrnUtl1.EntirelyVisible( TheFrame, TheFrame^.CurrentField ) THEN
  1743. ***** ^ not supported yet
  1744. ***** ^ not supported yet
  1745. ***** ^ not supported yet
  1746. ***** ^ not supported yet
  1747. ***** ^ not supported yet
  1748. 783 FramePainter.RedrawField( TheFrame, TheFrame^.CurrentField, TRUE );
  1749. ***** ^ not supported yet
  1750. ***** ^ not supported yet
  1751. ***** ^ not supported yet
  1752. ***** ^ not supported yet
  1753. ***** ^ not supported yet
  1754. ***** ^ not supported yet
  1755. 784 IF (fldtype # ScrnTypes.GotoCode) AND (fldtype #
  1756. ***** ^ not supported yet
  1757. ***** ^ not supported yet
  1758. 785 ScrnTypes.GroupMember) AND (fldtype #
  1759. ***** ^ not supported yet
  1760. ***** ^ not supported yet
  1761. 786 ScrnTypes.DispCode) THEN
  1762. ***** ^ not supported yet
  1763. ***** ^ not supported yet
  1764. 787 VWindows.SetCursorHeight( VWindows.CurrentWindow, 2 );
  1765. ***** ^ not supported yet
  1766. ***** ^ not supported yet
  1767. ***** ^ not supported yet
  1768. ***** ^ not supported yet
  1769. ***** ^ not supported yet
  1770. 788 END;
  1771. 789 END;
  1772. 790 END;
  1773. 791 END LookAlive;
  1774. ***** ^ not supported yet
  1775. 792
  1776. 793
  1777. 794 PROCEDURE ReconstructFrame( TheFrame: ScrnTypes.DisplayFrame );
  1778. ***** ^ not supported yet
  1779. 795 VAR
  1780. 796 TmpStr: ARRAY [0..127] OF CHAR;
  1781. ***** ^ not supported yet
  1782. ***** ^ not supported yet
  1783. 797 BEGIN
  1784. 798 FramePainter.ShowDisplayFrame( TheFrame, 0, 0, 0, 0 );
  1785. ***** ^ not supported yet
  1786. ***** ^ not supported yet
  1787. ***** ^ not supported yet
  1788. ***** ^ not supported yet
  1789. 799 LookAlive( TheFrame );
  1790. ***** ^ not supported yet
  1791. ***** ^ not supported yet
  1792. 800 END ReconstructFrame;
  1793. ***** ^ not supported yet
  1794. 801
  1795. 802
  1796. 803 PROCEDURE ShowPrompt( FrameRec: ScrnTypes.DisplayFrame;
  1797. ***** ^ not supported yet
  1798. 804 str : ARRAY OF CHAR );
  1799. ***** ^ not supported yet
  1800. 805 (*Display the prompt centered within the prompt line
  1801. 806 specified in UserOps.*)
  1802. 807 VAR
  1803. 808 tmp: ARRAY [0..127] OF CHAR;
  1804. ***** ^ not supported yet
  1805. ***** ^ not supported yet
  1806. 809 (*We use tmp because the caller may not have left enough
  1807. 810 room in str to pad it with blanks.*)
  1808. 811 BEGIN
  1809. 812 ScrnUtl1.SetPromptColors( FrameRec );
  1810. ***** ^ not supported yet
  1811. ***** ^ not supported yet
  1812. ***** ^ not supported yet
  1813. 813 M2Strings.Assign( str, tmp );
  1814. ***** ^ not supported yet
  1815. ***** ^ not supported yet
  1816. ***** ^ not supported yet
  1817. ***** ^ not supported yet
  1818. 814 StrEdit.Center( tmp, UserOps.PromptLength );
  1819. ***** ^ not supported yet
  1820. ***** ^ not supported yet
  1821. ***** ^ not supported yet
  1822. ***** ^ not supported yet
  1823. ***** ^ not supported yet
  1824. 815
  1825. 816 VWindows.DrawStr( FrameRec^.WindowHandle, UserOps.PromptCol,
  1826. ***** ^ not supported yet
  1827. ***** ^ not supported yet
  1828. ***** ^ not supported yet
  1829. ***** ^ not supported yet
  1830. ***** ^ not supported yet
  1831. ***** ^ not supported yet
  1832. 817 UserOps.PromptRow, SYSTEM.ADR(tmp),
  1833. ***** ^ not supported yet
  1834. ***** ^ not supported yet
  1835. ***** ^ not supported yet
  1836. ***** ^ not supported yet
  1837. ***** ^ not supported yet
  1838. 818 UserOps.PromptLength );
  1839. ***** ^ not supported yet
  1840. ***** ^ not supported yet
  1841. 819 END ShowPrompt;
  1842. ***** ^ not supported yet
  1843. 820
  1844. 821
  1845. 822 PROCEDURE GetPromptStr( TheFrame: ScrnTypes.DisplayFrame; TheField:
  1846. ***** ^ not supported yet
  1847. 823 CARDINAL; VAR TheStr: ARRAY OF CHAR );
  1848. ***** ^ not supported yet
  1849. 824 VAR
  1850. 825 FieldRec: ScrnTypes.InputFieldRecord;
  1851. ***** ^ not supported yet
  1852. 826 TypeCode: CARDINAL;
  1853. 827 MaxStr, MinStr: ARRAY [0..31] OF CHAR;
  1854. ***** ^ not supported yet
  1855. ***** ^ not supported yet
  1856. 828 BEGIN
  1857. 829 ScrnUtl1.GetFieldRec( TheFrame, TheField, FieldRec );
  1858. ***** ^ not supported yet
  1859. ***** ^ not supported yet
  1860. ***** ^ not supported yet
  1861. ***** ^ not supported yet
  1862. 830 IF FieldRec.PromptNum # 0 THEN
  1863. ***** ^ not supported yet
  1864. ***** ^ not supported yet
  1865. 831 GenLists.GetElmt( TheFrame^.PromptList, FieldRec.PromptNum,
  1866. ***** ^ not supported yet
  1867. ***** ^ not supported yet
  1868. ***** ^ not supported yet
  1869. ***** ^ not supported yet
  1870. ***** ^ not supported yet
  1871. ***** ^ not supported yet
  1872. 832 TheStr, TypeCode );
  1873. ***** ^ not supported yet
  1874. ***** ^ not supported yet
  1875. 833 ELSE
  1876. 834 FieldTypes.GetDefaultPrompt( FieldRec.typ, TheStr );
  1877. ***** ^ not supported yet
  1878. ***** ^ not supported yet
  1879. ***** ^ not supported yet
  1880. ***** ^ not supported yet
  1881. ***** ^ not supported yet
  1882. 835 CASE FieldRec.typ OF
  1883. ***** ^ not supported yet
  1884. ***** ^ not supported yet
  1885. 836 ScrnTypes.IntCode :
  1886. ***** ^ not supported yet
  1887. ***** ^ not supported yet
  1888. 837 StrConv.LongIntegerToStr( FieldRec.iMax, 1, MaxStr );
  1889. ***** ^ not supported yet
  1890. ***** ^ not supported yet
  1891. ***** ^ not supported yet
  1892. ***** ^ not supported yet
  1893. ***** ^ not supported yet
  1894. 838 StrConv.LongIntegerToStr( FieldRec.iMin, 1, MinStr);
  1895. ***** ^ not supported yet
  1896. ***** ^ not supported yet
  1897. ***** ^ not supported yet
  1898. ***** ^ not supported yet
  1899. ***** ^ not supported yet
  1900. 839 | ScrnTypes.RealCode :
  1901. ***** ^ not supported yet
  1902. ***** ^ not supported yet
  1903. 840 StrConv.RealToStr( FieldRec.rMax, 1, 0, MaxStr );
  1904. ***** ^ not supported yet
  1905. ***** ^ not supported yet
  1906. ***** ^ not supported yet
  1907. ***** ^ not supported yet
  1908. ***** ^ not supported yet
  1909. 841 StrConv.RealToStr( FieldRec.rMin, 1, 0, MinStr);
  1910. ***** ^ not supported yet
  1911. ***** ^ not supported yet
  1912. ***** ^ not supported yet
  1913. ***** ^ not supported yet
  1914. ***** ^ not supported yet
  1915. 842 ELSE
  1916. 843 RETURN;
  1917. 844 END;
  1918. 845 StrEdit.ReplaceStr( 'MAX', MaxStr, TheStr );
  1919. ***** ^ not supported yet
  1920. ***** ^ not supported yet
  1921. ***** ^ not supported yet
  1922. ***** ^ not supported yet
  1923. ***** ^ not supported yet
  1924. 846 StrEdit.ReplaceStr( 'MIN', MinStr, TheStr );
  1925. ***** ^ not supported yet
  1926. ***** ^ not supported yet
  1927. ***** ^ not supported yet
  1928. ***** ^ not supported yet
  1929. ***** ^ not supported yet
  1930. 847 END;
  1931. 848 END GetPromptStr;
  1932. ***** ^ not supported yet
  1933. 849
  1934. 850
  1935. 851 PROCEDURE SlideFrame( FrameRec: ScrnTypes.DisplayFrame;
  1936. ***** ^ not supported yet
  1937. 852 OldColsScrolled, NewColsScrolled, OldRowsScrolled,
  1938. 853 NewRowsScrolled: CARDINAL );
  1939. 854 VAR
  1940. 855 Vis: Rectangles.ARectangle;
  1941. ***** ^ not supported yet
  1942. 856 vdist, ScrollableHeight : INTEGER;
  1943. 857 BEGIN
  1944. 858 FrameRec^.ColsScrolled := NewColsScrolled;
  1945. ***** ^ not supported yet
  1946. ***** ^ not supported yet
  1947. 859 FrameRec^.RowsScrolled := NewRowsScrolled;
  1948. ***** ^ not supported yet
  1949. ***** ^ not supported yet
  1950. 860 vdist := INTEGER(NewRowsScrolled) - INTEGER(OldRowsScrolled);
  1951. ***** ^ not supported yet
  1952. ***** ^ not supported yet
  1953. 861 IF (vdist = 0) AND (NewColsScrolled = OldColsScrolled) THEN
  1954. 862 RETURN;
  1955. 863 END;
  1956. 864 ScrnUtl1.SetNormalColors( FrameRec );
  1957. ***** ^ not supported yet
  1958. ***** ^ not supported yet
  1959. ***** ^ not supported yet
  1960. 865 GetScrollableArea( FrameRec, Vis );
  1961. ***** ^ not supported yet
  1962. ***** ^ not supported yet
  1963. ***** ^ not supported yet
  1964. 866 WITH Vis DO
  1965. ***** ^ not supported yet
  1966. 867 IF NewColsScrolled # OldColsScrolled THEN
  1967. 868 (*We repaint the whole window if we're going to have to
  1968. 869 scroll horizontally.*)
  1969. 870 VWindows.ClearPart( FrameRec^.WindowHandle, col1,
  1970. ***** ^ not supported yet
  1971. ***** ^ not supported yet
  1972. ***** ^ not supported yet
  1973. ***** ^ not supported yet
  1974. ***** ^ undeclared identifier
  1975. 871 row1, col2, row2 );
  1976. ***** ^ undeclared identifier
  1977. ***** ^ undeclared identifier
  1978. ***** ^ undeclared identifier
  1979. 872 FramePainter.RedrawArea( FrameRec, CARDINAL(col1),
  1980. ***** ^ not supported yet
  1981. ***** ^ not supported yet
  1982. ***** ^ not supported yet
  1983. ***** ^ undeclared identifier
  1984. 873 CARDINAL(row1), CARDINAL(col2), CARDINAL(row2) );
  1985. ***** ^ undeclared identifier
  1986. ***** ^ undeclared identifier
  1987. ***** ^ undeclared identifier
  1988. 874 RETURN;
  1989. 875 END;
  1990. 876 ScrollableHeight := CARDINAL(row2) - CARDINAL(row1) + 1;
  1991. ***** ^ undeclared identifier
  1992. ***** ^ undeclared identifier
  1993. 877 IF ABS(vdist) > ScrollableHeight THEN
  1994. ***** ^ undeclared identifier
  1995. ***** ^ not supported yet
  1996. 878 IF vdist > 0 THEN
  1997. 879 vdist := ScrollableHeight;
  1998. 880 ELSE
  1999. 881 vdist := -ScrollableHeight;
  2000. 882 END;
  2001. 883 END;
  2002. 884 IF NOT VWindows.ScrollVertically(FrameRec^.WindowHandle,
  2003. ***** ^ not supported yet
  2004. ***** ^ not supported yet
  2005. ***** ^ not supported yet
  2006. ***** ^ not supported yet
  2007. 885 col1, row1, col2, row2, vdist ) THEN
  2008. ***** ^ undeclared identifier
  2009. ***** ^ undeclared identifier
  2010. ***** ^ undeclared identifier
  2011. ***** ^ undeclared identifier
  2012. ***** ^ not supported yet
  2013. 886 (*tough luck if the window manager doesn't support scrolling*)
  2014. 887 END;
  2015. 888 IF vdist > 0 THEN
  2016. 889 (*Redraw the area at the bottom because we scrolled up.*)
  2017. 890 FramePainter.RedrawArea( FrameRec, CARDINAL(col1),
  2018. ***** ^ not supported yet
  2019. ***** ^ not supported yet
  2020. ***** ^ not supported yet
  2021. ***** ^ undeclared identifier
  2022. 891 (CARDINAL(row2) - CARDINAL(ABS(vdist))) + 1,
  2023. ***** ^ undeclared identifier
  2024. ***** ^ undeclared identifier
  2025. ***** ^ not supported yet
  2026. 892 CARDINAL(col2), CARDINAL(row2) );
  2027. ***** ^ undeclared identifier
  2028. ***** ^ undeclared identifier
  2029. 893 ELSE
  2030. 894 (*Redraw the area at the top because we scrolled down.*)
  2031. 895 FramePainter.RedrawArea( FrameRec, CARDINAL(col1),
  2032. ***** ^ not supported yet
  2033. ***** ^ not supported yet
  2034. ***** ^ not supported yet
  2035. ***** ^ undeclared identifier
  2036. 896 CARDINAL(row1),CARDINAL(col2),CARDINAL(row1+ABS(vdist)-1));
  2037. ***** ^ undeclared identifier
  2038. ***** ^ undeclared identifier
  2039. ***** ^ undeclared identifier
  2040. ***** ^ undeclared identifier
  2041. ***** ^ not supported yet
  2042. ***** ^ not supported yet
  2043. 897 END (* if *);
  2044. 898 END (* with Vis *);
  2045. ***** ^ not supported yet
  2046. 899 END SlideFrame;
  2047. ***** ^ not supported yet
  2048. 900
  2049. 901
  2050. 902 PROCEDURE ControlFrame(VAR FrameRec : ScrnTypes.DisplayFrame;
  2051. ***** ^ not supported yet
  2052. 903 LandingField : CARDINAL; message : ARRAY OF CHAR;
  2053. ***** ^ not supported yet
  2054. 904 RedrawFirst : BOOLEAN; VAR NextFrame: ScrnTypes.AFrameName );
  2055. ***** ^ not supported yet
  2056. 905 VAR
  2057. 906 MaxChoices, SavedFieldNum: CARDINAL;
  2058. 907 ReturnValue, FrameAbove, FrameBelow, FrameLeft,
  2059. 908 FrameRight : ScrnTypes.AFrameName;
  2060. ***** ^ not supported yet
  2061. 909 LastKey : CARDINAL;
  2062. 910 AbsFldCol, AbsFldRow: INTEGER;
  2063. 911 LocalMessage : ARRAY [0..79] OF CHAR;
  2064. ***** ^ not supported yet
  2065. ***** ^ not supported yet
  2066. 912 TmpScreenKeys: KbdInput.KeyNumSet;
  2067. ***** ^ not supported yet
  2068. 913 FieldRec: ScrnTypes.InputFieldRecord;
  2069. ***** ^ not supported yet
  2070. 914
  2071. 915
  2072. 916 PROCEDURE HitAnyKey( VAR NextFrame: ScrnTypes.AFrameName );
  2073. ***** ^ not supported yet
  2074. 917 (* prompt for any key to be hit and exit, returning
  2075. 918 either normal next or TheKeyHandler result (keep
  2076. 919 asking for input if user asks for help or time) *)
  2077. 920 VAR
  2078. 921 key : CARDINAL;
  2079. 922 tryagain : BOOLEAN;
  2080. 923 BEGIN
  2081. 924 IF UserOps.DoPrompting THEN
  2082. ***** ^ not supported yet
  2083. ***** ^ not supported yet
  2084. 925 ShowPrompt( FrameRec, 'Press Any Key To Continue.' );
  2085. ***** ^ not supported yet
  2086. ***** ^ not supported yet
  2087. ***** ^ not supported yet
  2088. 926 END;
  2089. 927 REPEAT
  2090. 928 key := KbdInput.KeyHit( KbdInput.AnyKeyNum );
  2091. ***** ^ not supported yet
  2092. ***** ^ not supported yet
  2093. ***** ^ not supported yet
  2094. ***** ^ not supported yet
  2095. 929 IF BigSets.InSet( UserOps.FunctKeySet, key ) THEN
  2096. ***** ^ not supported yet
  2097. ***** ^ not supported yet
  2098. ***** ^ not supported yet
  2099. ***** ^ not supported yet
  2100. ***** ^ not supported yet
  2101. 930 (* if in special key set, execute user program *)
  2102. 931 SavedFieldNum := FrameRec^.CurrentField;
  2103. ***** ^ not supported yet
  2104. ***** ^ not supported yet
  2105. 932 UserOps.TheKeyHandler( FrameRec, key, NextFrame );
  2106. ***** ^ not supported yet
  2107. ***** ^ not supported yet
  2108. ***** ^ not supported yet
  2109. ***** ^ not supported yet
  2110. 933 ScrnUtl1.SetCurrentField( FrameRec, SavedFieldNum );
  2111. ***** ^ not supported yet
  2112. ***** ^ not supported yet
  2113. ***** ^ not supported yet
  2114. ***** ^ not supported yet
  2115. 934 tryagain := PosUtils.Equal( NextFrame, ScrnTypes.ContinueInput );
  2116. ***** ^ not supported yet
  2117. ***** ^ not supported yet
  2118. ***** ^ not supported yet
  2119. ***** ^ not supported yet
  2120. ***** ^ not supported yet
  2121. 935 ELSE
  2122. 936 (* they hit a key not in the special key set, so
  2123. 937 return *)
  2124. 938 M2Strings.Assign( FrameRec^.normlnext, NextFrame );
  2125. ***** ^ not supported yet
  2126. ***** ^ not supported yet
  2127. ***** ^ not supported yet
  2128. ***** ^ not supported yet
  2129. ***** ^ not supported yet
  2130. 939 tryagain := FALSE;
  2131. 940 END;
  2132. 941 UNTIL NOT tryagain;
  2133. 942 END HitAnyKey;
  2134. ***** ^ not supported yet
  2135. 943
  2136. 944
  2137. 945 PROCEDURE ShowBadType( FrameRec: ScrnTypes.DisplayFrame );
  2138. ***** ^ not supported yet
  2139. 946 VAR
  2140. 947 ImageRec: ScrnTypes.ImageElement;
  2141. ***** ^ not supported yet
  2142. 948 dumstr: ARRAY [0..79] OF CHAR;
  2143. ***** ^ not supported yet
  2144. ***** ^ not supported yet
  2145. 949 BEGIN
  2146. 950 ScrnUtl1.GetFieldImageRec( FrameRec, FrameRec^.CurrentField,
  2147. ***** ^ not supported yet
  2148. ***** ^ not supported yet
  2149. ***** ^ not supported yet
  2150. ***** ^ not supported yet
  2151. ***** ^ not supported yet
  2152. 951 ImageRec );
  2153. ***** ^ not supported yet
  2154. 952 M2Strings.Concat("Bad type in ControlFrame. Text = ", ImageRec.text,
  2155. ***** ^ not supported yet
  2156. ***** ^ not supported yet
  2157. ***** ^ not supported yet
  2158. ***** ^ not supported yet
  2159. ***** ^ not supported yet
  2160. 953 dumstr );
  2161. ***** ^ not supported yet
  2162. 954 ErrorManager.WARN( dumstr );
  2163. ***** ^ not supported yet
  2164. ***** ^ not supported yet
  2165. ***** ^ not supported yet
  2166. 955 END ShowBadType;
  2167. ***** ^ not supported yet
  2168. 956
  2169. 957
  2170. 958 PROCEDURE NormalKeyResponse( VAR FrameRec:
  2171. 959 ScrnTypes.DisplayFrame; VAR TheFieldRec:
  2172. ***** ^ not supported yet
  2173. 960 ScrnTypes.InputFieldRecord; VAR LastKey: CARDINAL; VAR
  2174. ***** ^ not supported yet
  2175. 961 ReturnValue: ScrnTypes.AFrameName );
  2176. ***** ^ not supported yet
  2177. 962 VAR
  2178. 963 NewField: CARDINAL;
  2179. 964 BEGIN
  2180. 965 NewField := FrameRec^.CurrentField;
  2181. ***** ^ not supported yet
  2182. ***** ^ not supported yet
  2183. 966 (*Just in case we don't need to move it.*)
  2184. 967 IF LastKey = Key.Down THEN
  2185. ***** ^ not supported yet
  2186. ***** ^ not supported yet
  2187. 968 IF InVerticalGroup( FrameRec, FrameRec^.CurrentField ) THEN
  2188. ***** ^ not supported yet
  2189. ***** ^ not supported yet
  2190. ***** ^ not supported yet
  2191. ***** ^ not supported yet
  2192. 969 NewField := NextSelection( FrameRec, FrameRec^.CurrentField );
  2193. ***** ^ not supported yet
  2194. ***** ^ not supported yet
  2195. ***** ^ not supported yet
  2196. ***** ^ not supported yet
  2197. 970 ELSIF NOT ScrnUtl1.InputFieldsBelow( FrameRec,
  2198. ***** ^ not supported yet
  2199. ***** ^ not supported yet
  2200. ***** ^ not supported yet
  2201. 971 FrameRec^.CurrentField ) THEN
  2202. ***** ^ not supported yet
  2203. ***** ^ not supported yet
  2204. 972 IF FrameBelow[0] # 0C THEN
  2205. ***** ^ not supported yet
  2206. ***** ^ not supported yet
  2207. 973 M2Strings.Assign( FrameBelow, ReturnValue );
  2208. ***** ^ not supported yet
  2209. ***** ^ not supported yet
  2210. ***** ^ not supported yet
  2211. ***** ^ not supported yet
  2212. 974 ELSE
  2213. 975 NewField := FirstInputField(FrameRec);
  2214. ***** ^ not supported yet
  2215. ***** ^ not supported yet
  2216. 976 END;
  2217. 977 ELSE
  2218. 978 NewField := ClosestField( FrameRec,
  2219. ***** ^ not supported yet
  2220. ***** ^ not supported yet
  2221. 979 FrameRec^.CurrentField, 0, 0, VWindows.South );
  2222. ***** ^ not supported yet
  2223. ***** ^ not supported yet
  2224. ***** ^ not supported yet
  2225. ***** ^ not supported yet
  2226. 980 END;
  2227. 981 MovePointerBar( FrameRec, NewField );
  2228. ***** ^ not supported yet
  2229. ***** ^ not supported yet
  2230. ***** ^ not supported yet
  2231. 982 ELSIF LastKey = Key.Up THEN
  2232. ***** ^ not supported yet
  2233. ***** ^ not supported yet
  2234. 983 IF InVerticalGroup( FrameRec, FrameRec^.CurrentField ) THEN
  2235. ***** ^ not supported yet
  2236. ***** ^ not supported yet
  2237. ***** ^ not supported yet
  2238. ***** ^ not supported yet
  2239. 984 NewField := PrevSelection( FrameRec, FrameRec^.CurrentField );
  2240. ***** ^ not supported yet
  2241. ***** ^ not supported yet
  2242. ***** ^ not supported yet
  2243. ***** ^ not supported yet
  2244. 985 ELSIF NOT ScrnUtl1.InputFieldsAbove( FrameRec,
  2245. ***** ^ not supported yet
  2246. ***** ^ not supported yet
  2247. ***** ^ not supported yet
  2248. 986 FrameRec^.CurrentField ) THEN
  2249. ***** ^ not supported yet
  2250. ***** ^ not supported yet
  2251. 987 IF FrameAbove[0] # 0C THEN
  2252. ***** ^ not supported yet
  2253. ***** ^ not supported yet
  2254. 988 M2Strings.Assign( FrameAbove, ReturnValue );
  2255. ***** ^ not supported yet
  2256. ***** ^ not supported yet
  2257. ***** ^ not supported yet
  2258. ***** ^ not supported yet
  2259. 989 ELSE
  2260. 990 NewField := LastInputField( FrameRec );
  2261. ***** ^ not supported yet
  2262. ***** ^ not supported yet
  2263. 991 END;
  2264. 992 ELSE
  2265. 993 NewField := ClosestField( FrameRec,
  2266. ***** ^ not supported yet
  2267. ***** ^ not supported yet
  2268. 994 FrameRec^.CurrentField, 0, 0, VWindows.North );
  2269. ***** ^ not supported yet
  2270. ***** ^ not supported yet
  2271. ***** ^ not supported yet
  2272. ***** ^ not supported yet
  2273. 995 END;
  2274. 996 MovePointerBar( FrameRec, NewField );
  2275. ***** ^ not supported yet
  2276. ***** ^ not supported yet
  2277. ***** ^ not supported yet
  2278. 997 (* RST Change *)
  2279. 998 ELSIF LastKey = Key.CtrlPgUp THEN
  2280. ***** ^ not supported yet
  2281. ***** ^ not supported yet
  2282. 999 MovePointerBar( FrameRec, FirstInputField(FrameRec));
  2283. ***** ^ not supported yet
  2284. ***** ^ not supported yet
  2285. ***** ^ not supported yet
  2286. ***** ^ not supported yet
  2287. 1000 ELSIF LastKey = Key.CtrlPgDn THEN
  2288. ***** ^ not supported yet
  2289. ***** ^ not supported yet
  2290. 1001 MovePointerBar( FrameRec, LastInputField(FrameRec));
  2291. ***** ^ not supported yet
  2292. ***** ^ not supported yet
  2293. ***** ^ not supported yet
  2294. ***** ^ not supported yet
  2295. 1002 ELSIF LastKey = Key.PgUp THEN
  2296. ***** ^ not supported yet
  2297. ***** ^ not supported yet
  2298. 1003 PageUp(FrameRec);
  2299. ***** ^ not supported yet
  2300. ***** ^ not supported yet
  2301. 1004 ELSIF LastKey = Key.PgDn THEN
  2302. ***** ^ not supported yet
  2303. ***** ^ not supported yet
  2304. 1005 PageDown(FrameRec);
  2305. ***** ^ not supported yet
  2306. ***** ^ not supported yet
  2307. 1006 ELSIF LastKey = Key.Right THEN
  2308. ***** ^ not supported yet
  2309. ***** ^ not supported yet
  2310. 1007 IF InHorizGroup( FrameRec, FrameRec^.CurrentField ) THEN
  2311. ***** ^ not supported yet
  2312. ***** ^ not supported yet
  2313. ***** ^ not supported yet
  2314. ***** ^ not supported yet
  2315. 1008 NewField := NextSelection( FrameRec, FrameRec^.CurrentField );
  2316. ***** ^ not supported yet
  2317. ***** ^ not supported yet
  2318. ***** ^ not supported yet
  2319. ***** ^ not supported yet
  2320. 1009 ELSIF (NOT ScrnUtl1.InputFieldsToRight( FrameRec,
  2321. ***** ^ not supported yet
  2322. ***** ^ not supported yet
  2323. ***** ^ not supported yet
  2324. 1010 FrameRec^.CurrentField )) AND (FrameRight[0] # 0C) THEN
  2325. ***** ^ not supported yet
  2326. ***** ^ not supported yet
  2327. ***** ^ not supported yet
  2328. ***** ^ not supported yet
  2329. 1011 M2Strings.Assign( FrameRight, ReturnValue );
  2330. ***** ^ not supported yet
  2331. ***** ^ not supported yet
  2332. ***** ^ not supported yet
  2333. ***** ^ not supported yet
  2334. 1012 ELSE
  2335. 1013 NewField := NextInputField( FrameRec, 0 );
  2336. ***** ^ not supported yet
  2337. ***** ^ not supported yet
  2338. ***** ^ not supported yet
  2339. 1014 END;
  2340. 1015 MovePointerBar( FrameRec, NewField );
  2341. ***** ^ not supported yet
  2342. ***** ^ not supported yet
  2343. ***** ^ not supported yet
  2344. 1016 ELSIF LastKey = Key.Left THEN
  2345. ***** ^ not supported yet
  2346. ***** ^ not supported yet
  2347. 1017 IF InHorizGroup( FrameRec, FrameRec^.CurrentField ) THEN
  2348. ***** ^ not supported yet
  2349. ***** ^ not supported yet
  2350. ***** ^ not supported yet
  2351. ***** ^ not supported yet
  2352. 1018 NewField := PrevSelection( FrameRec, FrameRec^.CurrentField );
  2353. ***** ^ not supported yet
  2354. ***** ^ not supported yet
  2355. ***** ^ not supported yet
  2356. ***** ^ not supported yet
  2357. 1019 ELSIF (NOT ScrnUtl1.InputFieldsToLeft( FrameRec,
  2358. ***** ^ not supported yet
  2359. ***** ^ not supported yet
  2360. ***** ^ not supported yet
  2361. 1020 FrameRec^.CurrentField )) AND (FrameLeft[0] # 0C) THEN
  2362. ***** ^ not supported yet
  2363. ***** ^ not supported yet
  2364. ***** ^ not supported yet
  2365. ***** ^ not supported yet
  2366. 1021 M2Strings.Assign( FrameLeft, ReturnValue );
  2367. ***** ^ not supported yet
  2368. ***** ^ not supported yet
  2369. ***** ^ not supported yet
  2370. ***** ^ not supported yet
  2371. 1022 ELSE
  2372. 1023 NewField := PrevInputField( FrameRec, 0 );
  2373. ***** ^ not supported yet
  2374. ***** ^ not supported yet
  2375. ***** ^ not supported yet
  2376. 1024 END;
  2377. 1025 MovePointerBar( FrameRec, NewField );
  2378. ***** ^ not supported yet
  2379. ***** ^ not supported yet
  2380. ***** ^ not supported yet
  2381. 1026 ELSIF LastKey = Key.Tab THEN
  2382. ***** ^ not supported yet
  2383. ***** ^ not supported yet
  2384. 1027 MovePointerBar( FrameRec, NextInputField( FrameRec, 0 ));
  2385. ***** ^ not supported yet
  2386. ***** ^ not supported yet
  2387. ***** ^ not supported yet
  2388. ***** ^ not supported yet
  2389. ***** ^ not supported yet
  2390. 1028 ELSIF LastKey = Key.BackTab THEN
  2391. ***** ^ not supported yet
  2392. ***** ^ not supported yet
  2393. 1029 MovePointerBar( FrameRec, PrevInputField( FrameRec, 0 ));
  2394. ***** ^ not supported yet
  2395. ***** ^ not supported yet
  2396. ***** ^ not supported yet
  2397. ***** ^ not supported yet
  2398. ***** ^ not supported yet
  2399. 1030 ELSIF LastKey = Key.Return THEN
  2400. ***** ^ not supported yet
  2401. ***** ^ not supported yet
  2402. 1031 IF TheFieldRec.typ = ScrnTypes.GotoCode THEN
  2403. ***** ^ not supported yet
  2404. ***** ^ not supported yet
  2405. ***** ^ not supported yet
  2406. ***** ^ not supported yet
  2407. 1032 (* force jump *)
  2408. 1033 M2Strings.Assign( TheFieldRec.ReturnVal, ReturnValue );
  2409. ***** ^ not supported yet
  2410. ***** ^ not supported yet
  2411. ***** ^ not supported yet
  2412. ***** ^ not supported yet
  2413. ***** ^ not supported yet
  2414. 1034 ELSIF (TheFieldRec.typ = ScrnTypes.GroupMember) THEN
  2415. ***** ^ not supported yet
  2416. ***** ^ not supported yet
  2417. ***** ^ not supported yet
  2418. ***** ^ not supported yet
  2419. 1035 IF (MaxChoices = 1) THEN
  2420. 1036 (* There are no other fields in the frame except
  2421. 1037 this group. We know we have to leave, but first
  2422. 1038 we have to choose a return value (for
  2423. 1039 compatibility with 1.4.) *)
  2424. 1040 IF M2Strings.Length(TheFieldRec.fnam) > 0 THEN
  2425. ***** ^ not supported yet
  2426. ***** ^ not supported yet
  2427. ***** ^ not supported yet
  2428. ***** ^ not supported yet
  2429. 1041 (*This lets you store the return value in the
  2430. 1042 field name of the choice. *)
  2431. 1043 M2Strings.Assign( TheFieldRec.fnam, ReturnValue );
  2432. ***** ^ not supported yet
  2433. ***** ^ not supported yet
  2434. ***** ^ not supported yet
  2435. ***** ^ not supported yet
  2436. ***** ^ not supported yet
  2437. 1044 ELSE
  2438. 1045 M2Strings.Assign( FrameRec^.normlnext, ReturnValue );
  2439. ***** ^ not supported yet
  2440. ***** ^ not supported yet
  2441. ***** ^ not supported yet
  2442. ***** ^ not supported yet
  2443. ***** ^ not supported yet
  2444. 1046 END;
  2445. 1047 ELSE
  2446. 1048 (* There are fields outside this group. Move to the
  2447. 1049 first one following it.*)
  2448. 1050 NewField := NextInputField( FrameRec, (TheFieldRec.GroupSize -
  2449. ***** ^ not supported yet
  2450. ***** ^ not supported yet
  2451. ***** ^ not supported yet
  2452. ***** ^ not supported yet
  2453. 1051 TheFieldRec.GroupID) );
  2454. ***** ^ not supported yet
  2455. ***** ^ not supported yet
  2456. ***** ^ not supported yet
  2457. 1052 MovePointerBar( FrameRec, NewField );
  2458. ***** ^ not supported yet
  2459. ***** ^ not supported yet
  2460. ***** ^ not supported yet
  2461. 1053 END;
  2462. 1054 ELSIF MaxChoices#1 THEN
  2463. 1055 MovePointerBar( FrameRec, NextInputField( FrameRec, 0 ) );
  2464. ***** ^ not supported yet
  2465. ***** ^ not supported yet
  2466. ***** ^ not supported yet
  2467. ***** ^ not supported yet
  2468. ***** ^ not supported yet
  2469. 1056 ELSE
  2470. 1057 M2Strings.Assign( FrameRec^.normlnext, ReturnValue);
  2471. ***** ^ not supported yet
  2472. ***** ^ not supported yet
  2473. ***** ^ not supported yet
  2474. ***** ^ not supported yet
  2475. ***** ^ not supported yet
  2476. 1058 (* only one field, and it's an input field; leave.*)
  2477. 1059 END;
  2478. 1060 ELSIF SelectionKeyMatch( FrameRec, LastKey, NewField ) THEN
  2479. ***** ^ not supported yet
  2480. ***** ^ not supported yet
  2481. ***** ^ not supported yet
  2482. 1061 MovePointerBar( FrameRec, NewField );
  2483. ***** ^ not supported yet
  2484. ***** ^ not supported yet
  2485. ***** ^ not supported yet
  2486. 1062 ScrnUtl1.GetFieldRec( FrameRec, NewField, TheFieldRec );
  2487. ***** ^ not supported yet
  2488. ***** ^ not supported yet
  2489. ***** ^ not supported yet
  2490. ***** ^ not supported yet
  2491. 1063 IF (ScrnUtl1.AllFieldsThisType(FrameRec, ScrnTypes.GotoCode)) THEN
  2492. ***** ^ not supported yet
  2493. ***** ^ not supported yet
  2494. ***** ^ not supported yet
  2495. ***** ^ not supported yet
  2496. ***** ^ not supported yet
  2497. 1064 (* If the user presses the selection character of a menu item
  2498. 1065 and the frame contains a mixture of field types, we move the
  2499. 1066 pointer bar to the goto field, but we don't submit the frame, as
  2500. 1067 we do if the frame contains only goto fields. If you want to
  2501. 1068 submit the frame in that case, change this IF to
  2502. 1069 something like 'IF TheFieldRec.typ = ScrnTypes.GotoCode' *)
  2503. 1070 M2Strings.Assign( TheFieldRec.ReturnVal, ReturnValue );
  2504. ***** ^ not supported yet
  2505. ***** ^ not supported yet
  2506. ***** ^ not supported yet
  2507. ***** ^ not supported yet
  2508. ***** ^ not supported yet
  2509. 1071 END;
  2510. 1072 IF (ScrnUtl1.AllFieldsThisType(FrameRec, ScrnTypes.GroupMember)) THEN
  2511. ***** ^ not supported yet
  2512. ***** ^ not supported yet
  2513. ***** ^ not supported yet
  2514. ***** ^ not supported yet
  2515. ***** ^ not supported yet
  2516. 1073 M2Strings.Assign( TheFieldRec.fnam, ReturnValue );
  2517. ***** ^ not supported yet
  2518. ***** ^ not supported yet
  2519. ***** ^ not supported yet
  2520. ***** ^ not supported yet
  2521. ***** ^ not supported yet
  2522. 1074 END;
  2523. 1075 END;
  2524. 1076 END NormalKeyResponse;
  2525. ***** ^ not supported yet
  2526. 1077
  2527. 1078
  2528. 1079 PROCEDURE NoFieldsKeyResponse( VAR FrameRec: ScrnTypes.DisplayFrame;
  2529. ***** ^ not supported yet
  2530. 1080 VAR LastKey: CARDINAL; VAR ReturnValue: ScrnTypes.AFrameName );
  2531. ***** ^ not supported yet
  2532. 1081 VAR
  2533. 1082 VisibleArea: Rectangles.ARectangle;
  2534. ***** ^ not supported yet
  2535. 1083 nOutside, oldcs, oldrs, WindowHeight: CARDINAL;
  2536. 1084 BEGIN
  2537. 1085 ScrnUtl1.GetVisibleArea( FrameRec, VisibleArea );
  2538. ***** ^ not supported yet
  2539. ***** ^ not supported yet
  2540. ***** ^ not supported yet
  2541. ***** ^ not supported yet
  2542. 1086 WindowHeight := VisibleArea.row2 - VisibleArea.row1 + 1;
  2543. ***** ^ not supported yet
  2544. ***** ^ not supported yet
  2545. ***** ^ not supported yet
  2546. ***** ^ not supported yet
  2547. 1087 oldcs := FrameRec^.ColsScrolled;
  2548. ***** ^ not supported yet
  2549. ***** ^ not supported yet
  2550. 1088 oldrs := FrameRec^.RowsScrolled;
  2551. ***** ^ not supported yet
  2552. ***** ^ not supported yet
  2553. 1089 StrEdit.AssignStr( ScrnTypes.ContinueInput, ReturnValue );
  2554. ***** ^ not supported yet
  2555. ***** ^ not supported yet
  2556. ***** ^ not supported yet
  2557. ***** ^ not supported yet
  2558. ***** ^ not supported yet
  2559. 1090 IF LastKey = Key.Down THEN
  2560. ***** ^ not supported yet
  2561. ***** ^ not supported yet
  2562. 1091 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2563. ***** ^ not supported yet
  2564. ***** ^ not supported yet
  2565. ***** ^ not supported yet
  2566. ***** ^ not supported yet
  2567. 1092 VWindows.South ) > 0 THEN
  2568. ***** ^ not supported yet
  2569. ***** ^ not supported yet
  2570. 1093 INC( FrameRec^.RowsScrolled );
  2571. ***** ^ undeclared identifier
  2572. ***** ^ not supported yet
  2573. ***** ^ not supported yet
  2574. 1094 END;
  2575. 1095 ELSIF LastKey = Key.Up THEN
  2576. ***** ^ not supported yet
  2577. ***** ^ not supported yet
  2578. 1096 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2579. ***** ^ not supported yet
  2580. ***** ^ not supported yet
  2581. ***** ^ not supported yet
  2582. ***** ^ not supported yet
  2583. 1097 VWindows.North ) > 0 THEN
  2584. ***** ^ not supported yet
  2585. ***** ^ not supported yet
  2586. 1098 DEC( FrameRec^.RowsScrolled );
  2587. ***** ^ undeclared identifier
  2588. ***** ^ not supported yet
  2589. ***** ^ not supported yet
  2590. 1099 END;
  2591. 1100 ELSIF LastKey = Key.PgUp THEN
  2592. ***** ^ not supported yet
  2593. ***** ^ not supported yet
  2594. 1101 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2595. ***** ^ not supported yet
  2596. ***** ^ not supported yet
  2597. ***** ^ not supported yet
  2598. ***** ^ not supported yet
  2599. 1102 VWindows.North ) > WindowHeight THEN
  2600. ***** ^ not supported yet
  2601. ***** ^ not supported yet
  2602. 1103 DEC( FrameRec^.RowsScrolled, WindowHeight );
  2603. ***** ^ undeclared identifier
  2604. ***** ^ not supported yet
  2605. ***** ^ not supported yet
  2606. ***** ^ not supported yet
  2607. 1104 ELSE
  2608. 1105 FrameRec^.RowsScrolled := 0;
  2609. ***** ^ not supported yet
  2610. ***** ^ not supported yet
  2611. 1106 END;
  2612. 1107 ELSIF LastKey = Key.PgDn THEN
  2613. ***** ^ not supported yet
  2614. ***** ^ not supported yet
  2615. 1108 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2616. ***** ^ not supported yet
  2617. ***** ^ not supported yet
  2618. ***** ^ not supported yet
  2619. ***** ^ not supported yet
  2620. 1109 VWindows.South ) > WindowHeight THEN
  2621. ***** ^ not supported yet
  2622. ***** ^ not supported yet
  2623. 1110 INC( FrameRec^.RowsScrolled, WindowHeight );
  2624. ***** ^ undeclared identifier
  2625. ***** ^ not supported yet
  2626. ***** ^ not supported yet
  2627. ***** ^ not supported yet
  2628. 1111 ELSIF FrameRec^.VirtualHeight > WindowHeight THEN
  2629. ***** ^ not supported yet
  2630. ***** ^ not supported yet
  2631. 1112 FrameRec^.RowsScrolled := FrameRec^.VirtualHeight - WindowHeight;
  2632. ***** ^ not supported yet
  2633. ***** ^ not supported yet
  2634. ***** ^ not supported yet
  2635. ***** ^ not supported yet
  2636. 1113 ELSE
  2637. 1114 FrameRec^.RowsScrolled := 0;
  2638. ***** ^ not supported yet
  2639. ***** ^ not supported yet
  2640. 1115 END;
  2641. 1116 ELSIF LastKey = Key.Right THEN
  2642. ***** ^ not supported yet
  2643. ***** ^ not supported yet
  2644. 1117 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2645. ***** ^ not supported yet
  2646. ***** ^ not supported yet
  2647. ***** ^ not supported yet
  2648. ***** ^ not supported yet
  2649. 1118 VWindows.East ) > 0 THEN
  2650. ***** ^ not supported yet
  2651. ***** ^ not supported yet
  2652. 1119 INC( FrameRec^.ColsScrolled );
  2653. ***** ^ undeclared identifier
  2654. ***** ^ not supported yet
  2655. ***** ^ not supported yet
  2656. 1120 END;
  2657. 1121 ELSIF LastKey = Key.Left THEN
  2658. ***** ^ not supported yet
  2659. ***** ^ not supported yet
  2660. 1122 IF ScrnUtl1.PartOutside( FrameRec, VisibleArea,
  2661. ***** ^ not supported yet
  2662. ***** ^ not supported yet
  2663. ***** ^ not supported yet
  2664. ***** ^ not supported yet
  2665. 1123 VWindows.West ) > 0 THEN
  2666. ***** ^ not supported yet
  2667. ***** ^ not supported yet
  2668. 1124 DEC( FrameRec^.ColsScrolled );
  2669. ***** ^ undeclared identifier
  2670. ***** ^ not supported yet
  2671. ***** ^ not supported yet
  2672. 1125 END;
  2673. 1126 ELSIF LastKey = Key.Tab THEN
  2674. ***** ^ not supported yet
  2675. ***** ^ not supported yet
  2676. 1127 nOutside := ScrnUtl1.PartOutside( FrameRec, VisibleArea, VWindows.East);
  2677. ***** ^ not supported yet
  2678. ***** ^ not supported yet
  2679. ***** ^ not supported yet
  2680. ***** ^ not supported yet
  2681. ***** ^ not supported yet
  2682. ***** ^ not supported yet
  2683. 1128 IF nOutside > 8 THEN
  2684. 1129 INC( FrameRec^.ColsScrolled, 8 );
  2685. ***** ^ undeclared identifier
  2686. ***** ^ not supported yet
  2687. ***** ^ not supported yet
  2688. ***** ^ not supported yet
  2689. 1130 ELSIF nOutside > 0 THEN
  2690. 1131 INC( FrameRec^.ColsScrolled, nOutside);
  2691. ***** ^ undeclared identifier
  2692. ***** ^ not supported yet
  2693. ***** ^ not supported yet
  2694. ***** ^ not supported yet
  2695. 1132 END;
  2696. 1133 ELSIF LastKey = Key.BackTab THEN
  2697. ***** ^ not supported yet
  2698. ***** ^ not supported yet
  2699. 1134 nOutside := ScrnUtl1.PartOutside( FrameRec, VisibleArea,VWindows.West);
  2700. ***** ^ not supported yet
  2701. ***** ^ not supported yet
  2702. ***** ^ not supported yet
  2703. ***** ^ not supported yet
  2704. ***** ^ not supported yet
  2705. ***** ^ not supported yet
  2706. 1135 IF nOutside > 8 THEN
  2707. 1136 DEC( FrameRec^.ColsScrolled, 8 );
  2708. ***** ^ undeclared identifier
  2709. ***** ^ not supported yet
  2710. ***** ^ not supported yet
  2711. ***** ^ not supported yet
  2712. 1137 ELSIF nOutside > 0 THEN
  2713. 1138 DEC( FrameRec^.ColsScrolled, nOutside);
  2714. ***** ^ undeclared identifier
  2715. ***** ^ not supported yet
  2716. ***** ^ not supported yet
  2717. ***** ^ not supported yet
  2718. 1139 END;
  2719. 1140 ELSIF LastKey = Key.Return THEN
  2720. ***** ^ not supported yet
  2721. ***** ^ not supported yet
  2722. 1141 M2Strings.Assign( FrameRec^.normlnext, ReturnValue);
  2723. ***** ^ not supported yet
  2724. ***** ^ not supported yet
  2725. ***** ^ not supported yet
  2726. ***** ^ not supported yet
  2727. ***** ^ not supported yet
  2728. 1142 RETURN;
  2729. 1143 END;
  2730. 1144 SlideFrame( FrameRec, oldcs, FrameRec^.ColsScrolled,
  2731. ***** ^ not supported yet
  2732. ***** ^ not supported yet
  2733. ***** ^ not supported yet
  2734. ***** ^ not supported yet
  2735. 1145 oldrs, FrameRec^.RowsScrolled );
  2736. ***** ^ not supported yet
  2737. ***** ^ not supported yet
  2738. 1146 END NoFieldsKeyResponse;
  2739. ***** ^ not supported yet
  2740. 1147
  2741. 1148
  2742. 1149 PROCEDURE RepaintVisibleArea();
  2743. 1150 VAR
  2744. 1151 FirstVisibleRow, FirstVisibleCol, LastVisibleRow,
  2745. 1152 LastVisibleCol : CARDINAL;
  2746. 1153 Vis : Rectangles.ARectangle;
  2747. ***** ^ not supported yet
  2748. 1154 BEGIN
  2749. 1155 ScrnUtl1.GetVisibleArea(FrameRec, Vis);
  2750. ***** ^ not supported yet
  2751. ***** ^ not supported yet
  2752. ***** ^ not supported yet
  2753. ***** ^ not supported yet
  2754. 1156 WITH Vis DO
  2755. ***** ^ not supported yet
  2756. 1157 FirstVisibleRow := CARDINAL(row1);
  2757. ***** ^ undeclared identifier
  2758. 1158 LastVisibleRow := CARDINAL(row2);
  2759. ***** ^ undeclared identifier
  2760. 1159 FirstVisibleCol := CARDINAL(col1);
  2761. ***** ^ undeclared identifier
  2762. 1160 LastVisibleCol := CARDINAL(col2);
  2763. ***** ^ undeclared identifier
  2764. 1161 (* 11 Oct 88: removed +RowsScrolled from each of
  2765. 1162 these lines at suggestion of Karta Khalsa and
  2766. 1163 Ulrik Schmidt. *)
  2767. 1164 END;
  2768. ***** ^ not supported yet
  2769. 1165 FramePainter.RedrawArea( FrameRec, FirstVisibleCol, FirstVisibleRow,
  2770. ***** ^ not supported yet
  2771. ***** ^ not supported yet
  2772. ***** ^ not supported yet
  2773. ***** ^ undeclared identifier
  2774. ***** ^ undeclared identifier
  2775. 1166 LastVisibleCol, LastVisibleRow);
  2776. ***** ^ undeclared identifier
  2777. ***** ^ undeclared identifier
  2778. 1167 END RepaintVisibleArea;
  2779. ***** ^ not supported yet
  2780. 1168
  2781. 1169 BEGIN
  2782. 1170 (*ControlFrame*)
  2783. 1171
  2784. 1172 VWindows.SetCursorHeight( FrameRec^.WindowHandle, 0 );
  2785. ***** ^ not supported yet
  2786. ***** ^ not supported yet
  2787. ***** ^ undeclared identifier
  2788. ***** ^ not supported yet
  2789. ***** ^ not supported yet
  2790. 1173 M2Strings.Assign(message, LocalMessage);
  2791. ***** ^ not supported yet
  2792. ***** ^ not supported yet
  2793. ***** ^ undeclared identifier
  2794. ***** ^ undeclared identifier
  2795. 1174 IF RedrawFirst THEN
  2796. ***** ^ undeclared identifier
  2797. 1175 RepaintVisibleArea();
  2798. ***** ^ undeclared identifier
  2799. ***** ^ not supported yet
  2800. 1176 END;
  2801. 1177
  2802. 1178 MaxChoices := ScrnUtl1.FieldGroupTotal( FrameRec );
  2803. ***** ^ undeclared identifier
  2804. ***** ^ not supported yet
  2805. ***** ^ not supported yet
  2806. ***** ^ undeclared identifier
  2807. 1179 (* Number of choices or fields in the frame, counting each
  2808. 1180 group of choice fields as a single choice. *)
  2809. 1181 M2Strings.Assign( FrameRec^.normlnext, NextFrame );
  2810. ***** ^ not supported yet
  2811. ***** ^ not supported yet
  2812. ***** ^ undeclared identifier
  2813. ***** ^ not supported yet
  2814. ***** ^ undeclared identifier
  2815. 1182 MakeLegalKeys( FrameRec, TmpScreenKeys );
  2816. ***** ^ not supported yet
  2817. ***** ^ undeclared identifier
  2818. ***** ^ undeclared identifier
  2819. 1183 StrEdit.LowerStr( FrameRec^.action );
  2820. ***** ^ not supported yet
  2821. ***** ^ not supported yet
  2822. ***** ^ undeclared identifier
  2823. ***** ^ not supported yet
  2824. 1184 (* Added 13 Nov 88. We lowercase the action char while
  2825. 1185 the frame is active and restore it to uppercase when it is
  2826. 1186 not so that we have a temporary way of determining
  2827. 1187 whether the frame is active. Don't rely on this. In
  2828. 1188 a future release we will add a boolean to the DisplayFrame
  2829. 1189 record and quit using this kludge. *)
  2830. 1190 IF CAP(FrameRec^.action) = ScrnTypes.DispCode THEN
  2831. ***** ^ undeclared identifier
  2832. ***** ^ undeclared identifier
  2833. ***** ^ not supported yet
  2834. ***** ^ not supported yet
  2835. ***** ^ not supported yet
  2836. 1191 (* Do not process user input. Note that we don't call
  2837. 1192 EraseFrame if the frame is both DisplayOnly and
  2838. 1193 ClearAfter, since this combination really doesn't make
  2839. 1194 sense -- latter is probably programmer's mistake. *)
  2840. 1195 RETURN;
  2841. 1196 END;
  2842. 1197 IF FrameRec^.EntryBox[0] # 0C THEN
  2843. ***** ^ undeclared identifier
  2844. ***** ^ not supported yet
  2845. ***** ^ not supported yet
  2846. 1198 (*Now we change the appearance of the border to let the
  2847. 1199 user know the frame is active.*)
  2848. 1200 ScrnUtl1.BoxFrame( FrameRec, TRUE );
  2849. ***** ^ not supported yet
  2850. ***** ^ not supported yet
  2851. ***** ^ undeclared identifier
  2852. ***** ^ not supported yet
  2853. 1201 END;
  2854. 1202 IF (CAP(FrameRec^.action) = 'W') THEN
  2855. ***** ^ undeclared identifier
  2856. ***** ^ undeclared identifier
  2857. ***** ^ not supported yet
  2858. 1203 (* wait for any user input, then exit *)
  2859. 1204 HitAnyKey( NextFrame );
  2860. ***** ^ undeclared identifier
  2861. ***** ^ undeclared identifier
  2862. 1205 IF FrameRec^.ExitBox[0] # 0C THEN
  2863. ***** ^ undeclared identifier
  2864. ***** ^ not supported yet
  2865. ***** ^ not supported yet
  2866. 1206 (*Now we change the appearance of the border to let the
  2867. 1207 user know the frame is no longer active.*)
  2868. 1208 ScrnUtl1.BoxFrame( FrameRec, FALSE );
  2869. ***** ^ not supported yet
  2870. ***** ^ not supported yet
  2871. ***** ^ undeclared identifier
  2872. ***** ^ not supported yet
  2873. 1209 END;
  2874. 1210 IF FrameRec^.ClearAfter THEN
  2875. ***** ^ undeclared identifier
  2876. ***** ^ not supported yet
  2877. 1211 FrameManager.EraseFrame( FrameRec );
  2878. ***** ^ not supported yet
  2879. ***** ^ not supported yet
  2880. ***** ^ undeclared identifier
  2881. 1212 END;
  2882. 1213 RETURN;
  2883. 1214 END;
  2884. 1215 HiLiteSelChars( FrameRec );
  2885. ***** ^ not supported yet
  2886. ***** ^ undeclared identifier
  2887. 1216 StrEdit.SetLength( ReturnValue, 0 );
  2888. ***** ^ not supported yet
  2889. ***** ^ not supported yet
  2890. ***** ^ undeclared identifier
  2891. ***** ^ not supported yet
  2892. 1217 ScrnUtl1.GetFrameLinks( FrameRec, FrameAbove, FrameBelow, FrameLeft,
  2893. ***** ^ not supported yet
  2894. ***** ^ not supported yet
  2895. ***** ^ undeclared identifier
  2896. ***** ^ undeclared identifier
  2897. ***** ^ undeclared identifier
  2898. ***** ^ undeclared identifier
  2899. 1218 FrameRight );
  2900. ***** ^ undeclared identifier
  2901. 1219 FrameRec^.CurrentField := 0;
  2902. ***** ^ undeclared identifier
  2903. ***** ^ not supported yet
  2904. 1220 (*Prevent MovePointerBar from exiting if CurrentField
  2905. 1221 happens to equal LandingField.*)
  2906. 1222 IF (LandingField=0) AND (MaxChoices > 0) THEN
  2907. ***** ^ undeclared identifier
  2908. ***** ^ undeclared identifier
  2909. 1223 MovePointerBar( FrameRec, FirstInputField(FrameRec));
  2910. ***** ^ not supported yet
  2911. ***** ^ undeclared identifier
  2912. ***** ^ not supported yet
  2913. ***** ^ undeclared identifier
  2914. 1224 (*highlights first choice*)
  2915. 1225 END;
  2916. 1226
  2917. 1227 REPEAT
  2918. 1228 IF (LandingField # 0) AND (MaxChoices > 0) THEN
  2919. ***** ^ undeclared identifier
  2920. ***** ^ undeclared identifier
  2921. 1229 (* LandingField is not 0, so highlight the specified
  2922. 1230 field. We do this at the top of each loop so that
  2923. 1231 ControlFrame can signal errors from within the loop. *)
  2924. 1232 MovePointerBar( FrameRec, LandingField );
  2925. ***** ^ not supported yet
  2926. ***** ^ undeclared identifier
  2927. ***** ^ undeclared identifier
  2928. 1233 LandingField := 0;
  2929. ***** ^ undeclared identifier
  2930. 1234 END;
  2931. 1235 IF M2Strings.Length( LocalMessage ) > 0 THEN
  2932. ***** ^ not supported yet
  2933. ***** ^ not supported yet
  2934. ***** ^ undeclared identifier
  2935. 1236 MsgBox2.StrMsgBox( FrameRec, VWindows.SE, LocalMessage );
  2936. ***** ^ not supported yet
  2937. ***** ^ not supported yet
  2938. ***** ^ undeclared identifier
  2939. ***** ^ not supported yet
  2940. ***** ^ not supported yet
  2941. ***** ^ undeclared identifier
  2942. 1237 StrEdit.SetLength( LocalMessage, 0 );
  2943. ***** ^ not supported yet
  2944. ***** ^ not supported yet
  2945. ***** ^ undeclared identifier
  2946. ***** ^ not supported yet
  2947. 1238 END;
  2948. 1239
  2949. 1240 IF (MaxChoices = 0) OR
  2950. ***** ^ undeclared identifier
  2951. 1241 (ScrnUtl1.AllFieldsThisType(FrameRec, ScrnTypes.DispCode)) THEN
  2952. ***** ^ not supported yet
  2953. ***** ^ not supported yet
  2954. ***** ^ undeclared identifier
  2955. ***** ^ not supported yet
  2956. ***** ^ not supported yet
  2957. 1242 LastKey := KbdInput.KeyHit( TmpScreenKeys );
  2958. ***** ^ undeclared identifier
  2959. ***** ^ not supported yet
  2960. ***** ^ not supported yet
  2961. ***** ^ undeclared identifier
  2962. 1243 UserOps.TheKeyHandler( FrameRec, LastKey, ReturnValue );
  2963. ***** ^ not supported yet
  2964. ***** ^ not supported yet
  2965. ***** ^ undeclared identifier
  2966. ***** ^ undeclared identifier
  2967. ***** ^ undeclared identifier
  2968. 1244 IF PosUtils.Equal( ReturnValue, ScrnTypes.ContinueInput ) THEN
  2969. ***** ^ not supported yet
  2970. ***** ^ not supported yet
  2971. ***** ^ undeclared identifier
  2972. ***** ^ not supported yet
  2973. ***** ^ not supported yet
  2974. 1245 NoFieldsKeyResponse( FrameRec, LastKey, ReturnValue );
  2975. ***** ^ undeclared identifier
  2976. ***** ^ undeclared identifier
  2977. ***** ^ undeclared identifier
  2978. ***** ^ undeclared identifier
  2979. 1246 END;
  2980. 1247 ELSE
  2981. 1248 ScrnUtl1.GetFieldRec( FrameRec, FrameRec^.CurrentField, FieldRec );
  2982. ***** ^ not supported yet
  2983. ***** ^ not supported yet
  2984. ***** ^ undeclared identifier
  2985. ***** ^ undeclared identifier
  2986. ***** ^ not supported yet
  2987. ***** ^ undeclared identifier
  2988. 1249 SavedFieldNum := FrameRec^.CurrentField;
  2989. ***** ^ undeclared identifier
  2990. ***** ^ undeclared identifier
  2991. ***** ^ not supported yet
  2992. 1250 CASE FieldRec.typ OF
  2993. ***** ^ undeclared identifier
  2994. ***** ^ not supported yet
  2995. 1251 ScrnTypes.GotoCode, ScrnTypes.GroupMember :
  2996. ***** ^ not supported yet
  2997. ***** ^ not supported yet
  2998. ***** ^ not supported yet
  2999. ***** ^ not supported yet
  3000. 1252 LastKey := KbdInput.KeyHit( TmpScreenKeys );
  3001. ***** ^ undeclared identifier
  3002. ***** ^ not supported yet
  3003. ***** ^ not supported yet
  3004. ***** ^ undeclared identifier
  3005. 1253 UserOps.TheKeyHandler( FrameRec, LastKey, ReturnValue );
  3006. ***** ^ not supported yet
  3007. ***** ^ not supported yet
  3008. ***** ^ undeclared identifier
  3009. ***** ^ undeclared identifier
  3010. ***** ^ undeclared identifier
  3011. 1254 ELSE
  3012. 1255 AbsFldRow := ScrnUtl1.AbsFieldRow(FrameRec,
  3013. ***** ^ undeclared identifier
  3014. ***** ^ not supported yet
  3015. ***** ^ not supported yet
  3016. ***** ^ undeclared identifier
  3017. 1256 FrameRec^.CurrentField);
  3018. ***** ^ undeclared identifier
  3019. ***** ^ not supported yet
  3020. 1257 AbsFldCol := ScrnUtl1.AbsFieldCol(FrameRec,
  3021. ***** ^ undeclared identifier
  3022. ***** ^ not supported yet
  3023. ***** ^ not supported yet
  3024. ***** ^ undeclared identifier
  3025. 1258 FrameRec^.CurrentField);
  3026. ***** ^ undeclared identifier
  3027. ***** ^ not supported yet
  3028. 1259 UserOps.TheFieldHandler( FrameRec,
  3029. ***** ^ not supported yet
  3030. ***** ^ not supported yet
  3031. ***** ^ undeclared identifier
  3032. 1260 AbsFldCol, AbsFldRow, LastKey, ReturnValue );
  3033. ***** ^ undeclared identifier
  3034. ***** ^ undeclared identifier
  3035. ***** ^ undeclared identifier
  3036. ***** ^ undeclared identifier
  3037. 1261 ScrnUtl1.GetFieldRec( FrameRec, FrameRec^.CurrentField,
  3038. ***** ^ not supported yet
  3039. ***** ^ not supported yet
  3040. ***** ^ undeclared identifier
  3041. ***** ^ undeclared identifier
  3042. ***** ^ not supported yet
  3043. 1262 FieldRec );
  3044. ***** ^ undeclared identifier
  3045. 1263 IF FieldRec.ChangeMade THEN
  3046. ***** ^ undeclared identifier
  3047. ***** ^ not supported yet
  3048. 1264 FrameRec^.FrameChanged := TRUE;
  3049. ***** ^ undeclared identifier
  3050. ***** ^ not supported yet
  3051. 1265 END;
  3052. 1266 END;
  3053. 1267 IF PosUtils.Equal( 'MovePointerBar', ReturnValue ) THEN
  3054. ***** ^ not supported yet
  3055. ***** ^ not supported yet
  3056. ***** ^ not supported yet
  3057. ***** ^ undeclared identifier
  3058. 1268 StrEdit.AssignStr( ScrnTypes.ContinueInput, ReturnValue );
  3059. ***** ^ not supported yet
  3060. ***** ^ not supported yet
  3061. ***** ^ not supported yet
  3062. ***** ^ not supported yet
  3063. ***** ^ undeclared identifier
  3064. 1269 MovePointerBar( FrameRec, FrameRec^.CurrentField );
  3065. ***** ^ not supported yet
  3066. ***** ^ undeclared identifier
  3067. ***** ^ undeclared identifier
  3068. ***** ^ not supported yet
  3069. 1270 ELSE
  3070. 1271 ScrnUtl1.SetCurrentField( FrameRec, SavedFieldNum );
  3071. ***** ^ not supported yet
  3072. ***** ^ not supported yet
  3073. ***** ^ undeclared identifier
  3074. ***** ^ undeclared identifier
  3075. 1272 IF PosUtils.Equal( ReturnValue, ScrnTypes.ContinueInput ) THEN
  3076. ***** ^ not supported yet
  3077. ***** ^ not supported yet
  3078. ***** ^ undeclared identifier
  3079. ***** ^ not supported yet
  3080. ***** ^ not supported yet
  3081. 1273 (* Now, process defined action keys *)
  3082. 1274 NormalKeyResponse( FrameRec, FieldRec, LastKey, ReturnValue );
  3083. ***** ^ undeclared identifier
  3084. ***** ^ undeclared identifier
  3085. ***** ^ undeclared identifier
  3086. ***** ^ undeclared identifier
  3087. ***** ^ undeclared identifier
  3088. 1275 END;
  3089. 1276 END;
  3090. 1277
  3091. 1278 IF (NOT PosUtils.Equal(ReturnValue, ScrnTypes.ContinueInput))
  3092. ***** ^ not supported yet
  3093. ***** ^ not supported yet
  3094. ***** ^ undeclared identifier
  3095. ***** ^ not supported yet
  3096. ***** ^ not supported yet
  3097. 1279 AND (LastKey # UserOps.BackupKey)
  3098. ***** ^ undeclared identifier
  3099. ***** ^ not supported yet
  3100. ***** ^ not supported yet
  3101. 1280 AND (LastKey # UserOps.ExitKey) THEN
  3102. ***** ^ undeclared identifier
  3103. ***** ^ not supported yet
  3104. ***** ^ not supported yet
  3105. 1281 (* Looks like they want to submit the screen. Let's
  3106. 1282 check to see if all required fields are full *)
  3107. 1283 IF PosUtils.Equal( ReturnValue, ScrnTypes.SubmitInput ) THEN
  3108. ***** ^ not supported yet
  3109. ***** ^ not supported yet
  3110. ***** ^ undeclared identifier
  3111. ***** ^ not supported yet
  3112. ***** ^ not supported yet
  3113. 1284 ReturnValue := FrameRec^.normlnext;
  3114. ***** ^ undeclared identifier
  3115. ***** ^ undeclared identifier
  3116. ***** ^ not supported yet
  3117. 1285 END;
  3118. 1286 IF PosUtils.Equal( ReturnValue, ScrnTypes.CancelInput ) THEN
  3119. ***** ^ not supported yet
  3120. ***** ^ not supported yet
  3121. ***** ^ undeclared identifier
  3122. ***** ^ not supported yet
  3123. ***** ^ not supported yet
  3124. 1287 ReturnValue := FrameRec^.parent;
  3125. ***** ^ undeclared identifier
  3126. ***** ^ undeclared identifier
  3127. ***** ^ not supported yet
  3128. 1288 ELSIF (NOT RequiredFilled( FrameRec, LandingField )) THEN
  3129. ***** ^ not supported yet
  3130. ***** ^ undeclared identifier
  3131. ***** ^ undeclared identifier
  3132. 1289 StrEdit.AssignStr( RequiredMessage, LocalMessage );
  3133. ***** ^ not supported yet
  3134. ***** ^ not supported yet
  3135. ***** ^ not supported yet
  3136. ***** ^ undeclared identifier
  3137. 1290 LastKey := 65535;
  3138. ***** ^ undeclared identifier
  3139. 1291 StrEdit.AssignStr( ScrnTypes.ContinueInput,
  3140. ***** ^ not supported yet
  3141. ***** ^ not supported yet
  3142. ***** ^ not supported yet
  3143. ***** ^ not supported yet
  3144. 1292 ReturnValue );
  3145. ***** ^ undeclared identifier
  3146. 1293 (*We do this to make sure we go back through the loop.*)
  3147. 1294 END;
  3148. 1295 END;
  3149. 1296 END;
  3150. 1297
  3151. 1298 UNTIL (NOT PosUtils.Equal(ReturnValue, ScrnTypes.ContinueInput));
  3152. ***** ^ not supported yet
  3153. ***** ^ not supported yet
  3154. ***** ^ undeclared identifier
  3155. ***** ^ not supported yet
  3156. ***** ^ not supported yet
  3157. 1299
  3158. 1300 M2Strings.Assign( ReturnValue, NextFrame );
  3159. ***** ^ not supported yet
  3160. ***** ^ not supported yet
  3161. ***** ^ undeclared identifier
  3162. ***** ^ undeclared identifier
  3163. 1301 (*
  3164. 1302 IF MaxChoices > 0 THEN
  3165. 1303 FramePainter.RedrawField( FrameRec, FrameRec^.CurrentField, FALSE );
  3166. 1304 END;
  3167. 1305 Taken care of by RepaintVisibleArea, below.
  3168. 1306 *)
  3169. 1307 FrameRec^.action := CAP( FrameRec^.action );
  3170. ***** ^ undeclared identifier
  3171. ***** ^ not supported yet
  3172. ***** ^ undeclared identifier
  3173. ***** ^ undeclared identifier
  3174. ***** ^ not supported yet
  3175. 1308 IF FrameRec^.ExitBox[0] # 0C THEN
  3176. ***** ^ undeclared identifier
  3177. ***** ^ not supported yet
  3178. ***** ^ not supported yet
  3179. 1309 (*Now we change the appearance of the border to let the
  3180. 1310 user know the frame is no longer active.*)
  3181. 1311 ScrnUtl1.BoxFrame( FrameRec, FALSE );
  3182. ***** ^ not supported yet
  3183. ***** ^ not supported yet
  3184. ***** ^ undeclared identifier
  3185. ***** ^ not supported yet
  3186. 1312 END;
  3187. 1313 IF FrameRec^.ClearAfter THEN
  3188. ***** ^ undeclared identifier
  3189. ***** ^ not supported yet
  3190. 1314 FrameManager.EraseFrame( FrameRec );
  3191. ***** ^ not supported yet
  3192. ***** ^ not supported yet
  3193. ***** ^ undeclared identifier
  3194. 1315 ELSE
  3195. 1316 RepaintVisibleArea();
  3196. ***** ^ undeclared identifier
  3197. ***** ^ not supported yet
  3198. 1317 (* Erases pointer bar and selection characters. We do
  3199. 1318 this mostly to avoid the problem of restoring things
  3200. 1319 like highlighted selection characters when things
  3201. 1320 pop up over inactive frames. *)
  3202. 1321 END;
  3203. 1322 END ControlFrame;
  3204. ***** ^ not supported yet
  3205. 1323
  3206. 1324
  3207. 1325 BEGIN
  3208. 1326 Initialized := FALSE;
  3209. 1327 Init();
  3210. ***** ^ not supported yet
  3211. ***** ^ not supported yet
  3212. 1328 END InputManager.
  3213. ***** ^ not supported yet
  3214. 1884 errors