!7 concept Line { S text; S type; // 'user, 'suggested, 'bot, 'metaComment } concept Interaction { new L lines; bool current; } module TrainInteraction { transient S imageID = #1101205; transient JTextArea taInteraction; transient JTextField tfInput, tfToSay; transient JLabel lblOutput; transient Interaction current; start { db(); current = uniq_sync(Interaction, current := true); } visualize { tfInput = jTextField(); tfToSay = jTextField(); taInteraction = jTextArea(); ret withBottomMargin(20, centerAndSouthWithMargins( westAndCenterWithMargin(jimage(imageID), taInteraction), northAndCenterWithMargin( fontSize(20, lblOutput = jCenteredBoldLabel(" ")), makeForm3( "Your input:", focusOnShow(fontSize(16, tfInput)), "Make me say:", focusOnShow(fontSize(16, tfToSay))) ))); } }