1 /*****************************************************************************
2 * infopanels.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_
43 #define setSpinBounds( spinbox ) { \
44 spinbox->setRange( 0, INT_MAX ); \
45 spinbox->setAccelerated( true ) ; \
46 spinbox->setAlignment( Qt::AlignRight ); \
47 spinbox->setSpecialValueText(""); }
50 class QTreeWidgetItem;
55 class MetaPanel: public QWidget
59 MetaPanel( QWidget *, intf_thread_t * );
64 void setEditMode( bool );
67 input_item_t *p_input;
68 intf_thread_t *p_intf;
71 QLineEdit *title_text;
72 QLineEdit *artist_text;
73 QLineEdit *genre_text;
74 QLineEdit *copyright_text;
75 QLineEdit *collection_text;
76 QLineEdit *seqnum_text;
77 QLineEdit *description_text;
78 // QSpinBox *rating_text;
80 // QLineEdit *setting_text;
81 QLineEdit *language_text;
82 QLineEdit *nowplaying_text;
83 QLineEdit *publisher_text;
84 // QLineEdit *encodedby_text;
88 void update( input_item_t * );
95 void uriSet( QString );
99 class ExtraMetaPanel: public QWidget
103 ExtraMetaPanel( QWidget *, intf_thread_t * );
104 virtual ~ExtraMetaPanel() {};
106 intf_thread_t *p_intf;
107 QTreeWidget *extraMetaTree;
109 void update( input_item_t * );
113 class InputStatsPanel: public QWidget
117 InputStatsPanel( QWidget *, intf_thread_t * );
118 virtual ~InputStatsPanel();
120 intf_thread_t *p_intf;
122 QTreeWidget *StatsTree;
123 QTreeWidgetItem *input;
124 QTreeWidgetItem *read_media_stat;
125 QTreeWidgetItem *input_bitrate_stat;
126 QTreeWidgetItem *demuxed_stat;
127 QTreeWidgetItem *stream_bitrate_stat;
129 QTreeWidgetItem *video;
130 QTreeWidgetItem *vdecoded_stat;
131 QTreeWidgetItem *vdisplayed_stat;
132 QTreeWidgetItem *vlost_frames_stat;
133 QTreeWidgetItem *vfps_stat;
135 QTreeWidgetItem *streaming;
136 QTreeWidgetItem *send_stat;
137 QTreeWidgetItem *send_bytes_stat;
138 QTreeWidgetItem *send_bitrate_stat;
140 QTreeWidgetItem *audio;
141 QTreeWidgetItem *adecoded_stat;
142 QTreeWidgetItem *aplayed_stat;
143 QTreeWidgetItem *alost_stat;
146 void update( input_item_t * );
150 class InfoPanel: public QWidget
154 InfoPanel( QWidget *, intf_thread_t * );
155 virtual ~InfoPanel();
157 intf_thread_t *p_intf;
158 QTreeWidget *InfoTree;
160 void update( input_item_t * );
163 class ArtCover : public QLabel
166 void mouseDoubleClickEvent( QMouseEvent *event )
168 fprintf(stderr, "**************************" );