///////////////////////////////////////////////////////////////////////////////
// LameXP - Audio Encoder Front-End
-// Copyright (C) 2004-2011 LoRd_MuldeR <MuldeR2@GMX.de>
+// Copyright (C) 2004-2013 LoRd_MuldeR <MuldeR2@GMX.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
#pragma once
-#include <QMessageBox>
+#include <QDialog>
+//UIC forward declartion
+namespace Ui {
+ class AboutDialog;
+}
+
+//Class declarations
+class QLabel;
+class QPixmap;
+class QTimer;
class SettingsModel;
-class AboutDialog : public QMessageBox
+//AboutDialog class
+class AboutDialog : public QDialog
{
Q_OBJECT
public slots:
int exec();
void enableButtons(void);
- void openLicenseText(void);
- void showMoreAbout(void);
+ void openURL(const QString &url);
+ void gotoLicenseTab(void);
void showAboutQt(void);
- void showAboutContributors(void);
void moveDisque(void);
+ void tabChanged(int index);
+ void adjustSize(void);
+ void geometryUpdated(void);
protected:
- void showEvent(QShowEvent *e);
+ virtual void showEvent(QShowEvent *e);
+ virtual void closeEvent(QCloseEvent *e);
bool eventFilter(QObject *obj, QEvent *event);
private:
+ Ui::AboutDialog *ui; //for Qt UIC
+
bool m_firstShow;
SettingsModel *m_settings;
+ QMap<QWidget*,bool> *m_initFlags;
+ int m_lastTab;
+
QLabel *m_disque;
QTimer * m_disqueTimer;
bool m_disqueFlags[2];
+ QPoint m_disquePos;
+ QRect m_disqueBound;
+ double m_discOpacity;
QPixmap *m_cartoon[4];
bool m_rotateNext;
__int64 m_disqueDelay;
+ void initInformationTab(void);
+ void initContributorsTab(void);
+ void initSoftwareTab(void);
+ void initLicenseTab(void);
+
QString makeToolText(const QString &toolName, const QString &toolBin, const QString &toolVerFmt, const QString &toolLicense, const QString &toolWebsite, const QString &extraInfo = QString());
bool playResoureSound(const QString &library, const unsigned long soundId, const bool async);
};