[SCM] ktp-text-ui packaging branch, master, updated. debian/15.12.1-1-1918-gdf4b0ec
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:21:18 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=13819f2
The following commit has been merged in the master branch:
commit 13819f2c2f83cbf6cc371cc18b797cae742852bc
Author: David Edmundson <kde at davidedmundson.co.uk>
Date: Wed Feb 22 22:44:46 2012 +0000
Highlight dates in the calendar widget in which a conversation took place
REVIEW: 104045
---
logviewer/CMakeLists.txt | 1 +
...message-view.h => conversation-date-picker.cpp} | 55 +++++++++++++---------
.../{message-view.h => conversation-date-picker.h} | 31 ++++++------
logviewer/log-viewer.cpp | 5 +-
logviewer/log-viewer.ui | 15 +++---
5 files changed, 62 insertions(+), 45 deletions(-)
diff --git a/logviewer/CMakeLists.txt b/logviewer/CMakeLists.txt
index e8237a1..cd2107e 100644
--- a/logviewer/CMakeLists.txt
+++ b/logviewer/CMakeLists.txt
@@ -15,6 +15,7 @@ set(ktp-log-viewer_SRCS
log-viewer.cpp
entity-model.cpp
message-view.cpp
+ conversation-date-picker.cpp
)
kde4_add_ui_files(ktp-log-viewer_SRCS log-viewer.ui)
diff --git a/logviewer/message-view.h b/logviewer/conversation-date-picker.cpp
similarity index 53%
copy from logviewer/message-view.h
copy to logviewer/conversation-date-picker.cpp
index e4b9b88..6ed0a0a 100644
--- a/logviewer/message-view.h
+++ b/logviewer/conversation-date-picker.cpp
@@ -17,34 +17,45 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
-#ifndef MESSAGEVIEW_H
-#define MESSAGEVIEW_H
+#include "conversation-date-picker.h"
-#include "adium-theme-view.h"
-
-#include <QDate>
-
-#include <TelepathyLoggerQt4/Entity>
+#include <TelepathyLoggerQt4/LogManager>
+#include <TelepathyLoggerQt4/PendingDates>
#include <TelepathyLoggerQt4/PendingOperation>
+#include <TelepathyLoggerQt4/Entity>
+#include <KDateTable>
-class MessageView : public AdiumThemeView
+ConversationDatePicker::ConversationDatePicker(QWidget *parent) :
+ KDatePicker(parent)
{
- Q_OBJECT
-public:
- explicit MessageView(QWidget *parent = 0);
+}
- void loadLog(const Tp::AccountPtr &account, const Tpl::EntityPtr &entity, const QDate &date);
-
-private Q_SLOTS:
- void onLoadFinished();
- void onEventsLoaded(Tpl::PendingOperation* po);
+void ConversationDatePicker::setEntity(const Tp::AccountPtr &account, const Tpl::EntityPtr &entity)
+{
+ clear();
+ Tpl::LogManagerPtr logManager = Tpl::LogManager::instance();
+ Tpl::PendingDates *pendingDates = logManager->queryDates(account, entity, Tpl::EventTypeMaskText);
+ connect(pendingDates, SIGNAL(finished(Tpl::PendingOperation*)), SLOT(onDatesFinished(Tpl::PendingOperation*)));
+}
-private:
- Tpl::EntityPtr m_entity;
- Tp::AccountPtr m_account;
- QDate m_date;
+void ConversationDatePicker::clear()
+{
+ //this could really do with existing in KDateTable!
+ //it only needs to call d->m_customPaintingModes.clear();
+ //FIXME push this into KDE Frameworks 5
-};
+ Q_FOREACH(const QDate &date, m_setDates) {
+ dateTable()->unsetCustomDatePainting(date);
+ }
+ m_setDates.clear();
+}
-#endif // MESSAGEVIEW_H
+void ConversationDatePicker::onDatesFinished(Tpl::PendingOperation *op)
+{
+ Tpl::PendingDates *pendingDates = qobject_cast<Tpl::PendingDates*>(op);
+ Q_FOREACH(const QDate date, pendingDates->dates()) {
+ dateTable()->setCustomDatePainting(date, Qt::blue);
+ }
+ m_setDates.append(pendingDates->dates());
+}
diff --git a/logviewer/message-view.h b/logviewer/conversation-date-picker.h
similarity index 74%
copy from logviewer/message-view.h
copy to logviewer/conversation-date-picker.h
index e4b9b88..dd177cc 100644
--- a/logviewer/message-view.h
+++ b/logviewer/conversation-date-picker.h
@@ -17,34 +17,35 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
-#ifndef MESSAGEVIEW_H
-#define MESSAGEVIEW_H
+#ifndef CONVERSATIONDATEPICKER_H
+#define CONVERSATIONDATEPICKER_H
-#include "adium-theme-view.h"
-
-#include <QDate>
+#include <KDatePicker>
#include <TelepathyLoggerQt4/Entity>
-#include <TelepathyLoggerQt4/PendingOperation>
+#include <TelepathyQt/Types>
+namespace Tpl{
+ class PendingOperation;
+}
-class MessageView : public AdiumThemeView
+class ConversationDatePicker : public KDatePicker
{
Q_OBJECT
public:
- explicit MessageView(QWidget *parent = 0);
+ explicit ConversationDatePicker(QWidget *parent = 0);
+
+ void setEntity(const Tp::AccountPtr &accout, const Tpl::EntityPtr &entity);
+ void clear();
- void loadLog(const Tp::AccountPtr &account, const Tpl::EntityPtr &entity, const QDate &date);
+Q_SIGNALS:
private Q_SLOTS:
- void onLoadFinished();
- void onEventsLoaded(Tpl::PendingOperation* po);
+ void onDatesFinished(Tpl::PendingOperation*);
private:
- Tpl::EntityPtr m_entity;
- Tp::AccountPtr m_account;
- QDate m_date;
+ QList<QDate> m_setDates;
};
-#endif // MESSAGEVIEW_H
+#endif // CONVERSATIONDATEPICKER_H
diff --git a/logviewer/log-viewer.cpp b/logviewer/log-viewer.cpp
index 3b51825..3c664d9 100644
--- a/logviewer/log-viewer.cpp
+++ b/logviewer/log-viewer.cpp
@@ -70,7 +70,10 @@ void LogViewer::onAccountManagerReady()
void LogViewer::onEntitySelected(const QModelIndex &index)
{
- //TODO, update calendar needs to get pendingDates
+ Tpl::EntityPtr entity = index.data(EntityModel::EntityRole).value<Tpl::EntityPtr>();
+ Tp::AccountPtr account = index.data(EntityModel::AccountRole).value<Tp::AccountPtr>();
+
+ ui->datePicker->setEntity(account, entity);
updateMainView();
}
diff --git a/logviewer/log-viewer.ui b/logviewer/log-viewer.ui
index 55d2913..64b3f9d 100644
--- a/logviewer/log-viewer.ui
+++ b/logviewer/log-viewer.ui
@@ -49,9 +49,9 @@
</widget>
</item>
<item>
- <widget class="KDatePicker" name="datePicker">
+ <widget class="ConversationDatePicker" name="datePicker" native="true">
<property name="sizePolicy">
- <sizepolicy hsizetype="Maximum" vsizetype="Minimum">
+ <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@@ -68,11 +68,6 @@
<layoutdefault spacing="6" margin="11"/>
<customwidgets>
<customwidget>
- <class>KDatePicker</class>
- <extends>QFrame</extends>
- <header>kdatepicker.h</header>
- </customwidget>
- <customwidget>
<class>KComboBox</class>
<extends>QComboBox</extends>
<header>kcombobox.h</header>
@@ -88,6 +83,12 @@
<header>message-view.h</header>
<container>1</container>
</customwidget>
+ <customwidget>
+ <class>ConversationDatePicker</class>
+ <extends>QWidget</extends>
+ <header>conversation-date-picker.h</header>
+ <container>1</container>
+ </customwidget>
</customwidgets>
<resources/>
<connections/>
--
ktp-text-ui packaging
More information about the pkg-kde-commits
mailing list