28.01.2015 Views

Hermes: A Tutorial and Reference Manual - Researcher - IBM

Hermes: A Tutorial and Reference Manual - Researcher - IBM

Hermes: A Tutorial and Reference Manual - Researcher - IBM

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ishidden<strong>and</strong>innowayaectsthesemantics. 442.7.TheWindowManager<br />

2.7.2Skeleton We'renowreadytowritetheskeletonofthewindowmanager: anelementbypositiontakesprecedenceovertheabbreviationforselecting sothefactthatNisnotanintegerwillnothelp. anelementbykey.Abbreviationsareexp<strong>and</strong>edbeforetypesarechecked, Onceagain,weremindyouthatthephysicalrepresentationofthetable WindowManager:using(St<strong>and</strong>ard,WMExternal,WMInt,StartWindowApplication) process(Init:WMIn) declare RefocusCM:WindowInterface; WriteToWindow:WriteToWindowIn; WriteToWindowCM:WriteToWindowInterface; Refocus:WindowIn; Parms:WMInterface;--initializationparameters Dispatch:DispatchIn; DispatchCM:DispatchInterface; Create:CreateIn; CreateCM:CreateInterface; Kill:WindowIn;<br />

begin CreatedWindows:Windows;--statusofallwindows CurrentFocus:Charstring;--nameofwindowinfocus WriteToWindowCapability:WriteToWindowOut; KillCM:WindowInterface; GetProgram:GetProgramOut; PutLine:PutLineOut;<br />

GetProgram:=Parms.GetProgram; PutLine:=Parms.PutLine; receiveParmsfromInit; --initializationsection ApplicationBuilder:Program;<br />

ApplicationBuilder:=Parms.GetProgram("applicationbuilder"); newWriteToWindow;connectWriteToWindowCapabilitytoWriteToWindow; newRefocus;connectParms.RefocustoRefocus; CurrentWindow:Window;--awindowbeinginsert/deleted/searched<br />

newCreate;connectParms.CreatetoCreate; newKill;connectParms.KilltoKill; returnParms; newCreatedWindows; --servicesection newDispatch;connectParms.DispatchtoDispatch;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!