1 /***************************************************************** 2 * gmerlin - a general purpose multimedia framework and applications 3 * 4 * Copyright (c) 2001 - 2011 Members of the Gmerlin project 5 * gmerlin-general@lists.sourceforge.net 6 * http://gmerlin.sourceforge.net 7 * 8 * This program is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation, either version 2 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program. If not, see <http://www.gnu.org/licenses/>. 20 * *****************************************************************/ 21 22 23 #include <libxml/tree.h> 24 #include <libxml/parser.h> 25 26 27 #define DISPLAY_WIDTH 232 28 #define DISPLAY_HEIGHT 59 29 30 typedef struct display_s display_t; 31 32 typedef struct display_skin_s 33 { 34 int x, y; 35 float background[3]; 36 float foreground_normal[3]; 37 float foreground_error[3]; 38 } display_skin_t; 39 40 display_t * display_create(gmerlin_t * gmerlin); 41 42 const bg_parameter_info_t * display_get_parameters(display_t * display); 43 44 void display_set_parameter(void * data, const char * name, 45 const bg_parameter_value_t * v); 46 47 int display_get_parameter(void * data, const char * name, 48 bg_parameter_value_t * v); 49 50 void display_destroy(display_t *); 51 52 void display_set_playlist_times(display_t *, 53 gavl_time_t duration_before, 54 gavl_time_t duration_current, 55 gavl_time_t duration_after); 56 57 void display_set_time(display_t *, gavl_time_t time); 58 59 void display_set_mute(display_t *, int mute); 60 61 GtkWidget * display_get_widget(display_t *); 62 63 void display_get_coords(display_t *, int * x, int * y); 64 65 66 /* Set state to something defined in playermsg.h */ 67 68 void display_set_state(display_t *, int state, 69 const void * arg); 70 71 /* Set track name to be displayed */ 72 73 void display_set_track_name(display_t * d, char * name); 74 75 void display_set_error_msg(display_t * d, char * msg); 76 77 void display_set_skin(display_t * d, display_skin_t * s); 78 79 void display_skin_load(display_skin_t * s, 80 xmlDocPtr doc, xmlNodePtr node); 81