-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinfo.cpp
52 lines (46 loc) · 1.46 KB
/
info.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "info.h"
#include "poppler-qt5.h"
#include <QtWidgets/QTableWidget>
InfoDock::InfoDock(QWidget *parent)
: AbstractInfoDock(parent)
{
m_table = new QTableWidget(this);
setWidget(m_table);
setWindowTitle(tr("Information"));
m_table->setColumnCount(2);
m_table->setHorizontalHeaderLabels(QStringList() << tr("Key") << tr("Value"));
m_table->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
}
InfoDock::~InfoDock()
{
}
void InfoDock::fillInfo()
{
QStringList keys = document()->infoKeys();
m_table->setHorizontalHeaderLabels(QStringList() << tr("Key") << tr("Value"));
m_table->setRowCount(keys.count());
QStringList dateKeys;
dateKeys << QString::fromLatin1("CreationDate");
dateKeys << QString::fromLatin1("ModDate");
int i = 0;
Q_FOREACH(const QString &date, dateKeys) {
const int id = keys.indexOf(date);
if (id != -1) {
m_table->setItem(i, 0, new QTableWidgetItem(date));
m_table->setItem(i, 1, new QTableWidgetItem(document()->date(date).toString(Qt::SystemLocaleDate)));
++i;
keys.removeAt(id);
}
}
Q_FOREACH(const QString &key, keys) {
m_table->setItem(i, 0, new QTableWidgetItem(key));
m_table->setItem(i, 1, new QTableWidgetItem(document()->info(key)));
++i;
}
}
void InfoDock::documentClosed()
{
m_table->clear();
m_table->setRowCount(0);
AbstractInfoDock::documentClosed();
}