Add Flickable.
[dorian] / infodialog.cpp
index 202d906..eadc647 100644 (file)
@@ -4,7 +4,8 @@
 #include "book.h"
 #include "library.h"
 
-InfoDialog::InfoDialog(Book *b, QWidget *parent): Dialog(parent), book(b)
+InfoDialog::InfoDialog(Book *b, QWidget *parent, bool showButtons):
+        Dyalog(parent, showButtons), book(b)
 {
     setWindowTitle(tr("Book Details"));
 
@@ -42,12 +43,10 @@ InfoDialog::InfoDialog(Book *b, QWidget *parent): Dialog(parent), book(b)
         addStretch();
     }
 
-    QPushButton *read = new QPushButton(tr("Read"), this);
-    QPushButton *remove = new QPushButton(tr("Delete"), this);
-    connect(read, SIGNAL(clicked()), this, SLOT(onReadBook()));
-    connect(remove, SIGNAL(clicked()), this, SLOT(onRemoveBook()));
-    addButton(read, QDialogButtonBox::ActionRole);
-    addButton(remove, QDialogButtonBox::ActionRole);
+    addButton(tr("Read"), this, SLOT(onReadBook()),
+              QDialogButtonBox::ActionRole);
+    addButton(tr("Delete"), this, SLOT(onRemoveBook()),
+              QDialogButtonBox::DestructiveRole);
 }
 
 void InfoDialog::onReadBook()
@@ -59,10 +58,9 @@ void InfoDialog::onReadBook()
 void InfoDialog::onRemoveBook()
 {
     if (QMessageBox::Yes ==
-        QMessageBox::question(this,
-                              tr("Delete book"),
-                              "Delete book \"" + book->name() + "\"?",
-                              QMessageBox::Yes | QMessageBox::No)) {
+        QMessageBox::question(this, tr("Delete book"),
+            tr("Delete book \"%1\" from library?").arg(book->shortName()),
+            QMessageBox::Yes | QMessageBox::No)) {
         Library::instance()->remove(Library::instance()->find(book));
         close();
     }