1 /*  BMP - Cross-platform multimedia player
2  *  Copyright (C) 2003-2004  BMP development team.
3  *
4  *  Based on XMMS:
5  *  Copyright (C) 1998-2003  XMMS development team.
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation; under version 3 of the License.
10  *
11  *  This program 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, see <http://www.gnu.org/licenses>.
18  *
19  *  The Audacious team does not consider modular code linking to
20  *  Audacious or using our public API to be a derived work.
21  */
22 
23 #ifndef SKINS_UI_MAIN_H
24 #define SKINS_UI_MAIN_H
25 
26 #include <gtk/gtk.h>
27 
28 /* yes, main window size is fixed */
29 #define MAINWIN_WIDTH            (int)275
30 #define MAINWIN_HEIGHT           (int)116
31 #define MAINWIN_SHADED_WIDTH     MAINWIN_WIDTH
32 #define MAINWIN_SHADED_HEIGHT    (int)14
33 
34 class Button;
35 class MenuRow;
36 class SkinnedVis;
37 class SmallVis;
38 class TextBox;
39 class Window;
40 
41 extern Window * mainwin;
42 
43 extern Button * mainwin_eq, * mainwin_pl;
44 extern TextBox * mainwin_info;
45 extern MenuRow * mainwin_menurow;
46 
47 extern SkinnedVis * mainwin_vis;
48 extern SmallVis * mainwin_svis;
49 
50 void mainwin_create ();
51 void mainwin_unhook ();
52 
53 void mainwin_adjust_volume_motion (int v);
54 void mainwin_adjust_volume_release ();
55 void mainwin_adjust_balance_motion (int b);
56 void mainwin_adjust_balance_release ();
57 void mainwin_set_volume_slider (int percent);
58 void mainwin_set_balance_slider (int percent);
59 void mainwin_set_volume_diff (int diff);
60 
61 void mainwin_refresh_hints ();
62 void mainwin_playback_begin ();
63 
64 void mainwin_update_song_info ();
65 void mainwin_show_status_message (const char * message);
66 
67 void mainwin_drag_data_received (GtkWidget * widget,
68  GdkDragContext * context, int x, int y, GtkSelectionData * selection_data,
69  unsigned info, unsigned time, void * data);
70 
71 bool change_timer_mode_cb (GdkEventButton * event);
72 
73 #endif /* SKINS_UI_MAIN_H */
74