added movie discover
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#include "cdiscover.h"
|
||||
#include "ui_cdiscover.h"
|
||||
|
||||
|
||||
cDiscover::cDiscover(QWidget *parent) :
|
||||
QDialog(parent),
|
||||
ui(new Ui::cDiscover)
|
||||
|
||||
+3
-1
@@ -1,8 +1,10 @@
|
||||
#ifndef CDISCOVER_H
|
||||
#define CDISCOVER_H
|
||||
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
|
||||
namespace Ui {
|
||||
class cDiscover;
|
||||
}
|
||||
@@ -16,7 +18,7 @@ public:
|
||||
~cDiscover();
|
||||
|
||||
private:
|
||||
Ui::cDiscover *ui;
|
||||
Ui::cDiscover* ui;
|
||||
};
|
||||
|
||||
#endif // CDISCOVER_H
|
||||
|
||||
+174
-6
@@ -1,21 +1,189 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<author/>
|
||||
<comment/>
|
||||
<exportmacro/>
|
||||
<class>cMovieDetails</class>
|
||||
<widget class="QWidget" name="cMovieDetails">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>400</width>
|
||||
<height>300</height>
|
||||
<width>781</width>
|
||||
<height>596</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_6" stretch="3,1">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QLineEdit" name="m_lpName">
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Year:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDateEdit" name="m_lpFirstAired">
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="m_lpDetailsBanner">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>310</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::Box</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QScrollArea" name="scrollArea">
|
||||
<property name="widgetResizable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<widget class="QWidget" name="scrollAreaWidgetContents">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>761</width>
|
||||
<height>310</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
||||
<item>
|
||||
<widget class="QTextEdit" name="m_lpDetailsOverview">
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4" stretch="2,1">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<item>
|
||||
<widget class="cVerticalLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Actors</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="m_lpDetailsActors">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<attribute name="headerVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string notr="true">1</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string notr="true">2</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||
<item>
|
||||
<widget class="cVerticalLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Genre</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="m_lpDetailsGenre">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<attribute name="headerVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string notr="true">1</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string notr="true">2</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<pixmapfunction/>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>cVerticalLabel</class>
|
||||
<extends>QLabel</extends>
|
||||
<header>cverticallabel.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
||||
+53
-5
@@ -4,16 +4,17 @@
|
||||
#include "ccheckboxitemdelegate.h"
|
||||
#include "cthemoviedbv3.h"
|
||||
|
||||
#include "cmovie.h"
|
||||
|
||||
#include <QStandardItem>
|
||||
#include <QMap>
|
||||
#include <QList>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
cMovieDiscover::cMovieDiscover(QWidget *parent) :
|
||||
|
||||
cMovieDiscover::cMovieDiscover(const cMovieList movieList, QWidget *parent) :
|
||||
QDialog(parent),
|
||||
ui(new Ui::cMovieDiscover)
|
||||
ui(new Ui::cMovieDiscover),
|
||||
m_movieList(movieList)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
@@ -24,6 +25,13 @@ cMovieDiscover::cMovieDiscover(QWidget *parent) :
|
||||
ui->m_lpGenres->setItemDelegate(new cCheckBoxItemDelegate());
|
||||
ui->m_lpGenres->setWrapping(true);
|
||||
|
||||
m_lpMoviesModel = new QStandardItemModel(0, 1);
|
||||
ui->m_lpMovies->setModel(m_lpMoviesModel);
|
||||
|
||||
headerLabels = QStringList() << tr("Title") << tr("Year");
|
||||
m_lpMoviesModel->setHorizontalHeaderLabels(headerLabels);
|
||||
|
||||
|
||||
connect(ui->m_lpVoting, &QxtSpanSlider::spanChanged, this, &cMovieDiscover::spanChanged);
|
||||
|
||||
ui->m_lpVoting->setRange(0, 100);
|
||||
@@ -80,13 +88,53 @@ void cMovieDiscover::on_m_lpDiscover_clicked()
|
||||
genres.append(lpItem->data().toInt());
|
||||
}
|
||||
|
||||
setCursor(Qt::WaitCursor);
|
||||
|
||||
cTheMovieDBV3 movieDB3;
|
||||
QList<cMovie*> movieList = movieDB3.discoverMovie(szText, bAdult, iYear, genres, voteMin, voteMax, "de-DE");
|
||||
|
||||
m_lp
|
||||
m_lpMoviesModel->clear();
|
||||
|
||||
QStringList headerLabels = QStringList() << tr("Title") << tr("Year");
|
||||
m_lpMoviesModel->setHorizontalHeaderLabels(headerLabels);
|
||||
|
||||
for(int x = 0; x < movieList.count();x++)
|
||||
{
|
||||
cMovie* lpMovie = movieList[x];
|
||||
|
||||
if(m_movieList.find(lpMovie->movieID()))
|
||||
continue;
|
||||
QList<QStandardItem*> items;
|
||||
|
||||
items.append(new QStandardItem(lpMovie->movieTitle()));
|
||||
items.append(new QStandardItem(QString::number(lpMovie->releaseDate().year())));
|
||||
items[0]->setData(QVariant::fromValue(lpMovie));
|
||||
items[1]->setData(QVariant::fromValue(lpMovie));
|
||||
items[0]->setCheckable(true);
|
||||
|
||||
m_lpMoviesModel->appendRow(items);
|
||||
}
|
||||
|
||||
for(int x = 0;x < headerLabels.count();x++)
|
||||
ui->m_lpMovies->resizeColumnToContents(x);
|
||||
|
||||
setCursor(Qt::ArrowCursor);
|
||||
}
|
||||
|
||||
void cMovieDiscover::on_m_lpYearEnable_clicked(bool checked)
|
||||
{
|
||||
ui->m_lpYear->setEnabled(checked);
|
||||
}
|
||||
|
||||
void cMovieDiscover::on_m_lpMovies_clicked(const QModelIndex &index)
|
||||
{
|
||||
QStandardItem* lpItem = m_lpMoviesModel->itemFromIndex(index);
|
||||
cMovie* lpMovie = lpItem->data().value<cMovie*>();
|
||||
|
||||
if(lpMovie->cast().isEmpty())
|
||||
{
|
||||
cTheMovieDBV3 theMovieDB;
|
||||
theMovieDB.loadCastMovie(lpMovie);
|
||||
}
|
||||
ui->m_lpMovieDetails->setMovie(lpMovie);
|
||||
}
|
||||
|
||||
+7
-1
@@ -2,6 +2,8 @@
|
||||
#define CMOVIEDISCOVER_H
|
||||
|
||||
|
||||
#include "cmovie.h"
|
||||
|
||||
#include <QDialog>
|
||||
#include <QStandardItemModel>
|
||||
|
||||
@@ -15,7 +17,7 @@ class cMovieDiscover : public QDialog
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit cMovieDiscover(QWidget *parent = 0);
|
||||
explicit cMovieDiscover(const cMovieList movieList, QWidget *parent = 0);
|
||||
~cMovieDiscover();
|
||||
|
||||
private slots:
|
||||
@@ -23,9 +25,13 @@ private slots:
|
||||
void on_m_lpDiscover_clicked();
|
||||
void on_m_lpYearEnable_clicked(bool checked);
|
||||
|
||||
void on_m_lpMovies_clicked(const QModelIndex &index);
|
||||
|
||||
private:
|
||||
Ui::cMovieDiscover* ui;
|
||||
QStandardItemModel* m_lpGenresModel;
|
||||
QStandardItemModel* m_lpMoviesModel;
|
||||
cMovieList m_movieList;
|
||||
};
|
||||
|
||||
#endif // CMOVIEDISCOVER_H
|
||||
|
||||
+26
-8
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>868</width>
|
||||
<height>499</height>
|
||||
<width>900</width>
|
||||
<height>500</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -15,7 +15,7 @@
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3" stretch="1,2">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3" stretch="1,10">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
@@ -54,6 +54,9 @@
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="m_lpYear">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>1800</number>
|
||||
</property>
|
||||
@@ -135,12 +138,16 @@
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4" stretch="1,2">
|
||||
<item>
|
||||
<widget class="QTreeView" name="m_lpMovies"/>
|
||||
<widget class="QTreeView" name="m_lpMovies">
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::NoEditTriggers</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QScrollArea" name="m_lpMovieDetails">
|
||||
<widget class="QScrollArea" name="m_lpMovieDetailsScroller">
|
||||
<property name="widgetResizable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
@@ -149,10 +156,15 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>418</width>
|
||||
<height>283</height>
|
||||
<width>579</width>
|
||||
<height>284</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="cMovieDetails" name="m_lpMovieDetails" native="true"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -178,6 +190,12 @@
|
||||
<extends>QSlider</extends>
|
||||
<header>qxtspanslider.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>cMovieDetails</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>cmoviedetails.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections>
|
||||
|
||||
Reference in New Issue
Block a user