dde-dock/frame/item/components/hoverhighlighteffect.cpp
chenjun 2ef1176873 fix: 添加针对源代码的单元测试,添加触发自动测试代码
因为单元测试需要直接测试源代码,而主程序代码中include的单元使用了相对路径
单元测试的CMakeLists和主程序的CMakeLists路径不同,编译单元测试时会提示找不到文件
因此设置搜索路径,并修改各单元引用头文件的路径。在单元测试的CMakeLists中添加需要依赖

Log: 添加针对源代码的单元测试,添加触发自动测试代码
Change-Id: I0e0bc92c28d6cee42fc52064fc360c58f7c02826
2020-12-22 10:10:20 +08:00

47 lines
1.2 KiB
C++

/*
* Copyright (C) 2011 ~ 2018 Deepin Technology Co., Ltd.
*
* Author: sbw <sbw@sbw.so>
*
* Maintainer: sbw <sbw@sbw.so>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* This program 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 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/>.
*/
#include "hoverhighlighteffect.h"
#include "imagefactory.h"
#include <QPainter>
#include <QDebug>
HoverHighlightEffect::HoverHighlightEffect(QObject *parent)
: QGraphicsEffect(parent)
, m_highlighting(false)
{
}
void HoverHighlightEffect::draw(QPainter *painter)
{
const QPixmap pix = sourcePixmap(Qt::DeviceCoordinates);
if (m_highlighting)
{
painter->drawPixmap(0, 0, ImageFactory::lighterEffect(pix));
} else {
painter->drawPixmap(0, 0, pix);
}
}