-
TFigureen lisätään property: AsString, jonka saantimetodi GetAsString palauttaa kuvion intiimit tiedot merkkijonona, esimerkiksi: '10.5,12.5,24.7,30.8' (eli esim. x,y,h,w)
-
vastaavasti asettamismetodi SetAsString tehdäänkin parametrilistalla var s:string
, josta metodia uudelleen kirjoitettaessa (override) jokainen voi ottaa "oman" osansa jonosta.
-
Talletusvaiheessa TAlusta:Talleta(var f:Text)
käy läpi kaikki päällänsä olevat muodot ja kirjoittaa tiedostoon writeln(f,muoto.ClassName,':',muoto.AsString);
-
Lukuvaiheessa TAlusta.Lue(var f:Text)
lukee rivin kerrallaan Readln(f,s);
-
luokannimi := erota(s,':');
-
pyydetään orrelta tätä luokan nimeä vastaava uuden olion ilmentymä (vähän kuten TOrsi.Monista on nyt, mutta luokan nimen perusteella). Eli orsi käy läpi kaikki päällänsä olevat muodot ja jos jollakin muodolla on sama luokan nimi, monistaa tällaisen olion.
-
kun olion ilmentymä on saatu, asetetaan attribuutit tietysti muoto.AsString := s;
-