diff options
Diffstat (limited to 'ubuntu/maverick/defaultsettings/desktop-base/usplash/moreblue-orbit/theme.c')
-rw-r--r-- | ubuntu/maverick/defaultsettings/desktop-base/usplash/moreblue-orbit/theme.c | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/ubuntu/maverick/defaultsettings/desktop-base/usplash/moreblue-orbit/theme.c b/ubuntu/maverick/defaultsettings/desktop-base/usplash/moreblue-orbit/theme.c deleted file mode 100644 index 59632522e..000000000 --- a/ubuntu/maverick/defaultsettings/desktop-base/usplash/moreblue-orbit/theme.c +++ /dev/null @@ -1,178 +0,0 @@ -/* usplash - * - * theme.c - theme definition - * - * Copyright © 2006 David Härdeman <[email protected]> - * based on example-theme from usplash which is - * Copyright © 2006 Dennis Kaarsemaker <[email protected]> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include <usplash-theme.h> -#include <usplash_backend.h> - -void t_init(struct usplash_theme *theme); -void t_draw_progressbar(struct usplash_theme *theme, int percentage); -void t_clear_progressbar(struct usplash_theme *theme); -void t_clear_text(struct usplash_theme *theme); -void t_animate_step(struct usplash_theme* theme, int pulsating); - -/* Auto-generated theme definitions */ -#include "theme.h" - -static struct private_hack *phack = NULL; - -void -t_init(struct usplash_theme *theme) -{ - int x, y; - - /* START - HACKS R US */ - phack = (struct private_hack *)theme->font; - theme->font = NULL; - /* FINISH - HACKS R US */ - usplash_getdimensions(&x, &y); - theme->progressbar_x = (x - theme->pixmap->width)/2 + theme->progressbar_x; - theme->progressbar_y = (y - theme->pixmap->height)/2 + theme->progressbar_y; -} - -void -t_draw_progressbar(struct usplash_theme *theme, int percentage) -{ - int w = (phack->progress_bg->width * percentage / 100); - static int last_w = 0; - - if (w != 0 && w == last_w) - return; - - /* Check if we're changing mode between startup and shutdown */ - if (last_w >= 0 && w < 0) { - usplash_put(theme->progressbar_x, - theme->progressbar_y, - phack->progress_fg); - last_w = 0; - } else if (last_w < 0 && w > 0) { - usplash_put(theme->progressbar_x, - theme->progressbar_y, - phack->progress_bg); - last_w = 0; - } - - /* Draw only the part which has changed since last time */ - if (percentage == 0) { - usplash_put(theme->progressbar_x, - theme->progressbar_y, - phack->progress_bg); - } else if (percentage < 0) { - usplash_put_part(theme->progressbar_x - last_w, - theme->progressbar_y, - -w + last_w, - phack->progress_bg->height, - phack->progress_bg, - -last_w, 0); - } else if (percentage > 0) { - usplash_put_part(theme->progressbar_x + last_w, - theme->progressbar_y, - w - last_w, - phack->progress_fg->height, - phack->progress_fg, - last_w, 0); - } - - last_w = w; -} - -void -t_clear_progressbar(struct usplash_theme *theme) -{ - t_draw_progressbar(theme, 0); -} - -void -t_clear_text(struct usplash_theme *theme) -{ - int x, y, x1, y1, x2, y2; - usplash_getdimensions(&x, &y); - - /* Draw outer border */ - x1 = (x - theme->pixmap->width)/2 + theme->text_x - TEXT_EXTRA_PX; - y1 = (y - theme->pixmap->height)/2 + theme->text_y - TEXT_EXTRA_PX; - x2 = x1 + theme->text_width + 2 * TEXT_EXTRA_PX; - y2 = y1 + theme->text_height + 2 * TEXT_EXTRA_PX; - usplash_clear(x1, y1, x2, y2, theme->text_foreground); - - /* Draw main text area with TEXT_BORDER_PX pixels padding */ - x1 += TEXT_BORDER_PX; - y1 += TEXT_BORDER_PX; - x2 -= TEXT_BORDER_PX; - y2 -= TEXT_BORDER_PX; - usplash_clear(x1, y1, x2, y2, theme->text_background); -} - -void -t_animate_step(struct usplash_theme* theme, int pulsating) -{ - static int pulsate_step = 0; - static int pulse_width = 70; - static int step_width = 1; - static int prev_step = 0; - static int reset = 1; - int num_steps = (phack->progress_fg->width - pulse_width)/step_width; - int x1; - - if (!pulsating) { - reset = 1; - return; - } - - if (reset) { - /* Reset pulse */ - t_clear_progressbar(theme); - reset = 0; - pulsate_step = 0; - usplash_put_part(theme->progressbar_x, - theme->progressbar_y, - pulse_width, - phack->progress_fg->height, - phack->progress_fg, - 0, 0); - } else { - /* Remove from left hand side of pulse */ - x1 = step_width * prev_step; - usplash_put_part(theme->progressbar_x + x1, - theme->progressbar_y, - step_width, - phack->progress_bg->height, - phack->progress_bg, - x1, 0); - } - - /* Add to right hand side of pulse */ - x1 = step_width * pulsate_step + pulse_width; - usplash_put_part(theme->progressbar_x + x1, - theme->progressbar_y, - step_width, - phack->progress_fg->height, - phack->progress_fg, - x1, 0); - - /* Check for wraparound */ - prev_step = pulsate_step; - pulsate_step++; - if (pulsate_step >= num_steps) - reset = 1; -} - |