diff options
author | Charlie Brej <cbrej@cs.man.ac.uk> | 2010-09-07 22:22:08 +0100 |
---|---|---|
committer | Charlie Brej <cbrej@cs.man.ac.uk> | 2010-09-07 22:22:08 +0100 |
commit | e50ece1f70b8e4ec55590695c8495e5776959149 (patch) | |
tree | f3ed228b1bbdf8e402c2831c97640b4bd1f5437b /themes | |
parent | b371740a73885c563abba6ab394503daf4026416 (diff) |
script: Implement hide message function in the example script theme
This leaves ugly spaces where messages used to be, but is simple.
Diffstat (limited to 'themes')
-rw-r--r-- | themes/script/script.script | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/themes/script/script.script b/themes/script/script.script index ed54a010..7ea9d5e9 100644 --- a/themes/script/script.script +++ b/themes/script/script.script @@ -152,13 +152,28 @@ Plymouth.SetQuitFunction(quit_callback); #----------------------------------------- Message -------------------------------- -message_sprite = Sprite(); -message_sprite.SetPosition(10, 10, 10000); +message_sprites = []; +message_sprite_count = 0; +message_sprite_y = 10; -fun message_callback (text) +fun display_message_callback (text) { my_image = Image.Text(text, 1, 1, 1); - message_sprite.SetImage(my_image); + message_sprites[message_sprite_count] = Sprite(my_image); + message_sprites[message_sprite_count].SetPosition(10, message_sprite_y, 10000); + message_sprites[message_sprite_count].text = text; + message_sprite_count++; + message_sprite_y += my_image.GetHeight(); } -Plymouth.SetMessageFunction(message_callback); +fun hide_message_callback (text) +{ + for (i = 0; i < message_sprite_count; i++) + { + if (message_sprites[i].text == text) + message_sprites[i] = NULL; + } +} + +Plymouth.SetDisplayMessageFunction (display_message_callback); +Plymouth.SetHideMessageFunction (hide_message_callback); |