[SCM] ktp-contact-list packaging branch, master, updated. debian/15.12.1-2-1070-g6c56f91

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:07:36 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=a4a4b17

The following commit has been merged in the master branch:
commit a4a4b17e6bf3a459e2565fc548dba1e766908783
Author: George Kiagiadakis <george.kiagiadakis at collabora.com>
Date:   Sat Sep 17 15:40:17 2011 +0300

    Merge the various contact overlay button classes into one.
    
    Reviewed-by: Martin Klapetek <martin.klapetek at gmail.com>
---
 contact-overlays.cpp | 373 +++++++--------------------------------------------
 contact-overlays.h   |  95 +++----------
 2 files changed, 69 insertions(+), 399 deletions(-)

diff --git a/contact-overlays.cpp b/contact-overlays.cpp
index 9e4eb01..026e3d3 100644
--- a/contact-overlays.cpp
+++ b/contact-overlays.cpp
@@ -28,59 +28,57 @@
 #include "models/accounts-model.h"
 #include "models/contact-model-item.h"
 
-class TextChannelContactOverlay::Button : public ContactViewHoverButton
+class GuiItemContactViewHoverButton : public ContactViewHoverButton
 {
 public:
 
-    Button(QAbstractItemView* parentView, const KGuiItem& gui);
+    GuiItemContactViewHoverButton(QAbstractItemView* parentView, const KGuiItem& gui);
     virtual QSize sizeHint() const;
 
 protected:
 
-    KGuiItem gui;
-
     virtual QPixmap icon();
     virtual void updateToolTip();
 
+private:
+
+    KGuiItem m_guiItem;
 };
 
-TextChannelContactOverlay::Button::Button(QAbstractItemView* parentView, const KGuiItem& gui)
-    : ContactViewHoverButton(parentView), gui(gui)
+GuiItemContactViewHoverButton::GuiItemContactViewHoverButton(QAbstractItemView* parentView, const KGuiItem& gui)
+    : ContactViewHoverButton(parentView), m_guiItem(gui)
 {
 }
 
-QSize TextChannelContactOverlay::Button::sizeHint() const
+QSize GuiItemContactViewHoverButton::sizeHint() const
 {
     return QSize(KIconLoader::SizeSmall, KIconLoader::SizeSmall);
 }
 
-QPixmap TextChannelContactOverlay::Button::icon()
+QPixmap GuiItemContactViewHoverButton::icon()
 {
-    return KIconLoader::global()->loadIcon(gui.iconName(),
+    return KIconLoader::global()->loadIcon(m_guiItem.iconName(),
                                            KIconLoader::NoGroup,
                                            KIconLoader::SizeSmall);
 }
 
-void TextChannelContactOverlay::Button::updateToolTip()
+void GuiItemContactViewHoverButton::updateToolTip()
 {
-    setToolTip(gui.toolTip());
+    setToolTip(m_guiItem.toolTip());
 }
 
 // -------------------------------------------------------------------------
 
-TextChannelContactOverlay::TextChannelContactOverlay(QObject* parent)
-    : HoverButtonDelegateOverlay(parent)
+StartChannelContactOverlay::StartChannelContactOverlay(QObject* parent, const KGuiItem & gui,
+                                                       int capabilityRole, int xpos)
+    : HoverButtonDelegateOverlay(parent),
+      m_gui(gui),
+      m_capabilityRole(capabilityRole),
+      m_xpos(xpos)
 {
-    m_gui = KGuiItem(i18n("Start Chat"), "text-x-generic",
-                     i18n("Start Chat"), i18n("Start a text chat"));
 }
 
-TextChannelContactOverlay::Button *TextChannelContactOverlay::button() const
-{
-    return dynamic_cast<Button*>(HoverButtonDelegateOverlay::button());
-}
-
-void TextChannelContactOverlay::setActive(bool active)
+void StartChannelContactOverlay::setActive(bool active)
 {
     HoverButtonDelegateOverlay::setActive(active);
 
@@ -92,23 +90,23 @@ void TextChannelContactOverlay::setActive(bool active)
     }
 }
 
