Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
38
Task/Animation/E/animation-1.e
Normal file
38
Task/Animation/E/animation-1.e
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
# State
|
||||
var text := "Hello World! "
|
||||
var leftward := false
|
||||
|
||||
# Window
|
||||
def w := <swing:makeJFrame>("RC: Basic Animation")
|
||||
|
||||
# Text in window
|
||||
w.setContentPane(def l := <swing:makeJLabel>(text))
|
||||
l.setOpaque(true) # repaints badly if not set!
|
||||
l.addMouseListener(def mouseListener {
|
||||
to mouseClicked(_) {
|
||||
leftward := !leftward
|
||||
}
|
||||
match _ {}
|
||||
})
|
||||
|
||||
# Animation
|
||||
def anim := timer.every(100, fn _ { # milliseconds
|
||||
def s := text.size()
|
||||
l.setText(text := if (leftward) {
|
||||
text(1, s) + text(0, 1)
|
||||
} else {
|
||||
text(s - 1, s) + text(0, s - 1)
|
||||
})
|
||||
})
|
||||
|
||||
# Set up window shape and close behavior
|
||||
w.pack()
|
||||
w.setLocationRelativeTo(null)
|
||||
w.addWindowListener(def windowListener {
|
||||
to windowClosing(_) { anim.stop() }
|
||||
match _ {}
|
||||
})
|
||||
|
||||
# Start everything
|
||||
w.show()
|
||||
anim.start()
|
||||
17
Task/Animation/E/animation-2.e
Normal file
17
Task/Animation/E/animation-2.e
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
def [reverse, stop] := {
|
||||
var text := "Hello World! "
|
||||
var leftward := false
|
||||
|
||||
def anim := timer.every(100, fn _ { # milliseconds
|
||||
def s := text.size()
|
||||
text := if (leftward) {
|
||||
text(1, s) + text(0, 1)
|
||||
} else {
|
||||
text(s - 1, s) + text(0, s - 1)
|
||||
}
|
||||
print("\b" * s, text)
|
||||
})
|
||||
print("\n", text)
|
||||
anim.start()
|
||||
[def _() { leftward := !leftward; null }, anim.stop]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue