#include <QWizard>
#include <QVBoxLayout>
+#include <QItemDelegate>
+#include <QPainter>
+
+#include <KIcon>
#include <KDebug>
#include "ui_wizardstandard_ui.h"
#include "ui_wizardextra_ui.h"
+#include "ui_wizardcheck_ui.h"
+#include "ui_wizardmltcheck_ui.h"
+#include "ui_wizardcapture_ui.h"
+
+class WizardDelegate: public QItemDelegate
+{
+public:
+ explicit WizardDelegate(QAbstractItemView* parent = 0)
+ : QItemDelegate(parent)
+ {
+ }
+ void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const {
+ if (index.column() == 1) {
+ painter->save();
+ QStyleOptionViewItemV4 opt(option);
+ QStyle *style = opt.widget ? opt.widget->style() : QApplication::style();
+ const int textMargin = style->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1;
+ style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, opt.widget);
+
+ QFont font = painter->font();
+ font.setBold(true);
+ painter->setFont(font);
+ QRect r1 = option.rect;
+ r1.adjust(0, textMargin, 0, - textMargin);
+ int mid = (int)((r1.height() / 2));
+ r1.setBottom(r1.y() + mid);
+ QRect r2 = option.rect;
+ r2.setTop(r2.y() + mid);
+ painter->drawText(r1, Qt::AlignLeft | Qt::AlignBottom , index.data().toString());
+ font.setBold(false);
+ painter->setFont(font);
+ QString subText = index.data(Qt::UserRole).toString();
+ painter->drawText(r2, Qt::AlignLeft | Qt::AlignVCenter , subText);
+ painter->restore();
+ } else {
+ QItemDelegate::paint(painter, option, index);
+ }
+ }
+};
-class Wizard : public QWizard {
+class Wizard : public QWizard
+{
Q_OBJECT
public:
- Wizard(QWidget * parent = 0);
- void installExtraMimes(QString baseName, QStringList globs);
+ explicit Wizard(bool upgrade, QWidget * parent = 0);
+ void installExtraMimes(const QString &baseName, const QStringList &globs);
void runUpdateMimeDatabase();
void adjustSettings();
bool isOk() const;
private:
Ui::WizardStandard_UI m_standard;
Ui::WizardExtra_UI m_extra;
+ Ui::WizardMltCheck_UI m_mltCheck;
+ Ui::WizardCapture_UI m_capture;
+ Ui::WizardCheck_UI m_check;
QVBoxLayout *m_startLayout;
bool m_systemCheckIsOk;
- QStringList m_dvProfiles;
- QStringList m_hdvProfiles;
- QStringList m_otherProfiles;
- QMap <QString, QString> m_profilesInfo;
+ QLabel *m_welcomeLabel;
+ QMap <QString, QString> m_dvProfiles;
+ QMap <QString, QString> m_hdvProfiles;
+ QMap <QString, QString> m_otherProfiles;
+ void slotCheckPrograms();
+ void checkMltComponents();
+ void checkMissingCodecs();
+ KIcon m_okIcon;
+ KIcon m_badIcon;
private slots:
void slotCheckThumbs();
void slotCheckStandard();
void slotCheckSelectedItem();
void slotCheckMlt();
+ void slotShowWebInfos();
+ void slotDetectWebcam();
+ void slotUpdateCaptureParameters();
+ void slotSaveCaptureFormat();
+ void slotUpdateDecklinkDevice(int captureCard);
+ void slotOpenManual();
};
#endif