[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