|
|
|
|
|
#ifndef DLIB_CANVAS_DRAWINg_CPP_ |
|
#define DLIB_CANVAS_DRAWINg_CPP_ |
|
|
|
#include "canvas_drawing.h" |
|
|
|
namespace dlib |
|
{ |
|
|
|
|
|
|
|
void draw_sunken_rectangle ( |
|
const canvas& c, |
|
const rectangle& border, |
|
unsigned char alpha |
|
) |
|
{ |
|
rectangle area = border.intersect(c); |
|
if (area.is_empty() == false) |
|
{ |
|
const rgb_alpha_pixel dark_gray(64,64,64,alpha); |
|
const rgb_alpha_pixel gray(128,128,128,alpha); |
|
const rgb_alpha_pixel white(255,255,255,alpha); |
|
const rgb_alpha_pixel background(212,208,200,alpha); |
|
|
|
draw_line(c,point(border.left(),border.top()),point(border.right()-1,border.top()),gray); |
|
|
|
draw_line(c,point(border.left(),border.bottom()),point(border.right(),border.bottom()),white); |
|
draw_line(c,point(border.left()+1,border.bottom()-1),point(border.right()-1,border.bottom()-1),background); |
|
|
|
draw_line(c,point(border.left(),border.top()+1),point(border.left(),border.bottom()-1),gray); |
|
|
|
draw_line(c,point(border.right(),border.top()),point(border.right(),border.bottom()-1),white); |
|
draw_line(c,point(border.right()-1,border.top()+1),point(border.right()-1,border.bottom()-2),background); |
|
|
|
draw_line(c,point(border.left()+1,border.top()+1),point(border.left()+1,border.bottom()-2),dark_gray); |
|
draw_line(c,point(border.left()+1,border.top()+1),point(border.right()-2,border.top()+1),dark_gray); |
|
} |
|
} |
|
|
|
|
|
|
|
void draw_button_down ( |
|
const canvas& c, |
|
const rectangle& btn, |
|
unsigned char alpha |
|
) |
|
{ |
|
rectangle area = btn.intersect(c); |
|
if (area.is_empty() == false) |
|
{ |
|
const rgb_alpha_pixel dark_gray(64,64,64,alpha); |
|
const rgb_alpha_pixel gray(128,128,128,alpha); |
|
const rgb_alpha_pixel black(0,0,0,alpha); |
|
|
|
draw_line(c,point(btn.left(),btn.top()),point(btn.right(),btn.top()),black); |
|
|
|
draw_line(c,point(btn.left()+1,btn.bottom()),point(btn.right(),btn.bottom()),dark_gray); |
|
draw_line(c,point(btn.left()+1,btn.top()+1),point(btn.right()-1,btn.top()+1),gray); |
|
|
|
draw_line(c,point(btn.left(),btn.top()+1),point(btn.left(),btn.bottom()),black); |
|
|
|
draw_line(c,point(btn.right(),btn.top()+1),point(btn.right(),btn.bottom()-1),dark_gray); |
|
draw_line(c,point(btn.left()+1,btn.top()+1),point(btn.left()+1,btn.bottom()-1),gray); |
|
} |
|
} |
|
|
|
|
|
|
|
void draw_button_up ( |
|
const canvas& c, |
|
const rectangle& btn, |
|
unsigned char alpha |
|
) |
|
{ |
|
rectangle area = btn.intersect(c); |
|
if (area.is_empty() == false) |
|
{ |
|
const rgb_alpha_pixel dark_gray(64,64,64,alpha); |
|
const rgb_alpha_pixel gray(128,128,128,alpha); |
|
const rgb_alpha_pixel white(255,255,255,alpha); |
|
|
|
draw_line(c,point(btn.left(),btn.top()),point(btn.right()-1,btn.top()),white); |
|
|
|
draw_line(c,point(btn.left(),btn.bottom()),point(btn.right(),btn.bottom()),dark_gray); |
|
draw_line(c,point(btn.left()+1,btn.bottom()-1),point(btn.right()-1,btn.bottom()-1),gray); |
|
|
|
draw_line(c,point(btn.left(),btn.top()+1),point(btn.left(),btn.bottom()-1),white); |
|
|
|
draw_line(c,point(btn.right(),btn.top()),point(btn.right(),btn.bottom()-1),dark_gray); |
|
draw_line(c,point(btn.right()-1,btn.top()+1),point(btn.right()-1,btn.bottom()-2),gray); |
|
} |
|
} |
|
|
|
|
|
|
|
} |
|
|
|
#endif |
|
|
|
|