grey out inactive stamp+text control icons
This commit is contained in:
parent
790cfbb837
commit
6cf5f65d70
1 changed files with 78 additions and 31 deletions
101
src/tuxpaint.c
101
src/tuxpaint.c
|
|
@ -2102,7 +2102,6 @@ static void loadarbitrary(SDL_Surface * surfs[], SDL_Surface * altsurfs[],
|
||||||
|
|
||||||
static Uint32 getpixel(SDL_Surface * surface, int x, int y);
|
static Uint32 getpixel(SDL_Surface * surface, int x, int y);
|
||||||
static void putpixel(SDL_Surface * surface, int x, int y, Uint32 pixel);
|
static void putpixel(SDL_Surface * surface, int x, int y, Uint32 pixel);
|
||||||
static void clipped_putpixel(SDL_Surface * dest, int x, int y, Uint32 c);
|
|
||||||
|
|
||||||
static void do_undo(void);
|
static void do_undo(void);
|
||||||
static void do_redo(void);
|
static void do_redo(void);
|
||||||
|
|
@ -7756,6 +7755,9 @@ static void draw_magic(void)
|
||||||
int magic, i, max, off_y;
|
int magic, i, max, off_y;
|
||||||
SDL_Rect dest;
|
SDL_Rect dest;
|
||||||
|
|
||||||
|
// restore these to black (stamp and text controls borrow them)
|
||||||
|
SDL_BlitSurface(img_black, NULL, img_magics[MAGIC_FLIP], NULL);
|
||||||
|
SDL_BlitSurface(img_black, NULL, img_magics[MAGIC_MIRROR], NULL);
|
||||||
|
|
||||||
/* FIXME: Should we worry about more than 14 magic effects? :^/ */
|
/* FIXME: Should we worry about more than 14 magic effects? :^/ */
|
||||||
|
|
||||||
|
|
@ -8152,6 +8154,9 @@ static void draw_fonts(void)
|
||||||
|
|
||||||
if (!disable_stamp_controls)
|
if (!disable_stamp_controls)
|
||||||
{
|
{
|
||||||
|
SDL_Surface *button_color;
|
||||||
|
SDL_Surface *button_body;
|
||||||
|
|
||||||
/* Show bold button: */
|
/* Show bold button: */
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 96;
|
dest.x = WINDOW_WIDTH - 96;
|
||||||
|
|
@ -8192,14 +8197,22 @@ static void draw_fonts(void)
|
||||||
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
||||||
|
|
||||||
if (text_size > MIN_TEXT_SIZE)
|
if (text_size > MIN_TEXT_SIZE)
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 96 + (48 - img_shrink->w) / 2;
|
dest.x = WINDOW_WIDTH - 96 + (48 - img_shrink->w) / 2;
|
||||||
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_shrink->h) / 2);
|
(48 - img_shrink->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_shrink, NULL);
|
||||||
SDL_BlitSurface(img_shrink, NULL, screen, &dest);
|
SDL_BlitSurface(img_shrink, NULL, screen, &dest);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -8209,14 +8222,22 @@ static void draw_fonts(void)
|
||||||
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
||||||
|
|
||||||
if (text_size < MAX_TEXT_SIZE)
|
if (text_size < MAX_TEXT_SIZE)
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 48 + (48 - img_grow->w) / 2;
|
dest.x = WINDOW_WIDTH - 48 + (48 - img_grow->w) / 2;
|
||||||
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_grow->h) / 2);
|
(48 - img_grow->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_grow, NULL);
|
||||||
SDL_BlitSurface(img_grow, NULL, screen, &dest);
|
SDL_BlitSurface(img_grow, NULL, screen, &dest);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -8425,6 +8446,9 @@ static void draw_stamps(void)
|
||||||
|
|
||||||
if (!disable_stamp_controls)
|
if (!disable_stamp_controls)
|
||||||
{
|
{
|
||||||
|
SDL_Surface *button_color;
|
||||||
|
SDL_Surface *button_body;
|
||||||
|
|
||||||
/* Show mirror button: */
|
/* Show mirror button: */
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 96;
|
dest.x = WINDOW_WIDTH - 96;
|
||||||
|
|
@ -8433,19 +8457,28 @@ static void draw_stamps(void)
|
||||||
if (inf_stamps[cur_stamp]->mirrorable)
|
if (inf_stamps[cur_stamp]->mirrorable)
|
||||||
{
|
{
|
||||||
if (state_stamps[cur_stamp]->mirrored)
|
if (state_stamps[cur_stamp]->mirrored)
|
||||||
SDL_BlitSurface(img_btn_down, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_down;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
}
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 96 + (48 - img_magics[MAGIC_MIRROR]->w) / 2;
|
dest.x = WINDOW_WIDTH - 96 + (48 - img_magics[MAGIC_MIRROR]->w) / 2;
|
||||||
dest.y = (40 + ((5 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((5 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_magics[MAGIC_MIRROR]->h) / 2);
|
(48 - img_magics[MAGIC_MIRROR]->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_magics[MAGIC_MIRROR], NULL);
|
||||||
SDL_BlitSurface(img_magics[MAGIC_MIRROR], NULL, screen, &dest);
|
SDL_BlitSurface(img_magics[MAGIC_MIRROR], NULL, screen, &dest);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -8457,19 +8490,28 @@ static void draw_stamps(void)
|
||||||
if (inf_stamps[cur_stamp]->flipable)
|
if (inf_stamps[cur_stamp]->flipable)
|
||||||
{
|
{
|
||||||
if (state_stamps[cur_stamp]->flipped)
|
if (state_stamps[cur_stamp]->flipped)
|
||||||
SDL_BlitSurface(img_btn_down, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_down;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
}
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 48 + (48 - img_magics[MAGIC_FLIP]->w) / 2;
|
dest.x = WINDOW_WIDTH - 48 + (48 - img_magics[MAGIC_FLIP]->w) / 2;
|
||||||
dest.y = (40 + ((5 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((5 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_magics[MAGIC_FLIP]->h) / 2);
|
(48 - img_magics[MAGIC_FLIP]->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_magics[MAGIC_FLIP], NULL);
|
||||||
SDL_BlitSurface(img_magics[MAGIC_FLIP], NULL, screen, &dest);
|
SDL_BlitSurface(img_magics[MAGIC_FLIP], NULL, screen, &dest);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -8479,14 +8521,22 @@ static void draw_stamps(void)
|
||||||
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
||||||
|
|
||||||
if (state_stamps[cur_stamp]->size > MIN_STAMP_SIZE)
|
if (state_stamps[cur_stamp]->size > MIN_STAMP_SIZE)
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 96 + (48 - img_shrink->w) / 2;
|
dest.x = WINDOW_WIDTH - 96 + (48 - img_shrink->w) / 2;
|
||||||
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_shrink->h) / 2);
|
(48 - img_shrink->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_shrink, NULL);
|
||||||
SDL_BlitSurface(img_shrink, NULL, screen, &dest);
|
SDL_BlitSurface(img_shrink, NULL, screen, &dest);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -8496,15 +8546,24 @@ static void draw_stamps(void)
|
||||||
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
dest.y = 40 + ((6 + TOOLOFFSET / 2) * 48);
|
||||||
|
|
||||||
if (state_stamps[cur_stamp]->size < MAX_STAMP_SIZE)
|
if (state_stamps[cur_stamp]->size < MAX_STAMP_SIZE)
|
||||||
SDL_BlitSurface(img_btn_up, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_black;
|
||||||
|
button_body = img_btn_up;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
SDL_BlitSurface(img_btn_off, NULL, screen, &dest);
|
{
|
||||||
|
button_color = img_grey;
|
||||||
|
button_body = img_btn_off;
|
||||||
|
}
|
||||||
|
SDL_BlitSurface(button_body, NULL, screen, &dest);
|
||||||
|
|
||||||
dest.x = WINDOW_WIDTH - 48 + (48 - img_grow->w) / 2;
|
dest.x = WINDOW_WIDTH - 48 + (48 - img_grow->w) / 2;
|
||||||
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
dest.y = (40 + ((6 + TOOLOFFSET / 2) * 48) +
|
||||||
(48 - img_grow->h) / 2);
|
(48 - img_grow->h) / 2);
|
||||||
|
|
||||||
|
SDL_BlitSurface(button_color, NULL, img_grow, NULL);
|
||||||
SDL_BlitSurface(img_grow, NULL, screen, &dest);
|
SDL_BlitSurface(img_grow, NULL, screen, &dest);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -9112,18 +9171,6 @@ static void xorpixel(int x, int y)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Should really clip at the line level, but oh well... */
|
|
||||||
static void clipped_putpixel(SDL_Surface * dest, int x, int y, Uint32 c)
|
|
||||||
{
|
|
||||||
if (x >= 96 && x < (WINDOW_WIDTH - 96) &&
|
|
||||||
y >= 0 && y < (48 * 7 + 40 + HEIGHTOFFSET))
|
|
||||||
{
|
|
||||||
putpixel(dest, x, y, c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Undo! */
|
/* Undo! */
|
||||||
|
|
||||||
static void do_undo(void)
|
static void do_undo(void)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue