]> git.sesse.net Git - vlc/blob - plugins/win32/win32_common.h
7eab9f2a57ba83c01b95c3fca86598f04c42df27
[vlc] / plugins / win32 / win32_common.h
1 /*****************************************************************************\r
2  * win32_common.h: private win32 interface description\r
3  *****************************************************************************\r
4  * Copyright (C) 2002 VideoLAN\r
5  *\r
6  * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
7  *\r
8  * This program is free software; you can redistribute it and/or modify\r
9  * it under the terms of the GNU General Public License as published by\r
10  * the Free Software Foundation; either version 2 of the License, or\r
11  * (at your option) any later version.\r
12  * \r
13  * This program is distributed in the hope that it will be useful,\r
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
16  * GNU General Public License for more details.\r
17  *\r
18  * You should have received a copy of the GNU General Public License\r
19  * along with this program; if not, write to the Free Software\r
20  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.\r
21  *****************************************************************************/\r
22 \r
23 #include "about.h"\r
24 #include "disc.h"\r
25 #include "mainframe.h"\r
26 #include "menu.h"\r
27 #include "messages.h"\r
28 #include "network.h"\r
29 #include "playlist.h"\r
30 #include "preferences.h"\r
31 \r
32 typedef struct es_descriptor_s es_descriptor_t;\r
33 \r
34 /*****************************************************************************\r
35  * The TrackBar is graduated from 0 to SLIDER_MAX_VALUE.\r
36  * SLIDER_MAX_VALUE is set to the higher acceptable value (2^31 - 1), in order\r
37  * to obtain the best precision in date calculation\r
38  *****************************************************************************/\r
39 #define SLIDER_MAX_VALUE 2147483647\r
40 \r
41 /*****************************************************************************\r
42  * intf_sys_t: description and status of Win32 interface\r
43  *****************************************************************************/\r
44 struct intf_sys_s\r
45 {\r
46     /* special actions */\r
47     vlc_bool_t          b_playing;\r
48     vlc_bool_t          b_popup_changed;             /* display popup menu ? */\r
49     vlc_bool_t          b_slider_free;                      /* slider status */\r
50 \r
51     /* menus handlers */\r
52     vlc_bool_t          b_program_update;   /* do we need to update programs \r
53                                                                         menu */\r
54     vlc_bool_t          b_title_update;  /* do we need to update title menus */\r
55     vlc_bool_t          b_chapter_update;    /* do we need to update chapter\r
56                                                                        menus */\r
57     vlc_bool_t          b_audio_update;  /* do we need to update audio menus */\r
58     vlc_bool_t          b_spu_update;      /* do we need to update spu menus */\r
59 \r
60     /* windows and widgets */\r
61     TMainFrameDlg     * p_window;                             /* main window */\r
62     TPlaylistDlg      * p_playwin;                               /* playlist */\r
63     TPopupMenu        * p_popup;                               /* popup menu */\r
64     TAboutDlg         * p_about;                             /* about window */\r
65     TDiscDlg          * p_disc;                     /* disc selection window */\r
66     TNetworkDlg       * p_network;                  /* network stream window */\r
67     TPreferencesDlg   * p_preferences;                 /* preferences window */\r
68 \r
69     /* The slider */\r
70     off_t               OldValue;                          /* previous value */\r
71 \r
72     /* The messages window */\r
73     TMessagesDlg      * p_messages;                       /* messages window */\r
74     msg_subscription_t* p_sub;                  /* message bank subscription */\r
75 \r
76     /* Playlist management */\r
77     int                 i_playing;                 /* playlist selected item */\r
78 \r
79     /* The window labels for DVD mode */\r
80     TLabel            * p_label_title;\r
81     TLabel            * p_label_chapter;\r
82     int                 i_part;                           /* current chapter */\r
83 \r
84     /* Language information */\r
85     es_descriptor_t   * p_audio_es_old;\r
86     es_descriptor_t   * p_spu_es_old;\r
87 \r
88     /* The input thread */\r
89     input_thread_t    * p_input;\r
90 };\r
91 \r