1 /*****************************************************************************
2 * info_panels.hpp : Panels for the information dialogs
3 ****************************************************************************
4 * Copyright (C) 2006-2007 the VideoLAN team
7 * Authors: Clément Stenac <zorglub@videolan.org>
8 * Jean-Baptiste Kempf <jb@videolan.org>
9 * Ilkka Ollakka <ileoo@videolan.org>
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
24 *****************************************************************************/
26 #ifndef _INFOPANELS_H_
27 #define _INFOPANELS_H_
33 #include <vlc_common.h>
40 #define setSpinBounds( spinbox ) { \
41 spinbox->setRange( 0, INT_MAX ); \
42 spinbox->setAccelerated( true ) ; \
43 spinbox->setAlignment( Qt::AlignRight ); \
44 spinbox->setSpecialValueText(""); }
47 class QTreeWidgetItem;
57 class MetaPanel: public QWidget
61 MetaPanel( QWidget *, struct intf_thread_t * );
65 void setEditMode( bool );
68 input_item_t *p_input;
69 struct intf_thread_t *p_intf;
72 QLineEdit *title_text;
73 QLineEdit *artist_text;
74 QLineEdit *genre_text;
75 QLineEdit *copyright_text;
76 QLineEdit *collection_text;
77 QLineEdit *seqnum_text;
78 QLineEdit *seqtot_text;
80 QTextEdit *description_text;
81 // QSpinBox *rating_text;
83 // QLineEdit *setting_text;
84 QLineEdit *language_text;
85 QLineEdit *nowplaying_text;
86 QLineEdit *publisher_text;
87 QLineEdit *encodedby_text;
88 CoverArtLabel *art_cover;
93 QPushButton *fingerprintButton;
96 void update( input_item_t * );
99 void fingerprintUpdate( input_item_t * );
102 void enterEditMode();
105 void uriSet( const QString& );
109 class ExtraMetaPanel: public QWidget
113 ExtraMetaPanel( QWidget * );
115 QTreeWidget *extraMetaTree;
117 void update( input_item_t * );
121 class InputStatsPanel: public QWidget
125 InputStatsPanel( QWidget * );
127 virtual void hideEvent( QHideEvent * );
129 QTreeWidget *StatsTree;
130 QTreeWidgetItem *input;
131 QTreeWidgetItem *read_media_stat;
132 QTreeWidgetItem *input_bitrate_stat;
133 QTreeWidgetItem *input_bitrate_graph;
134 QTreeWidgetItem *demuxed_stat;
135 QTreeWidgetItem *stream_bitrate_stat;
136 QTreeWidgetItem *corrupted_stat;
137 QTreeWidgetItem *discontinuity_stat;
139 QTreeWidgetItem *video;
140 QTreeWidgetItem *vdecoded_stat;
141 QTreeWidgetItem *vdisplayed_stat;
142 QTreeWidgetItem *vlost_frames_stat;
143 QTreeWidgetItem *vfps_stat;
145 QTreeWidgetItem *streaming;
146 QTreeWidgetItem *send_stat;
147 QTreeWidgetItem *send_bytes_stat;
148 QTreeWidgetItem *send_bitrate_stat;
150 QTreeWidgetItem *audio;
151 QTreeWidgetItem *adecoded_stat;
152 QTreeWidgetItem *aplayed_stat;
153 QTreeWidgetItem *alost_stat;
155 VLCStatsView *statsView;
157 void update( input_item_t * );
161 class InfoPanel: public QWidget
165 InfoPanel( QWidget * );
167 QTreeWidget *InfoTree;
169 void update( input_item_t * );