summaryrefslogtreecommitdiffstats
path: root/archiveiteminfoedit.h
blob: 98a1736a7edd36e5a79405946f19fc682a9b59ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
  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 the Free Software Foundation; either version
  2 of the License, or (at your option) any later version.
*/

#ifndef ARCHIVEITEMINFOEDIT_H
#define ARCHIVEITEMINFOEDIT_H

#include <QWidget>

class QTreeView;
class QComboBox;
class QSpinBox;
class QLineEdit;
class FileInfoModel;
class ActorWidget;
class ListModel;
class QModelIndex;

class ArchiveItemInfoEdit : public QWidget {
	Q_OBJECT
	public:
		explicit ArchiveItemInfoEdit(QWidget *parent = 0);
		void setup(const QModelIndex &idx);
		const QString genre() const;
		const QString title() const;
		const QStringList actors() const;
		int quality() const;
		int dvd() const;
		int series() const;
		int part() const;

	public slots:
		void setGenre(const QString &genre);
		void setTitle(const QString &title);
		void setQuality(int quality);
		void setDvd(int dvd);
		void setSeries(int series);
		void setPart(int part);

	private slots:
		void addActor(const QString &actor);

	private:
		QTreeView *mInfoView;
		QComboBox *mGenre;
		QSpinBox *mQuality;
		QSpinBox *mDvd;
		QSpinBox *mSeries;
		QSpinBox *mPart;
		QLineEdit *mTitle;
		ActorWidget *mActorView;
		FileInfoModel *mInfoModel;
		ListModel *mGenreModel;
		ListModel *mActorModel;
};

#endif