]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/dialogs/mediainfo.hpp
Drop trailing semicolons
[vlc] / modules / gui / qt4 / dialogs / mediainfo.hpp
index 76ad847d2fab4d0b492278867c8494512162a02a..469ae6718876c75c23c990f975a2f2e9b5736974 100644 (file)
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  ******************************************************************************/
 
-#ifndef _MEDIAINFO_DIALOG_H_
-#define _MEDIAINFO_DIALOG_H_
+#ifndef QVLC_MEDIAINFO_DIALOG_H_
+#define QVLC_MEDIAINFO_DIALOG_H_ 1
 
 #include "util/qvlcframe.hpp"
 #include "components/info_panels.hpp"
+#include "util/singleton.hpp"
 
 class QTabWidget;
-class InfoTab;
-class QLineEdit;
 
-class MediaInfoDialog : public QVLCFrame
+class MediaInfoDialog : public QVLCFrame, public Singleton<MediaInfoDialog>
 {
-    Q_OBJECT;
+    Q_OBJECT
 public:
     MediaInfoDialog( intf_thread_t *,
-                     input_item_t *,
-                     bool stats = true,
-                     bool mainInput = false );
-
-    static MediaInfoDialog * getInstance( intf_thread_t *p_intf )
-    {
-        if( !instance) instance = new MediaInfoDialog( p_intf,
-                                                       NULL,
-                                                       true,
-                                                       true );
-        return instance;
-    }
-
-    static void killInstance()
-    {
-        if( instance ) delete instance;
-        instance= NULL;
-    }
-
-    virtual ~MediaInfoDialog();
+                     input_item_t * input = NULL );
 
     void showTab( int );
 #if 0
     void setInput( input_item_t * );
 #endif
-    bool b_need_update;
 
 private:
-    input_item_t *p_item;
-    static MediaInfoDialog *instance;
+    virtual ~MediaInfoDialog();
 
-    int i_runs;
-    bool mainInput;
-    bool stats;
-    bool b_cleaned;
+    bool isMainInputInfo;
+
+    QTabWidget *infoTabW;
 
-    QTabWidget *IT;
     InputStatsPanel *ISP;
     MetaPanel *MP;
     InfoPanel *IP;
     ExtraMetaPanel *EMP;
 
     QPushButton *saveMetaButton;
-    QLineEdit *uriLine;
-
-public slots:
-    void update( input_thread_t * );
-    void update( input_item_t *, bool, bool );
 
 private slots:
-    void close();
-    void clear();
+    void updateAllTabs( input_item_t * );
+    void clearAllTabs();
+
+    virtual void close();
+
     void saveMeta();
-    void showMetaSaveButton();
     void updateButtons( int i_tab );
+
+    friend class    Singleton<MediaInfoDialog>;
 };
 
 #endif