1 /* 2 * Copyright (C) 2000-2019 the xine project 3 * 4 * This file is part of xine, a unix video player. 5 * 6 * xine is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * 11 * xine is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with this program; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 19 * 20 * xine panel related stuff 21 * 22 */ 23 24 #ifndef PANEL_H 25 #define PANEL_H 26 27 #include "xitk.h" 28 29 typedef struct xui_panel_st xui_panel_t; 30 31 void panel_update_nextprev_tips (xui_panel_t *panel); 32 int is_playback_widgets_enabled (xui_panel_t *panel); 33 void enable_playback_controls (xui_panel_t *panel, int enable); 34 35 void panel_show_tips (xui_panel_t *panel); 36 int panel_get_tips_enable (xui_panel_t *panel); 37 unsigned long panel_get_tips_timeout (xui_panel_t *panel); 38 39 void panel_deinit (xui_panel_t *panel); 40 xui_panel_t *panel_init (gGui_t *gui); 41 42 void panel_paint (xui_panel_t *panel); 43 int panel_is_visible (xui_panel_t *panel); 44 45 void panel_change_skins (xui_panel_t *panel, int synthetic); 46 47 void panel_add_autoplay_buttons (xui_panel_t *panel); 48 void panel_add_mixer_control (xui_panel_t *panel); 49 50 /* the next 3 are usable both directly and as widget callbacks. 51 w may be NULL, data is xui_panel_t *. */ 52 void panel_toggle_visibility (xitk_widget_t *w, void *data); 53 void panel_toggle_audio_mute(xitk_widget_t *w, void *data, int status); 54 void panel_snapshot(xitk_widget_t *w, void *data); 55 56 void panel_check_pause (xui_panel_t *panel); 57 void panel_check_mute (xui_panel_t *panel); 58 59 void panel_reset_runtime_label (xui_panel_t *panel); 60 void panel_reset_slider (xui_panel_t *panel); 61 62 void panel_update_slider (xui_panel_t *panel, int pos); 63 void panel_update_channel_display (xui_panel_t *panel); 64 void panel_update_runtime_display (xui_panel_t *panel); 65 void panel_update_mrl_display (xui_panel_t *panel); 66 void panel_update_mixer_display (xui_panel_t *panel); 67 68 void panel_set_title (xui_panel_t *panel, char*); 69 70 void panel_reparent (xui_panel_t *panel); 71 72 #endif 73