repositories
/
clean-tests.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
structs
[clean-tests.git]
/
afp
/
a4
/
skeleton4.icl
diff --git
a/afp/a4/skeleton4.icl
b/afp/a4/skeleton4.icl
index
af496b7
..
6b96cd5
100644
(file)
--- a/
afp/a4/skeleton4.icl
+++ b/
afp/a4/skeleton4.icl
@@
-73,7
+73,7
@@
gToString{|OBJECT|} fx (OBJECT x) = fx x
\r
instance + String where + s t = s +++ t
\r
\r
\r
instance + String where + s t = s +++ t
\r
\r
-Start w = doTasks (changeName student) w
\r
+Start w = doTasks (changeName
Edcomb
student) w
\r
\r
enterStudent :: Task Student
\r
enterStudent = enterInformation "Enter a student" []
\r
\r
enterStudent :: Task Student
\r
enterStudent = enterInformation "Enter a student" []
\r
@@
-88,32
+88,33
@@
selectStudent :: ([Student] -> Task Student)
selectStudent = enterChoice "Pick a student" []
\r
\r
selectStudentOnlyName :: ([Student] -> Task Student)
\r
selectStudent = enterChoice "Pick a student" []
\r
\r
selectStudentOnlyName :: ([Student] -> Task Student)
\r
-selectStudentOnlyName = enterChoice "Pick a student" [ChooseFromDropdown \
s->s.Student.
name]
\r
+selectStudentOnlyName = enterChoice "Pick a student" [ChooseFromDropdown \
{Student|name}->
name]
\r
\r
selectStudentFormat :: ([Student] -> Task Student)
\r
selectStudentFormat = enterChoice "Pick a student" [ChooseFromDropdown gToString{|*|}]
\r
\r
selectPartner :: ([Student] -> Task [Student])
\r
\r
selectStudentFormat :: ([Student] -> Task Student)
\r
selectStudentFormat = enterChoice "Pick a student" [ChooseFromDropdown gToString{|*|}]
\r
\r
selectPartner :: ([Student] -> Task [Student])
\r
-selectPartner = enterMultipleChoice "Pick a partner" [ChooseFromDropdown \
s->s.Student.name + "(" + gToString{|*|} s.Student.
bama + ")"]
\r
+selectPartner = enterMultipleChoice "Pick a partner" [ChooseFromDropdown \
{name,bama}->name + "(" + gToString{|*|}
bama + ")"]
\r
\r
changeName :: Student -> Task Student
\r
changeName s
\r
= viewInformation "Student to change" [] s
\r
\r
changeName :: Student -> Task Student
\r
changeName s
\r
= viewInformation "Student to change" [] s
\r
- ||- updateInformation "New name" [UpdateAs (\
s->s.Student.
name) (\s n->{Student | s & name=n})] s
\r
+ ||- updateInformation "New name" [UpdateAs (\
{Student|name}->
name) (\s n->{Student | s & name=n})] s
\r
\r
changeNameEdcomb :: Student -> Task Student
\r
changeNameEdcomb s
\r
\r
changeNameEdcomb :: Student -> Task Student
\r
changeNameEdcomb s
\r
- = updateInformation "New name" [UpdateUsing id (\_ v->v)
studed
] s
\r
+ = updateInformation "New name" [UpdateUsing id (\_ v->v)
nameEditor
] s
\r
where
\r
where
\r
-
studed
:: Editor Student
\r
-
studed
= bijectEditorValue
\r
- (\
s->(s.Student.name, s.snum, s.bama, s.year
))
\r
+
nameEditor
:: Editor Student
\r
+
nameEditor
= bijectEditorValue
\r
+ (\
{name=n,snum=s,bama=b,year=y}->(n, s, b, y
))
\r
(\(n,s,b,y)->{name=n,snum=s,bama=b,year=y})
\r
(container4
\r
(\(n,s,b,y)->{name=n,snum=s,bama=b,year=y})
\r
(container4
\r
- gEditor{|*|}
\r
- (withChangedEditMode toView gEditor{|*|})
\r
- (withChangedEditMode toView gEditor{|*|})
\r
- (withChangedEditMode toView gEditor{|*|})
\r
+ (gEditor{|*|} <<@ labelAttr "name")
\r
+ (withChangedEditMode toView gEditor{|*|}
<<@ labelAttr "snum"
)
\r
+ (withChangedEditMode toView gEditor{|*|}
<<@ labelAttr "bama"
)
\r
+ (withChangedEditMode toView gEditor{|*|}
<<@ labelAttr "year"
)
\r
)
\r
)
\r
+
\r
toView (Update a) = View a
\r
toView v = v
\r
toView (Update a) = View a
\r
toView v = v
\r