File indexing completed on 2024-05-12 09:41:26

0001 /*
0002  *   SPDX-FileCopyrightText: 2010 Dario Freddi <drf@kde.org>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #include "powerdevilbackendinterface.h"
0008 #include "brightnessosdwidget.h"
0009 #include "powerdevil_debug.h"
0010 #include <QDebug>
0011 
0012 namespace PowerDevil
0013 {
0014 
0015 BackendInterface::BackendInterface(QObject *parent)
0016     : QObject(parent)
0017 {
0018 }
0019 
0020 BackendInterface::~BackendInterface()
0021 {
0022 }
0023 
0024 int BackendInterface::screenBrightnessSteps()
0025 {
0026     m_screenBrightnessLogic.setValueMax(screenBrightnessMax());
0027     return m_screenBrightnessLogic.steps();
0028 }
0029 
0030 int BackendInterface::keyboardBrightnessSteps()
0031 {
0032     m_keyboardBrightnessLogic.setValueMax(keyboardBrightnessMax());
0033     return m_keyboardBrightnessLogic.steps();
0034 }
0035 
0036 void BackendInterface::setBackendIsReady()
0037 {
0038     Q_EMIT backendReady();
0039 }
0040 
0041 void BackendInterface::onScreenBrightnessChanged(int value, int valueMax)
0042 {
0043     m_screenBrightnessLogic.setValueMax(valueMax);
0044     m_screenBrightnessLogic.setValue(value);
0045 
0046     Q_EMIT screenBrightnessChanged(m_screenBrightnessLogic.info());
0047 }
0048 
0049 void BackendInterface::onKeyboardBrightnessChanged(int value, int valueMax, bool notify)
0050 {
0051     m_keyboardBrightnessLogic.setValueMax(valueMax);
0052     m_keyboardBrightnessLogic.setValue(value);
0053 
0054     if (notify) {
0055         BrightnessOSDWidget::show(m_keyboardBrightnessLogic.percentage(value), PowerDevil::BackendInterface::Keyboard);
0056     }
0057 
0058     Q_EMIT keyboardBrightnessChanged(m_keyboardBrightnessLogic.info());
0059 }
0060 
0061 int BackendInterface::calculateNextScreenBrightnessStep(int value, int valueMax, BrightnessLogic::BrightnessKeyType keyType)
0062 {
0063     m_screenBrightnessLogic.setValueMax(valueMax);
0064     m_screenBrightnessLogic.setValue(value);
0065 
0066     return m_screenBrightnessLogic.action(keyType);
0067 }
0068 
0069 int BackendInterface::calculateNextKeyboardBrightnessStep(int value, int valueMax, BrightnessLogic::BrightnessKeyType keyType)
0070 {
0071     m_keyboardBrightnessLogic.setValueMax(valueMax);
0072     m_keyboardBrightnessLogic.setValue(value);
0073     m_keyboardBrightnessLogic.setValueBeforeTogglingOff(m_keyboardBrightnessBeforeTogglingOff);
0074 
0075     return m_keyboardBrightnessLogic.action(keyType);
0076 }
0077 }
0078 
0079 #include "moc_powerdevilbackendinterface.cpp"