From 07a1c3e622f43f5c9cc9058b3318763255a67520 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Tue, 29 Aug 2017 16:17:00 -0400
Subject: [PATCH] pixmapanipulator: add stubs to draw lrc::conversation::Info
 items

Change-Id: I4641559fd6529c051ab52f93f1569f7e4ac7cc08
Reviewed-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
Signed-off-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
---
 src/interfaces/pixmapmanipulatori.h | 12 ++++++++++++
 src/pixmapmanipulatordefault.cpp    | 25 +++++++++++++++++++++++++
 src/pixmapmanipulatordefault.h      |  6 ++++++
 3 files changed, 43 insertions(+)

diff --git a/src/interfaces/pixmapmanipulatori.h b/src/interfaces/pixmapmanipulatori.h
index 01b4d1ef..b3da54c3 100644
--- a/src/interfaces/pixmapmanipulatori.h
+++ b/src/interfaces/pixmapmanipulatori.h
@@ -28,6 +28,7 @@ class QByteArray ;
 #include <securityevaluationmodel.h>
 #include <categorizedcontactmodel.h>
 #include <categorizedhistorymodel.h>
+
 class  Person             ;
 class  ContactMethod      ;
 class  Call               ;
@@ -35,6 +36,11 @@ class  CollectionInterface;
 class  Account;
 struct UserActionElement  ;
 
+namespace lrc { namespace api {
+namespace account { struct Info; }
+namespace conversation { struct Info; }
+}} // namespace lrc::api
+
 namespace Interfaces {
 
 /**
@@ -68,6 +74,10 @@ public:
     virtual QVariant   contactPhoto(Person* c, const QSize& size, bool displayPresence = true) = 0;
     virtual QVariant   callPhoto(Call* c, const QSize& size, bool displayPresence = true) = 0;
     virtual QVariant   callPhoto(const ContactMethod* n, const QSize& size, bool displayPresence = true) = 0;
+    virtual QVariant   conversationPhoto(const lrc::api::conversation::Info& conversation,
+                                         const lrc::api::account::Info& accountInfo,
+                                         const QSize& size,
+                                         bool displayPresence = true) = 0;
     virtual QVariant   numberCategoryIcon(const QVariant& p, const QSize& size, bool displayPresence = false, bool isPresent = false) = 0;
     virtual QVariant   securityIssueIcon(const QModelIndex& index) = 0;
     virtual QByteArray toByteArray(const QVariant& pxm) = 0;
@@ -80,6 +90,8 @@ public:
     virtual QVariant   decorationRole(const Call*          c    ) = 0;
     virtual QVariant   decorationRole(const ContactMethod* cm   ) = 0;
     virtual QVariant   decorationRole(const Person*        p    ) = 0;
+    virtual QVariant   decorationRole(const lrc::api::conversation::Info& conversation,
+                                      const lrc::api::account::Info& accountInfo) = 0;
     virtual QVariant   decorationRole(const Account*       acc  ) = 0;
 
     /**
diff --git a/src/pixmapmanipulatordefault.cpp b/src/pixmapmanipulatordefault.cpp
index a1dc6d54..529ce616 100644
--- a/src/pixmapmanipulatordefault.cpp
+++ b/src/pixmapmanipulatordefault.cpp
@@ -25,6 +25,10 @@
 //Ring
 #include <useractionmodel.h>
 
+// LRC
+#include "api/account.h"
+#include "api/conversation.h"
+
 namespace Interfaces {
 
 QVariant PixmapManipulatorDefault::contactPhoto(Person* c, const QSize& size, bool displayPresence)
@@ -60,6 +64,19 @@ QVariant PixmapManipulatorDefault::callPhoto(const ContactMethod* c, const QSize
     return QVariant();
 }
 
+QVariant
+PixmapManipulatorDefault::conversationPhoto(const lrc::api::conversation::Info& conversation,
+                                            const lrc::api::account::Info& accountInfo,
+                                            const QSize& size,
+                                            bool displayPresence)
+{
+    Q_UNUSED(conversation)
+    Q_UNUSED(accountInfo)
+    Q_UNUSED(size)
+    Q_UNUSED(displayPresence)
+    return QVariant();
+}
+
 QVariant PixmapManipulatorDefault::securityIssueIcon(const QModelIndex& index)
 {
     Q_UNUSED(index)
@@ -140,5 +157,13 @@ QVariant PixmapManipulatorDefault::decorationRole(const Account* acc)
    return QVariant();
 }
 
+QVariant
+PixmapManipulatorDefault::decorationRole(const lrc::api::conversation::Info& conversation,
+                                         const lrc::api::account::Info& accountInfo)
+{
+   Q_UNUSED(conversation)
+   Q_UNUSED(accountInfo)
+   return QVariant();
+}
 
 } // namespace Interfaces
diff --git a/src/pixmapmanipulatordefault.h b/src/pixmapmanipulatordefault.h
index dc8831b7..40e58915 100644
--- a/src/pixmapmanipulatordefault.h
+++ b/src/pixmapmanipulatordefault.h
@@ -26,6 +26,10 @@ class LIB_EXPORT PixmapManipulatorDefault : public PixmapManipulatorI {
 public:
     QVariant   contactPhoto(Person* c, const QSize& size, bool displayPresence = true) override;
     QVariant   callPhoto(Call* c, const QSize& size, bool displayPresence = true) override;
+    QVariant   conversationPhoto(const lrc::api::conversation::Info& conversation,
+                                 const lrc::api::account::Info& accountInfo,
+                                 const QSize& size,
+                                 bool displayPresence = true) override;
     QVariant   callPhoto(const ContactMethod* n, const QSize& size, bool displayPresence = true) override;
     QVariant   numberCategoryIcon(const QVariant& p, const QSize& size, bool displayPresence = false, bool isPresent = false) override;
     QVariant   securityIssueIcon(const QModelIndex& index) override;
@@ -39,6 +43,8 @@ public:
     QVariant   decorationRole(const Call*              c    ) override;
     QVariant   decorationRole(const ContactMethod*     cm   ) override;
     QVariant   decorationRole(const Person*            p    ) override;
+    QVariant   decorationRole(const lrc::api::conversation::Info& conversation,
+                              const lrc::api::account::Info& accountInfo) override;
     QVariant   decorationRole(const Account*           acc  ) override;
     /**
      * Return the icons associated with the action and its state
-- 
GitLab