-ContactViewHoverButton* TextChannelContactOverlay::createButton()
+ContactViewHoverButton* StartChannelContactOverlay::createButton()
 {
-    return new Button(view(), m_gui);
+    return new GuiItemContactViewHoverButton(view(), m_gui);
 }
 
-void TextChannelContactOverlay::updateButton(const QModelIndex& index)
+void StartChannelContactOverlay::updateButton(const QModelIndex& index)
 {
     const QRect rect = m_view->visualRect(index);
     const QSize size = button()->size();
 
     const int gap = 5;
-    const int x   = rect.left() + 40;// rect.right() - gap - 96 - size.width();
+    const int x   = rect.left() + m_xpos; // rect.right() - gap - 96 - size.width();
     const int y   = rect.bottom() - gap - size.height();
     button()->move(QPoint(x, y));
 }
 
-void TextChannelContactOverlay::slotClicked(bool checked)
+void StartChannelContactOverlay::slotClicked(bool checked)
 {
     Q_UNUSED(checked);
     QModelIndex index = button()->index();
@@ -121,325 +119,58 @@ void TextChannelContactOverlay::slotClicked(bool checked)
     }
 }
 
-bool TextChannelContactOverlay::checkIndex(const QModelIndex& index) const
+bool StartChannelContactOverlay::checkIndex(const QModelIndex& index) const
 {
-    if (index.data(AccountsModel::TextChatCapabilityRole).toBool()) {
-        return true;
-    }
-
-    return false;
+    return index.data(m_capabilityRole).toBool();
 }
 
 // ------------------------------------------------------------------------
 
-class AudioChannelContactOverlay::Button : public ContactViewHoverButton
-{
-public:
-
-    Button(QAbstractItemView* parentView, const KGuiItem& gui);
-    virtual QSize sizeHint() const;
-
-protected:
-
-    KGuiItem gui;
-
-    virtual QPixmap icon();
-    virtual void updateToolTip();
-
-};
-
-AudioChannelContactOverlay::Button::Button(QAbstractItemView* parentView, const KGuiItem& gui)
-    : ContactViewHoverButton(parentView), gui(gui)
-{
-}
-
-QSize AudioChannelContactOverlay::Button::sizeHint() const
-{
-    return QSize(KIconLoader::SizeSmall, KIconLoader::SizeSmall);
-}
-
-QPixmap AudioChannelContactOverlay::Button::icon()
-{
-    return KIconLoader::global()->loadIcon(gui.iconName(),
-                                           KIconLoader::NoGroup,
-                                           KIconLoader::SizeSmall);
-}
-
-void AudioChannelContactOverlay::Button::updateToolTip()
+TextChannelContactOverlay::TextChannelContactOverlay(QObject* parent)
+    : StartChannelContactOverlay(
+        parent,
+        KGuiItem(i18n("Start Chat"), "text-x-generic",
+                 i18n("Start Chat"), i18n("Start a text chat")),
+        AccountsModel::TextChatCapabilityRole,
+        40)
 {
-    setToolTip(gui.toolTip());
 }
 
-// -------------------------------------------------------------------------
+// ------------------------------------------------------------------------
 
 AudioChannelContactOverlay::AudioChannelContactOverlay(QObject* parent)
-    : HoverButtonDelegateOverlay(parent)
-{
-    m_gui = KGuiItem(i18n("Start Audio Call"), "voicecall",
-                     i18n("Start Audio Call"), i18n("Start an audio call"));
-}
-
-AudioChannelContactOverlay::Button *AudioChannelContactOverlay::button() const
-{
-    return static_cast<Button*>(HoverButtonDelegateOverlay::button());
-}
-
-void AudioChannelContactOverlay::setActive(bool active)
-{
-    HoverButtonDelegateOverlay::setActive(active);
-
-    if (active) {
-        connect(button(), SIGNAL(clicked(bool)),
-                this, SLOT(slotClicked(bool)));
-    } else {
-        // button is deleted
-    }
-}
+    : StartChannelContactOverlay(
+        parent,
+        KGuiItem(i18n("Start Audio Call"), "voicecall",
+                 i18n("Start Audio Call"), i18n("Start an audio call")),
+        AccountsModel::AudioCallCapabilityRole,
+        64)
 
