~ubuntu-branches/debian/wheezy/vlc/wheezy

« back to all changes in this revision

Viewing changes to plugins/gtk/intf_gtk.h

Tags: upstream-0.7.2.final
ImportĀ upstreamĀ versionĀ 0.7.2.final

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*****************************************************************************
2
 
 * intf_gtk.h: private Gtk+ interface description
3
 
 *****************************************************************************
4
 
 * Copyright (C) 1999, 2000 VideoLAN
5
 
 * $Id: intf_gtk.h,v 1.9 2001/11/16 00:29:52 stef Exp $
6
 
 *
7
 
 * Authors: Samuel Hocevar <sam@zoy.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., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
22
 
 *****************************************************************************/
23
 
 
24
 
/*****************************************************************************
25
 
 * Drag'n'drop stuff
26
 
 *****************************************************************************/
27
 
#define DROP_ACCEPT_TEXT_URI_LIST  0
28
 
#define DROP_ACCEPT_TEXT_PLAIN     1
29
 
#define DROP_ACCEPT_STRING         2
30
 
 
31
 
/*****************************************************************************
32
 
 * Useful inline function
33
 
 ****************************************************************************/
34
 
static __inline__ intf_thread_t * GetIntf( GtkWidget *item, char * psz_parent )
35
 
{
36
 
    return( gtk_object_get_data( GTK_OBJECT( lookup_widget(item, psz_parent) ),
37
 
                                                     "p_intf" ) );
38
 
}
39
 
 
40
 
/*****************************************************************************
41
 
 * intf_sys_t: description and status of Gtk+ interface
42
 
 *****************************************************************************/
43
 
typedef struct intf_sys_s
44
 
{
45
 
    /* special actions */
46
 
    boolean_t           b_playing;
47
 
    boolean_t           b_popup_changed;                   /* display menu ? */
48
 
    boolean_t           b_window_changed;        /* window display toggled ? */
49
 
    boolean_t           b_playlist_changed;    /* playlist display toggled ? */
50
 
    boolean_t           b_slider_free;                      /* slider status */
51
 
 
52
 
    /* menus handlers */
53
 
    boolean_t           b_title_update;  /* do we need to update title menus */
54
 
    boolean_t           b_chapter_update;            /* do we need to update
55
 
                                                               chapter menus */
56
 
    boolean_t           b_angle_update;  /* do we need to update angle menus */
57
 
    boolean_t           b_audio_update;  /* do we need to update audio menus */
58
 
    boolean_t           b_spu_update;      /* do we need to update spu menus */
59
 
 
60
 
    /* windows and widgets */
61
 
    GtkWidget *         p_window;                             /* main window */
62
 
    GtkWidget *         p_popup;                               /* popup menu */
63
 
    GtkWidget *         p_playlist;                              /* playlist */
64
 
    GtkWidget *         p_modules;                         /* module manager */
65
 
    GtkWidget *         p_about;                             /* about window */
66
 
    GtkWidget *         p_fileopen;                      /* file open window */
67
 
    GtkWidget *         p_disc;                     /* disc selection window */
68
 
    GtkWidget *         p_network;                  /* network stream window */
69
 
    GtkWidget *         p_preferences;                 /* preferences window */
70
 
    GtkWidget *         p_jump;                               /* jump window */
71
 
 
72
 
    /* The slider */
73
 
    GtkFrame *          p_slider_frame;
74
 
    GtkAdjustment *     p_adj;                   /* slider adjustment object */
75
 
    float               f_adj_oldvalue;                    /* previous value */
76
 
 
77
 
    /* Playlist management */
78
 
    int                 i_playing;                 /* playlist selected item */
79
 
 
80
 
    /* The window labels for DVD mode */
81
 
    GtkLabel *          p_label_title;
82
 
    GtkLabel *          p_label_chapter;
83
 
    gint                i_part;                           /* current chapter */
84
 
 
85
 
    /* XXX: Ugly kludge, see intf_gnome.c */
86
 
    void             ( *pf_gtk_callback ) ( void );
87
 
    void             ( *pf_gdk_callback ) ( void );
88
 
 
89
 
} intf_sys_t;
90
 
 
91
 
/*****************************************************************************
92
 
 * Prototypes
93
 
 *****************************************************************************/
94
 
 
95
 
gint GtkModeManage   ( intf_thread_t * p_intf );
96
 
void GtkDisplayDate  ( GtkAdjustment *p_adj );
97
 
 
98