Add new icons: hide, prev/next
This commit is contained in:
parent
7e5552d00b
commit
9c752c249d
@ -879,7 +879,7 @@ static void icon_close_cross (cairo_t *cr, const int width, const int height, co
|
||||
const double y = height * .5;
|
||||
const double o = .5 + std::min (x, y) * .4;
|
||||
Gtkmm2ext::set_source_rgba (cr, fg_color);
|
||||
cairo_set_line_width (cr, ceil (.07 * std::min (x, y)));
|
||||
cairo_set_line_width (cr, DEFAULT_LINE_WIDTH);
|
||||
cairo_move_to (cr, x-o, y-o);
|
||||
cairo_line_to (cr, x+o, y+o);
|
||||
cairo_move_to (cr, x+o, y-o);
|
||||
@ -887,6 +887,65 @@ static void icon_close_cross (cairo_t *cr, const int width, const int height, co
|
||||
cairo_stroke (cr);
|
||||
}
|
||||
|
||||
/** "hide" strike through eye */
|
||||
static void icon_hide_eye (cairo_t *cr, const int width, const int height, const uint32_t fg_color)
|
||||
{
|
||||
const double x = width * .5;
|
||||
const double y = height * .5;
|
||||
const double wh = std::min (x, y);
|
||||
|
||||
const double r = .2 * wh;
|
||||
const double o = .60 * wh;
|
||||
const double dx = .75 * wh;
|
||||
const double dy = .65 * wh;
|
||||
|
||||
cairo_move_to (cr, x - dx, y);
|
||||
cairo_curve_to (cr, x, y + dy, x, y + dy, x + dx, y);
|
||||
cairo_curve_to (cr, x, y - dy, x, y - dy, x - dx, y);
|
||||
VECTORICONSTROKE (DEFAULT_LINE_WIDTH, fg_color);
|
||||
|
||||
cairo_arc (cr, x, y, r, 0, 2 * M_PI);
|
||||
//cairo_fill (cr);
|
||||
VECTORICONSTROKE (DEFAULT_LINE_WIDTH, fg_color);
|
||||
|
||||
cairo_move_to (cr, x - o, y + o);
|
||||
cairo_line_to (cr, x + o, y - o);
|
||||
VECTORICONSTROKEOUTLINE (DEFAULT_LINE_WIDTH, fg_color);
|
||||
}
|
||||
|
||||
/** slim "<" */
|
||||
static void icon_scroll_left (cairo_t *cr, const int width, const int height, const uint32_t fg_color)
|
||||
{
|
||||
const double x = width * .5;
|
||||
const double y = height * .5;
|
||||
const double wh = std::min (x, y);
|
||||
|
||||
const double tri1 = .2 * wh;
|
||||
const double tri2 = .4 * wh;
|
||||
|
||||
cairo_move_to (cr, x + tri1, y - tri2);
|
||||
cairo_line_to (cr, x - tri2, y);
|
||||
cairo_line_to (cr, x + tri1, y + tri2);
|
||||
VECTORICONSTROKE (DEFAULT_LINE_WIDTH, fg_color);
|
||||
}
|
||||
|
||||
/** slim ">" */
|
||||
static void icon_scroll_right (cairo_t *cr, const int width, const int height, const uint32_t fg_color)
|
||||
{
|
||||
|
||||
const double x = width * .5;
|
||||
const double y = height * .5;
|
||||
const double wh = std::min (x, y);
|
||||
|
||||
const double tri1 = .2 * wh;
|
||||
const double tri2 = .4 * wh;
|
||||
|
||||
cairo_move_to (cr, x - tri1, y - tri2);
|
||||
cairo_line_to (cr, x + tri2, y);
|
||||
cairo_line_to (cr, x - tri1, y + tri2);
|
||||
VECTORICONSTROKE (DEFAULT_LINE_WIDTH, fg_color);
|
||||
}
|
||||
|
||||
/** "<" */
|
||||
static void icon_nudge_left (cairo_t *cr, const int width, const int height, const uint32_t fg_color)
|
||||
{
|
||||
@ -1271,12 +1330,21 @@ ArdourWidgets::ArdourIcon::render (cairo_t *cr,
|
||||
case CloseCross:
|
||||
icon_close_cross (cr, width, height, fg_color);
|
||||
break;
|
||||
case HideEye:
|
||||
icon_hide_eye (cr, width, height, fg_color);
|
||||
break;
|
||||
case StripWidth:
|
||||
icon_strip_width (cr, width, height, fg_color);
|
||||
break;
|
||||
case DinMidi:
|
||||
icon_din_midi (cr, width, height, fg_color);
|
||||
break;
|
||||
case ScrollLeft:
|
||||
icon_scroll_left (cr, width, height, fg_color);
|
||||
break;
|
||||
case ScrollRight:
|
||||
icon_scroll_right (cr, width, height, fg_color);
|
||||
break;
|
||||
case NudgeLeft:
|
||||
icon_nudge_left (cr, width, height, fg_color);
|
||||
break;
|
||||
|
@ -30,6 +30,7 @@ namespace ArdourWidgets { namespace ArdourIcon {
|
||||
RecButton,
|
||||
RecTapeMode,
|
||||
CloseCross,
|
||||
HideEye,
|
||||
StripWidth,
|
||||
DinMidi,
|
||||
TransportStop,
|
||||
@ -40,6 +41,8 @@ namespace ArdourWidgets { namespace ArdourIcon {
|
||||
TransportEnd,
|
||||
TransportPanic,
|
||||
TransportMetronom,
|
||||
ScrollLeft,
|
||||
ScrollRight,
|
||||
NudgeLeft,
|
||||
NudgeRight,
|
||||
ZoomIn,
|
||||
|
Loading…
Reference in New Issue
Block a user