diff --git a/cmainwindow.cpp b/cmainwindow.cpp
index abc769c..b7313f5 100644
--- a/cmainwindow.cpp
+++ b/cmainwindow.cpp
@@ -859,12 +859,28 @@ bool cMainWindow::runMovieEdit(cMovie *lpMovie)
void cMainWindow::onActionAdd()
{
cSearch* lpSearch = new cSearch(this);
+
+ QSettings settings;
+ qint16 iX = settings.value("search/x", QVariant::fromValue(-1)).toInt();
+ qint16 iY = settings.value("search/y", QVariant::fromValue(-1)).toInt();
+ qint16 iWidth = settings.value("search/width", QVariant::fromValue(-1)).toInt();
+ qint16 iHeight = settings.value("search/height", QVariant::fromValue(-1)).toInt();
+
+ if(iX != -1 && iY != -1)
+ lpSearch->move(iX, iY);
+ if(iWidth != -1 && iHeight != -1)
+ lpSearch->resize(iWidth, iHeight);
+
if(lpSearch->exec() == QDialog::Rejected)
{
delete lpSearch;
return;
}
+ settings.setValue("search/width", QVariant::fromValue(lpSearch->size().width()));
+ settings.setValue("search/height", QVariant::fromValue(lpSearch->size().height()));
+ settings.setValue("search/x", QVariant::fromValue(lpSearch->x()));
+ settings.setValue("search/y", QVariant::fromValue(lpSearch->y()));
qint32 id = lpSearch->id();
QString szPlaceholder = lpSearch->placeholderName();
@@ -937,12 +953,28 @@ void cMainWindow::onActionAdd()
void cMainWindow::onActionMovieAdd()
{
cMovieSearch* lpSearch = new cMovieSearch(this);
+
+ QSettings settings;
+ qint16 iX = settings.value("movieSearch/x", QVariant::fromValue(-1)).toInt();
+ qint16 iY = settings.value("movieSearch/y", QVariant::fromValue(-1)).toInt();
+ qint16 iWidth = settings.value("movieSearch/width", QVariant::fromValue(-1)).toInt();
+ qint16 iHeight = settings.value("movieSearch/height", QVariant::fromValue(-1)).toInt();
+
+ if(iX != -1 && iY != -1)
+ lpSearch->move(iX, iY);
+ if(iWidth != -1 && iHeight != -1)
+ lpSearch->resize(iWidth, iHeight);
+
if(lpSearch->exec() == QDialog::Rejected)
{
delete lpSearch;
return;
}
+ settings.setValue("movieSearch/width", QVariant::fromValue(lpSearch->size().width()));
+ settings.setValue("movieSearch/height", QVariant::fromValue(lpSearch->size().height()));
+ settings.setValue("movieSearch/x", QVariant::fromValue(lpSearch->x()));
+ settings.setValue("movieSearch/y", QVariant::fromValue(lpSearch->y()));
qint32 id = lpSearch->id();
QString szPlaceholder = lpSearch->placeholderName();
diff --git a/cmoviesearch.cpp b/cmoviesearch.cpp
index 7ed6958..dfdfe77 100644
--- a/cmoviesearch.cpp
+++ b/cmoviesearch.cpp
@@ -17,6 +17,8 @@ cMovieSearch::cMovieSearch(QWidget *parent) :
ui->setupUi(this);
ui->m_lpSearchButton->setEnabled(false);
ui->m_lpTabWidget->setCurrentIndex(0);
+
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
}
cMovieSearch::~cMovieSearch()
@@ -102,3 +104,44 @@ qint16 cMovieSearch::year()
{
return(ui->m_lpYear->value());
}
+
+void cMovieSearch::on_m_lpResults_clicked(const QModelIndex &index)
+{
+ setButtonBox();
+}
+
+void cMovieSearch::on_m_lpPlaceholderName_textChanged(const QString &arg1)
+{
+ setButtonBox();
+}
+
+void cMovieSearch::on_m_lpYear_valueChanged(int arg1)
+{
+ setButtonBox();
+}
+
+void cMovieSearch::setButtonBox()
+{
+ if(ui->m_lpTabWidget->currentIndex() == 0)
+ {
+ if(ui->m_lpResults->selectedItems().count())
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
+ else
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ if(ui->m_lpPlaceholderName->text().isEmpty())
+ {
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ if(ui->m_lpYear->value() == 0)
+ {
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
+}
diff --git a/cmoviesearch.h b/cmoviesearch.h
index 882bf19..2e29268 100644
--- a/cmoviesearch.h
+++ b/cmoviesearch.h
@@ -22,12 +22,18 @@ public:
qint16 year();
private slots:
- void on_m_lpSearchButton_clicked();
+ void on_m_lpSearchButton_clicked();
- void on_m_lpSearch_textChanged(const QString &arg1);
+ void on_m_lpSearch_textChanged(const QString &arg1);
+ void on_m_lpPlaceholderName_textChanged(const QString &arg1);
+ void on_m_lpYear_valueChanged(int arg1);
+
+ void on_m_lpResults_clicked(const QModelIndex &index);
private:
Ui::cMovieSearch *ui;
+
+ void setButtonBox();
};
#endif // CMOVIESEARCH_H
diff --git a/cmoviesearch.ui b/cmoviesearch.ui
index 23a4efb..3c2087d 100644
--- a/cmoviesearch.ui
+++ b/cmoviesearch.ui
@@ -27,7 +27,7 @@
-
- 1
+ 0
@@ -142,6 +142,14 @@
+
+ m_lpSearch
+ m_lpSearchButton
+ m_lpResults
+ m_lpTabWidget
+ m_lpPlaceholderName
+ m_lpYear
+
diff --git a/csearch.cpp b/csearch.cpp
index 59c4ffc..1fea3b3 100644
--- a/csearch.cpp
+++ b/csearch.cpp
@@ -16,6 +16,8 @@ cSearch::cSearch(QWidget *parent) :
ui->setupUi(this);
ui->m_lpSearchButton->setEnabled(false);
ui->m_lpTabWidget->setCurrentIndex(0);
+
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
}
cSearch::~cSearch()
@@ -86,3 +88,44 @@ qint16 cSearch::year()
{
return(ui->m_lpYear->value());
}
+
+void cSearch::on_m_lpResults_clicked(const QModelIndex &index)
+{
+ setButtonBox();
+}
+
+void cSearch::on_m_lpPlaceholderName_textChanged(const QString& /*arg1*/)
+{
+ setButtonBox();
+}
+
+void cSearch::on_m_lpYear_valueChanged(int /*arg1*/)
+{
+ setButtonBox();
+}
+
+void cSearch::setButtonBox()
+{
+ if(ui->m_lpTabWidget->currentIndex() == 0)
+ {
+ if(ui->m_lpResults->selectedItems().count())
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
+ else
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ if(ui->m_lpPlaceholderName->text().isEmpty())
+ {
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ if(ui->m_lpYear->value() == 0)
+ {
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
+ return;
+ }
+
+ ui->m_lpButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
+}
diff --git a/csearch.h b/csearch.h
index 00561c2..087b357 100644
--- a/csearch.h
+++ b/csearch.h
@@ -22,11 +22,17 @@ public:
qint16 year();
private slots:
- void on_m_lpSearchButton_clicked();
- void on_m_lpSearch_textChanged(const QString &arg1);
+ void on_m_lpSearchButton_clicked();
+ void on_m_lpSearch_textChanged(const QString &arg1);
+
+ void on_m_lpResults_clicked(const QModelIndex &index);
+ void on_m_lpPlaceholderName_textChanged(const QString &arg1);
+ void on_m_lpYear_valueChanged(int arg1);
private:
Ui::cSearch *ui;
+
+ void setButtonBox();
};
#endif // CSEARCH_H
diff --git a/csearch.ui b/csearch.ui
index 8ed6d25..d2ea5d4 100644
--- a/csearch.ui
+++ b/csearch.ui
@@ -142,6 +142,14 @@
+
+ m_lpSearch
+ m_lpSearchButton
+ m_lpResults
+ m_lpTabWidget
+ m_lpPlaceholderName
+ m_lpYear
+