#include "book.h"
BookmarkInfoDialog::BookmarkInfoDialog(Book *b, int i, QWidget *parent):
- Dialog(parent),
+ Dyalog(parent, true),
book(b),
index(i)
{
- setWindowTitle(tr("Bookmark Details"));
+ setWindowTitle(tr("Bookmark details"));
Book::Bookmark bookmark = book->bookmarks()[index];
- QString contentId = book->parts[bookmark.part];
- QString contentTitle = book->content[contentId].name;
- QLabel *info = new QLabel(contentTitle + "\nAt " +
- QString::number((int)(bookmark.pos*100)) + "%", this);
+ QString label("At ");
+ label += QString::number((int)(100 * book->
+ getProgress(bookmark.part, bookmark.pos))) + "%";
+ if (!bookmark.note.isEmpty()) {
+ label += ": " + bookmark.note;
+ }
+ label += "\n";
+ int chapterIndex = book->chapterFromPart(bookmark.part);
+ if (chapterIndex != -1) {
+ QString chapterId = book->chapters[chapterIndex];
+ label += "In\"" + book->content[chapterId].name + "\"";
+ }
+ QLabel *info = new QLabel(label, this);
addWidget(info);
addStretch();
-
- QPushButton *read = new QPushButton(tr("Go to"), this);
- QPushButton *remove = new QPushButton(tr("Delete"), this);
- connect(read, SIGNAL(clicked()), this, SLOT(onRead()));
- connect(remove, SIGNAL(clicked()), this, SLOT(onRemove()));
- addButton(read, QDialogButtonBox::ActionRole);
- addButton(remove, QDialogButtonBox::DestructiveRole);
+ addButton(tr("Go to"), this, SLOT(onRead()), QDialogButtonBox::ActionRole);
+ addButton(tr("Delete"), this, SLOT(onRemove()),
+ QDialogButtonBox::DestructiveRole);
}
void BookmarkInfoDialog::onRead()