]> git.sesse.net Git - vlc/blob - modules/gui/qt4/dialogs/prefs_dialog.hpp
Cosmetics
[vlc] / modules / gui / qt4 / dialogs / prefs_dialog.hpp
1 /*****************************************************************************
2  * prefs_dialog.hpp : Preferences
3  ****************************************************************************
4  * Copyright (C) 2000-2005 the VideoLAN team
5  * $Id: wxwidgets.cpp 15731 2006-05-25 14:43:53Z zorglub $
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 _PREFS_DIALOG_H_
25 #define _PREFS_DIALOG_H_
26
27 #include "util/qvlcframe.hpp"
28
29 class PrefsTree;
30 class PrefsPanel;
31 class QTreeWidgetItem;
32 class QTreeWidget;
33 class QHBoxLayout;
34 class QVBoxLayout;
35 class QGroupBox;
36 class QRadioButton;
37 class QWidget;
38 class QCheckBox;
39
40 class PrefsDialog : public QVLCFrame
41 {
42     Q_OBJECT;
43 public:
44     static PrefsDialog * getInstance( intf_thread_t *_p_intf )
45     {
46         fprintf( stderr, "%p\n", _p_intf );
47         if( !instance )
48         {
49             instance = new PrefsDialog( _p_intf );
50             instance->init();
51         }
52         return instance;
53     }
54     virtual ~PrefsDialog();
55 private:
56     PrefsDialog( intf_thread_t * );
57     void init();
58
59     PrefsPanel *advanced_panel;
60     PrefsTree *advanced_tree;
61     QWidget *simple_panel;
62     QTreeWidget *simple_tree;
63     QGroupBox *types;
64     // The layout for the main part
65     QHBoxLayout *layout;
66     // Layout for the left pane
67     QVBoxLayout *vertical;
68     QRadioButton *small,*all;
69     QCheckBox *adv_chk;
70
71     static PrefsDialog *instance;
72 private slots:
73      void changePanel( QTreeWidgetItem *);
74      void setAll();
75      void setSmall();
76      void setAdvanced( bool );
77 };
78
79 #endif