From: Charlie Brej Date: Tue, 7 Sep 2010 21:22:08 +0000 (+0100) Subject: script: Implement hide message function in the example script theme X-Git-Tag: 0.8.4~125 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e50ece1f70b8e4ec55590695c8495e5776959149;p=thirdparty%2Fplymouth.git script: Implement hide message function in the example script theme This leaves ugly spaces where messages used to be, but is simple. --- 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);