static gboolean new_osd(xosd **_osd, guint lines) { xosd *osd = *_osd; if(osd) { if(xosd_get_number_lines(osd) == lines) return TRUE; xosd_destroy(osd); } if(lines <= 0) { osd = NULL; return FALSE; } osd = xosd_create(lines); xosd_set_pos(osd, XOSD_bottom); xosd_set_vertical_offset(osd, 16); xosd_set_align(osd, XOSD_center); xosd_set_horizontal_offset(osd, 0); xosd_set_font(osd, XOSD_FONT); xosd_set_outline_offset(osd, 1); xosd_set_outline_colour(osd, XOSD_OUTLINE_COLOR); xosd_set_shadow_offset(osd, 2); xosd_set_colour(osd, XOSD_COLOR); *_osd = osd; return TRUE; }
xosd * configure_osd(int lines) { xosd *osd; osd = xosd_create (NKEYS); xosd_set_font(osd, SK_FONT); xosd_set_pos(osd, SK_POS); xosd_set_align(osd, SK_ALIGN); xosd_set_colour(osd, SK_FG); xosd_set_outline_colour(osd, SK_OUTLINE); xosd_set_outline_offset(osd, SK_OFFSET); xosd_set_shadow_colour(osd, SK_SHADOW); xosd_set_shadow_offset(osd, SK_SHOFFSET); xosd_set_timeout(osd, SK_TIMEOUT); return osd; }