1 /*
2 * AvatarProvider.cpp
3 * Copyright (C) 2017 Belledonne Communications, Grenoble, France
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 *
19 * Created on: February 2, 2017
20 * Author: Ronan Abhamon
21 */
22
23 #include "../../utils/Utils.hpp"
24 #include "../paths/Paths.hpp"
25
26 #include "AvatarProvider.hpp"
27
28 // =============================================================================
29
30 const QString AvatarProvider::PROVIDER_ID = "avatar";
31
AvatarProvider()32 AvatarProvider::AvatarProvider () : QQuickImageProvider(
33 QQmlImageProviderBase::Image,
34 QQmlImageProviderBase::ForceAsynchronousImageLoading
35 ) {
36 mAvatarsPath = ::Utils::coreStringToAppString(Paths::getAvatarsDirPath());
37 }
38
requestImage(const QString & id,QSize * size,const QSize &)39 QImage AvatarProvider::requestImage (const QString &id, QSize *size, const QSize &) {
40 QImage image(mAvatarsPath + id);
41 *size = image.size();
42 return image;
43 }
44