]> git.sesse.net Git - vlc/blob - modules/gui/wxwidgets/dialogs/vlm/vlm_slider_manager.hpp
update module LIST file.
[vlc] / modules / gui / wxwidgets / dialogs / vlm / vlm_slider_manager.hpp
1 /*****************************************************************************
2  * vlm_slider_manager.hpp: Header for slider_manager
3  *****************************************************************************
4  * Copyright (C) 1999-2005 the VideoLAN team
5  * $Id$
6  *
7  * Authors: ClĂ©ment Stenac <zorglub@videolan.org>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22  *****************************************************************************/
23
24 #ifndef _VLM_SLIDER_MANAGER_H_
25 #define _VLM_SLIDER_MANAGER_H_
26
27 #include "wxwidgets.hpp"
28
29 namespace wxvlc
30 {
31     class VLMBroadcastStreamPanel;
32     /**
33      * This class manages a slider corresponding to the main input
34      */
35     class VLMSliderManager
36     {
37     public:
38         VLMSliderManager( intf_thread_t *, VLMBroadcastStreamPanel * );
39         virtual ~VLMSliderManager();
40
41         wxString time_string;
42
43         void Update();
44         void ProcessUpdate( wxScrollEvent & );
45
46     protected:
47         vlc_bool_t b_slider_free;
48         virtual void UpdateInput();
49         virtual void UpdateButtons( vlc_bool_t );
50         virtual void UpdateTime( char *, char *);
51
52         virtual vlc_bool_t IsShown();
53         virtual vlc_bool_t IsFree();
54         virtual vlc_bool_t IsPlaying();
55
56         virtual void HideSlider();
57         virtual void ShowSlider();
58
59         VLMBroadcastStreamPanel * p_sp;
60
61         intf_thread_t * p_intf;
62         input_thread_t *p_input;
63         wxSlider *slider;            ///< Slider for this input
64         int i_slider_pos;            ///< Current slider position
65     };
66 };
67
68 #endif