-ContactViewHoverButton* AudioChannelContactOverlay::createButton()
 {
-    return new Button(view(), m_gui);
-}
-
-void AudioChannelContactOverlay::updateButton(const QModelIndex& index)
-{
-    const QRect rect = m_view->visualRect(index);
-    const QSize size = button()->size();
-
-    const int gap = 5;
-    const int x   = rect.left() + 64; //rect.right() - gap - 72 - size.width();
-    const int y   = rect.bottom() - gap - size.height();
-    button()->move(QPoint(x, y));
-}
-
-void AudioChannelContactOverlay::slotClicked(bool checked)
-{
-    Q_UNUSED(checked);
-    QModelIndex index = button()->index();
-
-    if (index.isValid()) {
-        ContactModelItem* contactItem = index.data(AccountsModel::ItemRole).value<ContactModelItem*>();
-        if (contactItem) {
-            emit activated(contactItem);
-        }
-    }
-}
-
-bool AudioChannelContactOverlay::checkIndex(const QModelIndex& index) const
-{
-    if (index.data(AccountsModel::AudioCallCapabilityRole).toBool()) {
-        return true;
-    }
-
-    return false;
-}
-
-// ----------------------------------------------------------
-
-class VideoChannelContactOverlay::Button : public ContactViewHoverButton
-{
-public:
-
-    Button(QAbstractItemView* parentView, const KGuiItem& gui);
-    virtual QSize sizeHint() const;
-
-protected:
-
-    KGuiItem gui;
-
-    virtual QPixmap icon();
-    virtual void updateToolTip();
-
-};
-
-VideoChannelContactOverlay::Button::Button(QAbstractItemView* parentView, const KGuiItem& gui)
-    : ContactViewHoverButton(parentView), gui(gui)
-{
-}
-
-QSize VideoChannelContactOverlay::Button::sizeHint() const
-{
-    return QSize(KIconLoader::SizeSmall, KIconLoader::SizeSmall);
-}
-
-QPixmap VideoChannelContactOverlay::Button::icon()
-{
-    return KIconLoader::global()->loadIcon(gui.iconName(),
-                                           KIconLoader::NoGroup,
-                                           KIconLoader::SizeSmall);
-}
-
-void VideoChannelContactOverlay::Button::updateToolTip()
-{
-    setToolTip(gui.toolTip());
 }
 
 // -------------------------------------------------------------------------
 
 VideoChannelContactOverlay::VideoChannelContactOverlay(QObject* parent)
-    : HoverButtonDelegateOverlay(parent)
-{
-    m_gui = KGuiItem(i18n("Start Video Call"), "camera-web",
-                     i18n("Start Video Call"), i18n("Start a video call"));
-}
-
-VideoChannelContactOverlay::Button *VideoChannelContactOverlay::button() const
-{
-    return static_cast<Button*>(HoverButtonDelegateOverlay::button());
-}
-
-void VideoChannelContactOverlay::setActive(bool active)
-{
-    HoverButtonDelegateOverlay::setActive(active);
-
-    if (active) {
-        connect(button(), SIGNAL(clicked(bool)),
-                this, SLOT(slotClicked(bool)));
-    } else {
-        // button is deleted
-    }
-}
-
-ContactViewHoverButton* VideoChannelContactOverlay::createButton()
-{
-    return new Button(view(), m_gui);
-}
-
-void VideoChannelContactOverlay::updateButton(const QModelIndex& index)
-{
-    const QRect rect = m_view->visualRect(index);
-    const QSize size = button()->size();
-
-    const int gap = 5;
-    const int x   = rect.left() + 88;// rect.right() - gap - 50 - size.width();
-    const int y   = rect.bottom() - gap - size.height();
-    button()->move(QPoint(x, y));
-}
-
-void VideoChannelContactOverlay::slotClicked(bool checked)
-{
-    Q_UNUSED(checked);
-    QModelIndex index = button()->index();
-
-    if (index.isValid()) {
-        ContactModelItem* contactItem = index.data(AccountsModel::ItemRole).value<ContactModelItem*>();
-        if (contactItem) {
-            emit activated(contactItem);
-        }
-    }
-}
-
-bool VideoChannelContactOverlay::checkIndex(const QModelIndex& index) const
-{
-    if (index.data(AccountsModel::VideoCallCapabilityRole).toBool()) {
-        return true;
-    }
-
-    return false;
-}
-
-// ----------------------------------------------------------
-
-class FileTransferContactOverlay::Button : public ContactViewHoverButton
-{
-public:
-
-    Button(QAbstractItemView* parentView, const KGuiItem& gui);
-    virtual QSize sizeHint() const;
-
-protected:
-
-    KGuiItem gui;
-
-    virtual QPixmap icon();
-    virtual void updateToolTip();
-
-};
-
-FileTransferContactOverlay::Button::Button(QAbstractItemView* parentView, const KGuiItem& gui)
-    : ContactViewHoverButton(parentView), gui(gui)
+    : StartChannelContactOverlay(
+        parent,
+        KGuiItem(i18n("Start Video Call"), "camera-web",
+                 i18n("Start Video Call"), i18n("Start a video call")),
+        AccountsModel::VideoCallCapabilityRole,
+        88)
 {
 }
 
-QSize FileTransferContactOverlay::Button::sizeHint() const
-{
-    return QSize(KIconLoader::SizeSmall, KIconLoader::SizeSmall);
-}
-
-QPixmap FileTransferContactOverlay::Button::icon()
-{
-    return KIconLoader::global()->loadIcon(gui.iconName(),
-                                           KIconLoader::NoGroup,
-                                           KIconLoader::SizeSmall);
-}
-
-void FileTransferContactOverlay::Button::updateToolTip()
-{
-    setToolTip(gui.toolTip());
-}
-
 // -------------------------------------------------------------------------
 
 FileTransferContactOverlay::FileTransferContactOverlay(QObject* parent)
-    : HoverButtonDelegateOverlay(parent)
-{
-    m_gui = KGuiItem(i18n("Send File..."), "mail-attachment",
-                     i18n("Send File..."), i18n("Send a file"));
-}
-
-FileTransferContactOverlay::Button *FileTransferContactOverlay::button() const
-{
-    return static_cast<Button*>(HoverButtonDelegateOverlay::button());
-}
-
-void FileTransferContactOverlay::setActive(bool active)
+    : StartChannelContactOverlay(
+        parent,
+        KGuiItem(i18n("Send File..."), "mail-attachment",
+                 i18n("Send File..."), i18n("Send a file")),
+        AccountsModel::FileTransferCapabilityRole,
+        128)
 {
-    HoverButtonDelegateOverlay::setActive(active);
-
-    if (active) {
-        connect(button(), SIGNAL(clicked(bool)),
-                this, SLOT(slotClicked(bool)));
-    } else {
-        // button is deleted
-    }
-}
-
-ContactViewHoverButton* FileTransferContactOverlay::createButton()
-{
-    return new Button(view(), m_gui);
-}
-
-void FileTransferContactOverlay::updateButton(const QModelIndex& index)
-{
-    const QRect rect = m_view->visualRect(index);
-    const QSize size = button()->size();
-
-    const int gap = 5;
-    const int x   = rect.left() + 128;//rect.right() - gap - 132 - size.width();
-    const int y   = rect.bottom() - gap - size.height();
-    button()->move(QPoint(x, y));
-}
-
-void FileTransferContactOverlay::slotClicked(bool checked)
-{
-    Q_UNUSED(checked);
-    QModelIndex index = button()->index();
-
-    if (index.isValid()) {
-        ContactModelItem* contactItem = index.data(AccountsModel::ItemRole).value<ContactModelItem*>();
-        if (contactItem) {
-            emit activated(contactItem);
-        }
-    }
-}
-
-bool FileTransferContactOverlay::checkIndex(const QModelIndex& index) const
-{
-    if (index.data(AccountsModel::FileTransferCapabilityRole).toBool()) {
-        return true;
-    }
-
-    return false;
 }
 
 #include "contact-overlays.moc"
