[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kphotoalbum/category_settings_fix] Settings: Disable adding new categories for dirty databases,
From:       Tobias Leupold <tobias.leupold () web ! de>
Date:       2016-02-01 23:07:14
Message-ID: E1aQNYw-0000cj-Fr () scm ! kde ! org
[Download RAW message or body]

Git commit f06ecc63b49537a863fe1dc6e28706950f3a228b by Tobias Leupold.
Committed on 01/02/2016 at 23:06.
Pushed by tleupold into branch 'category_settings_fix'.

Disable adding new categories for dirty databases, as they would be added with the \
default name but could not be renamed afterwards.

M  +9    -4    Settings/CategoryPage.cpp
M  +1    -0    Settings/CategoryPage.h

http://commits.kde.org/kphotoalbum/f06ecc63b49537a863fe1dc6e28706950f3a228b

diff --git a/Settings/CategoryPage.cpp b/Settings/CategoryPage.cpp
index 6387c3f..f7e8b9d 100644
--- a/Settings/CategoryPage.cpp
+++ b/Settings/CategoryPage.cpp
@@ -83,9 +83,9 @@ Settings::CategoryPage::CategoryPage(QWidget* parent) : \
QWidget(parent)  QHBoxLayout* newDeleteRenameLayout = new QHBoxLayout;
     categorySideLayout->addLayout(newDeleteRenameLayout);
 
-    QPushButton* newCategoryButton = new QPushButton(i18n("New"));
-    connect(newCategoryButton, SIGNAL(clicked()), this, SLOT(newCategory()));
-    newDeleteRenameLayout->addWidget(newCategoryButton);
+    m_newCategoryButton = new QPushButton(i18n("New"));
+    connect(m_newCategoryButton, SIGNAL(clicked()), this, SLOT(newCategory()));
+    newDeleteRenameLayout->addWidget(m_newCategoryButton);
 
     m_delItem = new QPushButton(i18n("Delete"));
     connect(m_delItem, SIGNAL(clicked()), this, SLOT(deleteCurrentCategory()));
@@ -172,11 +172,14 @@ Settings::CategoryPage::CategoryPage(QWidget* parent) : \
QWidget(parent)  
     m_dbNotSavedLabel = new QLabel( i18n("<font color='red'>"
                                          "The database has unsaved changes. As long \
                as those are "
-                                         "not saved, the names of categories can't \
be changed." +                                         "not saved, the names of \
categories can't be changed and " +                                         "new ones \
can't be added."  "</font>"));
+    m_dbNotSavedLabel->setWordWrap(true);
     dbNotSavedLayout->addWidget(m_dbNotSavedLabel);
 
     m_saveDbNowButton = new QPushButton(i18n("Save the DB now"));
+    m_saveDbNowButton->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Minimum);
     connect(m_saveDbNowButton, SIGNAL(clicked()), this, SLOT(saveDbNow()));
     dbNotSavedLayout->addWidget(m_saveDbNowButton);
 
@@ -467,6 +470,7 @@ void Settings::CategoryPage::enableDisable(bool b)
         m_dbNotSavedLabel->show();
         m_saveDbNowButton->show();
         m_renameItem->setEnabled(false);
+        m_newCategoryButton->setEnabled(false);
 
         for (int i = 0; i < m_categoriesListWidget->count(); i++) {
             QListWidgetItem* currentItem = m_categoriesListWidget->item(i);
@@ -476,6 +480,7 @@ void Settings::CategoryPage::enableDisable(bool b)
         m_dbNotSavedLabel->hide();
         m_saveDbNowButton->hide();
         m_renameItem->setEnabled(b);
+        m_newCategoryButton->setEnabled(true);
 
         for (int i = 0; i < m_categoriesListWidget->count(); i++) {
             QListWidgetItem* currentItem = m_categoriesListWidget->item(i);
diff --git a/Settings/CategoryPage.h b/Settings/CategoryPage.h
index 612a5c2..6ccf776 100644
--- a/Settings/CategoryPage.h
+++ b/Settings/CategoryPage.h
@@ -124,6 +124,7 @@ private: // Variables
     QLabel* m_dbNotSavedLabel;
     QPushButton* m_saveDbNowButton;
     bool m_categoryNamesChanged;
+    QPushButton* m_newCategoryButton;
 };
 
 }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic