Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • beta/202506061543
  • nightly/20250605.0
  • beta/202506051039
  • beta/202506051002
  • beta/202506041611
  • beta/202506041335
  • beta/202505231812
  • stable/20250523.0
  • nightly/20250523.0
  • nightly/20250515.0
  • nightly/20250510.0
  • nightly/20250509.1
  • nightly/20250509.0
  • stable/20250430.1
  • stable/20250430.0
  • beta/202504301614
  • nightly/20250430.0
  • stable/20250424.1
  • beta/202504241506
  • stable/20250424.0
21 results

pixmapmanipulatordefault.h

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    pixmapmanipulatordefault.h 2.60 KiB
    /****************************************************************************
     *    Copyright (C) 2013-2023 Savoir-faire Linux Inc.                       *
     *   Author : Emmanuel Lepage Vallee <emmanuel.lepage@savoirfairelinux.com> *
     *                                                                          *
     *   This library is free software; you can redistribute it and/or          *
     *   modify it under the terms of the GNU Lesser General Public             *
     *   License as published by the Free Software Foundation; either           *
     *   version 2.1 of the License, or (at your option) any later version.     *
     *                                                                          *
     *   This library is distributed in the hope that it will be useful,        *
     *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
     *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU      *
     *   Lesser General Public License for more details.                        *
     *                                                                          *
     *   You should have received a copy of the GNU General Public License      *
     *   along with this program.  If not, see <http://www.gnu.org/licenses/>.  *
     ***************************************************************************/
    #pragma once
    
    #include "interfaces/pixmapmanipulatori.h"
    
    namespace Interfaces {
    
    /// Default implementation of the PixmapManipulator interface which simply returns empty
    /// QVariants/QByteArrays
    class LIB_EXPORT PixmapManipulatorDefault : public PixmapManipulatorI
    {
    public:
        QVariant conversationPhoto(const lrc::api::conversation::Info& conversation,
                                   const lrc::api::account::Info& accountInfo,
                                   const QSize& size,
                                   bool displayPresence = true) override;
        QVariant numberCategoryIcon(const QVariant& p,
                                    const QSize& size,
                                    bool displayPresence = false,
                                    bool isPresent = false) override;
        QByteArray toByteArray(const QVariant& pxm) override;
        QVariant personPhoto(const QByteArray& data, const QString& type = "PNG") override;
        QVariant decorationRole(const QModelIndex& index) override;
        QVariant decorationRole(const lrc::api::conversation::Info& conversation,
                                const lrc::api::account::Info& accountInfo) override;
        /**
         * Return the icons associated with the action and its state
         */
        QVariant userActionIcon(const UserActionElement& state) const override;
    };
    
    } // namespace Interfaces