author | leseb <leseb> | 2002-06-13 17:11:03 (UTC) |
---|---|---|
committer | leseb <leseb> | 2002-06-13 17:11:03 (UTC) |
commit | 615176c17202f1a8aa7aa504b8dd747b089385a9 (patch) (side-by-side diff) | |
tree | b5906e134037cd72871e0cecac4a3c9ed4c9a9e2 | |
parent | 54de91b66a2f0f985ff89503e919f85713d1f22c (diff) | |
download | opie-615176c17202f1a8aa7aa504b8dd747b089385a9.zip opie-615176c17202f1a8aa7aa504b8dd747b089385a9.tar.gz opie-615176c17202f1a8aa7aa504b8dd747b089385a9.tar.bz2 |
More progress in page attributes
-rw-r--r-- | noncore/graphics/drawpad/page.cpp | 24 | ||||
-rw-r--r-- | noncore/graphics/drawpad/page.h | 12 | ||||
-rw-r--r-- | noncore/graphics/drawpad/pageinformationdialog.cpp | 49 | ||||
-rw-r--r-- | noncore/graphics/drawpad/pageinformationdialog.h | 4 | ||||
-rw-r--r-- | noncore/graphics/drawpad/thumbnailview.cpp | 45 | ||||
-rw-r--r-- | noncore/graphics/drawpad/thumbnailview.h | 6 |
6 files changed, 134 insertions, 6 deletions
diff --git a/noncore/graphics/drawpad/page.cpp b/noncore/graphics/drawpad/page.cpp index 35ec0e0..7034a20 100644 --- a/noncore/graphics/drawpad/page.cpp +++ b/noncore/graphics/drawpad/page.cpp @@ -18,2 +18,3 @@ Page::Page() { + m_lastModified = QDateTime::currentDateTime(); } @@ -23,2 +24,3 @@ Page::Page(int w, int h) { + m_lastModified = QDateTime::currentDateTime(); } @@ -28,2 +30,3 @@ Page::Page(const QSize& size) { + m_lastModified = QDateTime::currentDateTime(); } @@ -33 +36,22 @@ Page::~Page() } + +QString Page::title() const +{ + return m_title; +} + +QDateTime Page::lastModified() const +{ + return m_lastModified; +} + +void Page::setTitle(QString title) +{ + m_title = title; +} + +void Page::setLastModified(QDateTime lastModified) +{ + m_lastModified = lastModified; +} + diff --git a/noncore/graphics/drawpad/page.h b/noncore/graphics/drawpad/page.h index 888f552..020ab1f 100644 --- a/noncore/graphics/drawpad/page.h +++ b/noncore/graphics/drawpad/page.h @@ -18,2 +18,4 @@ +#include <qdatetime.h> + class Page : public QPixmap @@ -26,2 +28,12 @@ public: ~Page(); + + QString title() const; + QDateTime lastModified() const; + + void setTitle(QString title); + void setLastModified(QDateTime lastModified); + +private: + QString m_title; + QDateTime m_lastModified; }; diff --git a/noncore/graphics/drawpad/pageinformationdialog.cpp b/noncore/graphics/drawpad/pageinformationdialog.cpp index 54cf89d..c0d055e 100644 --- a/noncore/graphics/drawpad/pageinformationdialog.cpp +++ b/noncore/graphics/drawpad/pageinformationdialog.cpp @@ -17,2 +17,5 @@ +#include <qpe/config.h> +#include <qpe/timestring.h> + #include <qgroupbox.h> @@ -32,3 +35,8 @@ PageInformationDialog::PageInformationDialog(Page* page, QWidget* parent, const QLabel* titleLabel = new QLabel(tr("Title:"), generalGroupBox); + m_pTitleLineEdit = new QLineEdit(generalGroupBox); + m_pTitleLineEdit->setText(page->title()); + + QLabel* dateLabel = new QLabel(tr("Date:"), generalGroupBox); + QLabel* dateValueLabel = new QLabel(dateTimeString(m_pPage->lastModified()), generalGroupBox); @@ -45,3 +53,3 @@ PageInformationDialog::PageInformationDialog(Page* page, QWidget* parent, const sizeGroupBox->layout()->setSpacing(4); - QGridLayout* generalLayout = new QGridLayout(generalGroupBox->layout(), 1, 1); + QGridLayout* generalLayout = new QGridLayout(generalGroupBox->layout(), 2, 2); QGridLayout* sizeLayout = new QGridLayout(sizeGroupBox->layout(), 2, 2); @@ -50,2 +58,6 @@ PageInformationDialog::PageInformationDialog(Page* page, QWidget* parent, const generalLayout->addWidget(m_pTitleLineEdit, 0, 1); + generalLayout->addWidget(dateLabel, 1, 0); + generalLayout->addWidget(dateValueLabel, 1, 1); + + generalLayout->setColStretch(1, 1); @@ -70 +82,36 @@ QString PageInformationDialog::selectedTitle() } + +QString PageInformationDialog::dateTimeString(QDateTime dateTime) +{ + QString result; + + Config config("qpe"); + config.setGroup("Date"); + + QChar separator = config.readEntry("Separator", "/")[0]; + DateFormat::Order shortOrder = (DateFormat::Order)config .readNumEntry("ShortOrder", DateFormat::DayMonthYear); + + for (int i = 0; i < 3; i++) { + switch((shortOrder >> (i * 3)) & 0x0007) { + case 0x0001: + result += QString().sprintf("%02d", dateTime.date().day()); + break; + case 0x0002: + result += QString().sprintf("%02d", dateTime.date().month()); + break; + case 0x0004: + result += QString().sprintf("%04d", dateTime.date().year()); + break; + default: + break; + } + + if (i < 2) { + result += separator; + } + } + + result += QString().sprintf(" %02d:%02d", dateTime.time().hour(), dateTime.time().minute()); + + return result; +} diff --git a/noncore/graphics/drawpad/pageinformationdialog.h b/noncore/graphics/drawpad/pageinformationdialog.h index cce74ec..60662a9 100644 --- a/noncore/graphics/drawpad/pageinformationdialog.h +++ b/noncore/graphics/drawpad/pageinformationdialog.h @@ -20,2 +20,4 @@ class Page; +#include <qdatetime.h> + class QLineEdit; @@ -33,2 +35,4 @@ public: private: + QString dateTimeString(QDateTime dateTime); + Page* m_pPage; diff --git a/noncore/graphics/drawpad/thumbnailview.cpp b/noncore/graphics/drawpad/thumbnailview.cpp index 1eadc13..35955e8 100644 --- a/noncore/graphics/drawpad/thumbnailview.cpp +++ b/noncore/graphics/drawpad/thumbnailview.cpp @@ -20,3 +20,5 @@ +#include <qpe/config.h> #include <qpe/resource.h> +#include <qpe/timestring.h> @@ -56,6 +58,6 @@ PageListBoxItem::PageListBoxItem(Page* page, QListBox* parent) - m_titleText = QObject::tr("Title:") + " -"; + m_titleText = QObject::tr("Title:") + " " + m_pPage->title(); m_dimensionText = QObject::tr("Dimension:") + " " + QString::number(m_pPage->width()) + "x" + QString::number(m_pPage->height()); - m_dateTimeText = QObject::tr("Date:") + " -"; + m_dateText = QObject::tr("Date:") + " " + dateTimeString(m_pPage->lastModified()); @@ -88,3 +90,3 @@ int PageListBoxItem::width(const QListBox* lb) const QMAX(fontMetrics.width(m_dimensionText), - fontMetrics.width(m_dateTimeText))); + fontMetrics.width(m_dateText))); @@ -119,3 +121,3 @@ void PageListBoxItem::paint(QPainter *painter) painter->drawText(textRect, Qt::AlignLeft | Qt::AlignVCenter, m_dimensionText); - painter->drawText(textRect, Qt::AlignLeft | Qt::AlignBottom, m_dateTimeText); + painter->drawText(textRect, Qt::AlignLeft | Qt::AlignBottom, m_dateText); @@ -131,2 +133,37 @@ Page* PageListBoxItem::page() const +QString PageListBoxItem::dateTimeString(QDateTime dateTime) +{ + QString result; + + Config config("qpe"); + config.setGroup("Date"); + + QChar separator = config.readEntry("Separator", "/")[0]; + DateFormat::Order shortOrder = (DateFormat::Order)config .readNumEntry("ShortOrder", DateFormat::DayMonthYear); + + for (int i = 0; i < 3; i++) { + switch((shortOrder >> (i * 3)) & 0x0007) { + case 0x0001: + result += QString().sprintf("%02d", dateTime.date().day()); + break; + case 0x0002: + result += QString().sprintf("%02d", dateTime.date().month()); + break; + case 0x0004: + result += QString().sprintf("%04d", dateTime.date().year()); + break; + default: + break; + } + + if (i < 2) { + result += separator; + } + } + + result += QString().sprintf(" %02d:%02d", dateTime.time().hour(), dateTime.time().minute()); + + return result; +} + PageListBox::PageListBox(DrawPadCanvas* drawPadCanvas, QWidget* parent, const char* name) diff --git a/noncore/graphics/drawpad/thumbnailview.h b/noncore/graphics/drawpad/thumbnailview.h index 88c3b27..2eac667 100644 --- a/noncore/graphics/drawpad/thumbnailview.h +++ b/noncore/graphics/drawpad/thumbnailview.h @@ -23,2 +23,4 @@ class Page; +#include <qdatetime.h> + class QToolButton; @@ -38,2 +40,4 @@ public: private: + QString dateTimeString(QDateTime dateTime); + Page* m_pPage; @@ -44,3 +48,3 @@ private: QString m_dimensionText; - QString m_dateTimeText; + QString m_dateText; |