diff options
| author | Ray Strode <rstrode@redhat.com> | 2008-06-26 15:14:58 -0400 |
|---|---|---|
| committer | Ray Strode <rstrode@redhat.com> | 2008-06-26 15:14:58 -0400 |
| commit | 036c7ddbeadd400f73da76857468edbd22eb25e2 (patch) | |
| tree | bf12c5c028b478278e88b33323bd45097aa0c121 /src | |
| parent | ba2cd476b9b3d885f912d407c2740ca641b8a1c4 (diff) | |
| download | plymouth-036c7ddbeadd400f73da76857468edbd22eb25e2.tar.gz plymouth-036c7ddbeadd400f73da76857468edbd22eb25e2.tar.xz plymouth-036c7ddbeadd400f73da76857468edbd22eb25e2.zip | |
Draw spindicator in a brown trough
Diffstat (limited to 'src')
| -rw-r--r-- | src/libplybootsplash/ply-text-pulser.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/src/libplybootsplash/ply-text-pulser.c b/src/libplybootsplash/ply-text-pulser.c index d11b1db..34630bb 100644 --- a/src/libplybootsplash/ply-text-pulser.c +++ b/src/libplybootsplash/ply-text-pulser.c @@ -81,7 +81,7 @@ ply_text_pulser_new (void) pulser->column = 0; pulser->spinner_position = 0; pulser->number_of_columns = 40; - pulser->number_of_rows = 3; + pulser->number_of_rows = 1; return pulser; } @@ -96,20 +96,37 @@ ply_text_pulser_free (ply_text_pulser_t *pulser) } static void +draw_trough (ply_text_pulser_t *pulser, + int column, + int row) +{ + char *bytes; + + ply_window_set_text_cursor_position (pulser->window, + column, + row); + ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_BROWN); + bytes = malloc (pulser->number_of_columns); + memset (bytes, ' ', pulser->number_of_columns); + write (STDOUT_FILENO, bytes, pulser->number_of_columns); + free (bytes); +} + +static void animate_at_time (ply_text_pulser_t *pulser, double time) { ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT); + draw_trough (pulser, pulser->column, pulser->row); + ply_window_set_text_cursor_position (pulser->window, pulser->column + pulser->spinner_position, - pulser->row + 1); - ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_DEFAULT); - write (STDOUT_FILENO, " ", strlen (" ")); - pulser->spinner_position = ((pulser->number_of_columns - 2) - NUMBER_OF_INDICATOR_COLUMNS - 1) * (.5 * sin (time) + .5) + 2; + pulser->row); + pulser->spinner_position = (pulser->number_of_columns - strlen (" ") + 1) * (.5 * sin (time) + .5); ply_window_set_text_cursor_position (pulser->window, pulser->column + pulser->spinner_position, - pulser->row + 1); + pulser->row); ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_WHITE); write (STDOUT_FILENO, " ", strlen (" ")); |