diff --git a/contact-overlays.h b/contact-overlays.h
index cad1b03..43bcf23 100644
--- a/contact-overlays.h
+++ b/contact-overlays.h
@@ -29,13 +29,14 @@
 
 class ContactModelItem;
 
-class TextChannelContactOverlay : public HoverButtonDelegateOverlay
+class StartChannelContactOverlay : public HoverButtonDelegateOverlay
 {
     Q_OBJECT
 
 public:
 
-    TextChannelContactOverlay(QObject* parent);
+    StartChannelContactOverlay(QObject* parent, const KGuiItem & gui,
+                               int capabilityRole, int xpos);
 
 public Q_SLOTS:
     virtual void setActive(bool active);
@@ -53,113 +54,51 @@ protected Q_SLOTS:
 
     void slotClicked(bool checked);
 
-protected:
+private:
 
     KGuiItem m_gui;
-
-    class Button;
-    Button *button() const;
+    int m_capabilityRole;
+    int m_xpos;
 };
 
 // ---------------------------------------------------------------------
 
-class AudioChannelContactOverlay : public HoverButtonDelegateOverlay
+class TextChannelContactOverlay : public StartChannelContactOverlay
 {
     Q_OBJECT
 
 public:
-    AudioChannelContactOverlay(QObject* parent);
-
-public Q_SLOTS:
-    virtual void setActive(bool active);
-
-Q_SIGNALS:
-    void activated(ContactModelItem *contactItem);
-
-protected:
-
-    virtual ContactViewHoverButton* createButton();
-    virtual void updateButton(const QModelIndex& index);
-    virtual bool checkIndex(const QModelIndex& index) const;
-
-protected Q_SLOTS:
-
-    void slotClicked(bool checked);
+    TextChannelContactOverlay(QObject* parent);
+};
 
-protected:
+// ---------------------------------------------------------------------
 
-    KGuiItem m_gui;
+class AudioChannelContactOverlay : public StartChannelContactOverlay
+{
+    Q_OBJECT
 
-    class Button;
-    Button *button() const;
+public:
+    AudioChannelContactOverlay(QObject* parent);
 };
 
 // ---------------------------------------------------------------------
 
-class VideoChannelContactOverlay : public HoverButtonDelegateOverlay
+class VideoChannelContactOverlay : public StartChannelContactOverlay
 {
     Q_OBJECT
 
 public:
-
     VideoChannelContactOverlay(QObject* parent);
-
-public Q_SLOTS:
-    virtual void setActive(bool active);
-
-Q_SIGNALS:
-    void activated(ContactModelItem *contactItem);
-
-protected:
-
-    virtual ContactViewHoverButton* createButton();
-    virtual void updateButton(const QModelIndex& index);
-    virtual bool checkIndex(const QModelIndex& index) const;
-
-protected Q_SLOTS:
-
-    void slotClicked(bool checked);
-
-protected:
-
-    KGuiItem m_gui;
-
-    class Button;
-    Button *button() const;
 };
 
 // ---------------------------------------------------------------------
 
-class FileTransferContactOverlay : public HoverButtonDelegateOverlay
+class FileTransferContactOverlay : public StartChannelContactOverlay
 {
     Q_OBJECT
 
 public:
-
     FileTransferContactOverlay(QObject* parent);
-
-public Q_SLOTS:
-    virtual void setActive(bool active);
-
-Q_SIGNALS:
-    void activated(ContactModelItem *contactItem);
-
-protected:
-
-    virtual ContactViewHoverButton* createButton();
-    virtual void updateButton(const QModelIndex& index);
-    virtual bool checkIndex(const QModelIndex& index) const;
-
-protected Q_SLOTS:
-
-    void slotClicked(bool checked);
-
-protected:
-
-    KGuiItem m_gui;
-
-    class Button;
-    Button *button() const;
 };
 
 #endif // VERSIONSOVERLAYS_H

-- 
ktp-contact-list packaging



More information about the pkg-kde-commits mailing list