Have a boolean "animating variable:"
def initialize
@animating = false
...
end
Have a fork in the "update" method:
def update
return @animating ? animate : normal_update
end
Have an "animate" method:
def animate
self.y -= 2
self.width += 4
if self.y == <desired> && self.width = <desired>
@animating = false
finalize
end
end
Have a "normal_update" method:
def normal_update
(do normal updating stuff)
end
Have a "finalize" method:
def finalize
self.contents = Bitmap.new(<size1>, <size2>)
(do stuff to draw the window)
end