]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/dialogs/help.hpp
Fix Bookmarks: missing button, missing tooltips, wrong resize on startup.
[vlc] / modules / gui / qt4 / dialogs / help.hpp
index 050cc9b43ff6f19a31955faf347e0aaee08cb791..d1c18891c0855690eb06d1ec55cbc50a09673865 100644 (file)
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
 
 #ifndef _HELP_DIALOG_H_
 #define _HELP_DIALOG_H_
 
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "qt4.hpp"
+
 #include "util/qvlcframe.hpp"
 
+class QPushButton;
+class QTextBrowser;
+class QLabel;
+class QEvent;
+class QPushButton;
+
 class HelpDialog : public QVLCFrame
 {
     Q_OBJECT;
@@ -32,36 +45,79 @@ public:
     static HelpDialog * getInstance( intf_thread_t *p_intf )
     {
         if( !instance)
-            instance = new HelpDialog( p_intf);
+            instance = new HelpDialog( p_intf );
         return instance;
     }
+    static void killInstance()
+    { if( instance ) delete instance; instance = NULL;}
     virtual ~HelpDialog();
 
 private:
-    HelpDialog( intf_thread_t *);
+    HelpDialog( intf_thread_t * );
     static HelpDialog *instance;
 public slots:
     void close();
 };
 
 
-class AboutDialog : public QVLCFrame
+class AboutDialog : public QVLCDialog
 {
     Q_OBJECT;
 public:
     static AboutDialog * getInstance( intf_thread_t *p_intf )
     {
         if( !instance)
-            instance = new AboutDialog( p_intf);
+            instance = new AboutDialog( (QWidget *)p_intf->p_sys->p_mi,
+                                        p_intf );
         return instance;
     }
-    virtual ~AboutDialog();
 
 private:
-    AboutDialog( intf_thread_t *);
+    AboutDialog( QWidget *, intf_thread_t * );
+    virtual ~AboutDialog();
+
     static AboutDialog *instance;
+
 public slots:
     void close();
 };
 
+#ifdef UPDATE_CHECK
+
+static int UDOkEvent = QEvent::User + DialogEventType + 21;
+static int UDErrorEvent = QEvent::User + DialogEventType + 22;
+
+class UpdateDialog : public QVLCFrame
+{
+    Q_OBJECT;
+public:
+    static UpdateDialog * getInstance( intf_thread_t *p_intf )
+    {
+        if( !instance )
+            instance = new UpdateDialog( p_intf );
+        return instance;
+    }
+    static void killInstance()
+    { if( instance ) delete instance; instance = NULL;}
+
+    void updateNotify( bool );
+
+private:
+    UpdateDialog( intf_thread_t * );
+    virtual ~UpdateDialog();
+
+    static UpdateDialog *instance;
+
+    update_t *p_update;
+    QPushButton *updateButton;
+    QLabel *updateLabel;
+    void customEvent( QEvent * );
+    bool b_checked;
+
+private slots:
+    void close();
+    void UpdateOrDownload();
+};
+#endif
+
 #endif