Compare commits
7 Commits
c930e316c4
...
v1.2
| Author | SHA1 | Date | |
|---|---|---|---|
| e796ff3663 | |||
| de58e2d472 | |||
| 314b281c03 | |||
| 5253dc1df6 | |||
| 4bdedbc110 | |||
| 42043bcd55 | |||
| 45116d8857 |
@@ -60,6 +60,9 @@
|
|||||||
<layout class="QGridLayout" name="gridLayout_9">
|
<layout class="QGridLayout" name="gridLayout_9">
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QSlider" name="monitorMaxBrightnessSlider">
|
<widget class="QSlider" name="monitorMaxBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -74,6 +77,9 @@
|
|||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QSlider" name="monitorMinBrightnessSlider">
|
<widget class="QSlider" name="monitorMinBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -117,6 +123,9 @@
|
|||||||
<layout class="QGridLayout" name="gridLayout_2">
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QSlider" name="monitorBrightnessSlider">
|
<widget class="QSlider" name="monitorBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -160,6 +169,9 @@
|
|||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QSlider" name="monitorOverallMinBrightnessSlider">
|
<widget class="QSlider" name="monitorOverallMinBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -184,6 +196,9 @@
|
|||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QSlider" name="monitorOverallMaxBrightnessSlider">
|
<widget class="QSlider" name="monitorOverallMaxBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -243,6 +258,9 @@
|
|||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QSlider" name="monitorOverallBrightnessSlider">
|
<widget class="QSlider" name="monitorOverallBrightnessSlider">
|
||||||
|
<property name="value">
|
||||||
|
<number>50</number>
|
||||||
|
</property>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
|
||||||
|
#include <QAbstractButton>
|
||||||
#include <QCloseEvent>
|
#include <QCloseEvent>
|
||||||
#include <QGroupBox>
|
#include <QGroupBox>
|
||||||
#include <QSlider>
|
#include <QSlider>
|
||||||
@@ -28,6 +29,7 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent)
|
|||||||
enumMonitors();
|
enumMonitors();
|
||||||
|
|
||||||
setupMonitorsTab();
|
setupMonitorsTab();
|
||||||
|
setupSensorsTab();
|
||||||
|
|
||||||
setupTrayIcon();
|
setupTrayIcon();
|
||||||
|
|
||||||
@@ -61,15 +63,20 @@ void MainWindow::enumSensors()
|
|||||||
|
|
||||||
void MainWindow::enumMonitors()
|
void MainWindow::enumMonitors()
|
||||||
{
|
{
|
||||||
|
m_mtx.lock();
|
||||||
|
|
||||||
m_ui.monitorDropdown->clear();
|
m_ui.monitorDropdown->clear();
|
||||||
|
m_monitors.clear();
|
||||||
|
|
||||||
auto monitors = enumerateMonitors();
|
auto monitors = enumerateMonitors();
|
||||||
|
|
||||||
for(auto& monitor: monitors) {
|
for(auto& monitor: monitors) {
|
||||||
const auto currentBrightness = monitor.getBrightness();
|
const auto currentBrightness = monitor.getBrightness();
|
||||||
m_ui.monitorDropdown->addItem(monitor.getName());
|
|
||||||
m_monitors.push_back({std::move(monitor), 0.f, 1.f, currentBrightness, false});
|
m_monitors.push_back({std::move(monitor), 0.f, 1.f, currentBrightness, false});
|
||||||
|
m_ui.monitorDropdown->addItem(m_monitors.back().driver.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_mtx.unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::loadIcons()
|
void MainWindow::loadIcons()
|
||||||
@@ -110,12 +117,16 @@ void MainWindow::loadIcons()
|
|||||||
void MainWindow::setupMonitorsTab()
|
void MainWindow::setupMonitorsTab()
|
||||||
{
|
{
|
||||||
connect(m_ui.monitorDropdown, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &MainWindow::updateCurrentMonitorGUI);
|
connect(m_ui.monitorDropdown, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &MainWindow::updateCurrentMonitorGUI);
|
||||||
|
connect(m_ui.monitorEnumerateButton, &QAbstractButton::clicked, [this](bool) { enumMonitors(); });
|
||||||
|
connect(m_ui.monitorResetButton, &QAbstractButton::clicked, [this](bool) { resetAllMonitorSettings(); });
|
||||||
|
|
||||||
setupLimitsSlider();
|
setupLimitsSlider();
|
||||||
setupOverallLimitsSlider();
|
setupOverallLimitsSlider();
|
||||||
|
|
||||||
setupBrightness();
|
setupBrightness();
|
||||||
setupOverallBrightness();
|
setupOverallBrightness();
|
||||||
|
|
||||||
|
resetAllMonitorSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::setupLimitsSlider()
|
void MainWindow::setupLimitsSlider()
|
||||||
@@ -208,6 +219,11 @@ void MainWindow::setupOverallBrightness()
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::setupSensorsTab()
|
||||||
|
{
|
||||||
|
m_ui.tabs->removeTab(1);
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::setupTrayIcon()
|
void MainWindow::setupTrayIcon()
|
||||||
{
|
{
|
||||||
loadIcons();
|
loadIcons();
|
||||||
@@ -259,8 +275,19 @@ void MainWindow::setupCallbackTimer()
|
|||||||
qDebug(ltr("Callback timer started"));
|
qDebug(ltr("Callback timer started"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::resetAllMonitorSettings()
|
||||||
|
{
|
||||||
|
m_ui.monitorOverallMinBrightnessSlider->setValue(0);
|
||||||
|
m_ui.monitorOverallMaxBrightnessSlider->setValue(100);
|
||||||
|
m_ui.monitorOverallOverrideCheck->setCheckState(Qt::CheckState::Unchecked);
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::updateCurrentMonitorGUI(int index)
|
void MainWindow::updateCurrentMonitorGUI(int index)
|
||||||
{
|
{
|
||||||
|
if(index == -1) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
m_ui.monitorMinBrightnessSlider->setValue(utils::map(m_monitors[index].minBrightness, 0.f, 1.f, 0, 100));
|
m_ui.monitorMinBrightnessSlider->setValue(utils::map(m_monitors[index].minBrightness, 0.f, 1.f, 0, 100));
|
||||||
m_ui.monitorMaxBrightnessSlider->setValue(utils::map(m_monitors[index].maxBrightness, 0.f, 1.f, 0, 100));
|
m_ui.monitorMaxBrightnessSlider->setValue(utils::map(m_monitors[index].maxBrightness, 0.f, 1.f, 0, 100));
|
||||||
m_ui.monitorBrightnessSlider->setValue(utils::map(m_monitors[index].brightness, 0.f, 1.f, 0, 100));
|
m_ui.monitorBrightnessSlider->setValue(utils::map(m_monitors[index].brightness, 0.f, 1.f, 0, 100));
|
||||||
@@ -269,6 +296,8 @@ void MainWindow::updateCurrentMonitorGUI(int index)
|
|||||||
|
|
||||||
void MainWindow::updateState()
|
void MainWindow::updateState()
|
||||||
{
|
{
|
||||||
|
m_mtx.lock();
|
||||||
|
|
||||||
qDebug(ltr("Updating state"));
|
qDebug(ltr("Updating state"));
|
||||||
|
|
||||||
bool sensorError = false;
|
bool sensorError = false;
|
||||||
@@ -322,6 +351,8 @@ void MainWindow::updateState()
|
|||||||
if(m_trayIcon) {
|
if(m_trayIcon) {
|
||||||
m_trayIcon->setToolTip(tr("AdaptiveBrightness - %1%").arg(brightness * 100, 0, 'f', 0));
|
m_trayIcon->setToolTip(tr("AdaptiveBrightness - %1%").arg(brightness * 100, 0, 'f', 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_mtx.unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MainWindow::setMonitorBrightness(float& brightness)
|
bool MainWindow::setMonitorBrightness(float& brightness)
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
#include <QIcon>
|
#include <QIcon>
|
||||||
#include <QMainWindow>
|
#include <QMainWindow>
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
|
#include <QMutex>
|
||||||
#include <QSlider>
|
#include <QSlider>
|
||||||
#include <QSystemTrayIcon>
|
#include <QSystemTrayIcon>
|
||||||
#include <QThread>
|
#include <QThread>
|
||||||
@@ -39,9 +40,13 @@ class MainWindow : public QMainWindow {
|
|||||||
void setupBrightness();
|
void setupBrightness();
|
||||||
void setupOverallBrightness();
|
void setupOverallBrightness();
|
||||||
|
|
||||||
|
void setupSensorsTab();
|
||||||
|
|
||||||
void setupTrayIcon();
|
void setupTrayIcon();
|
||||||
void setupCallbackTimer();
|
void setupCallbackTimer();
|
||||||
|
|
||||||
|
void resetAllMonitorSettings();
|
||||||
|
|
||||||
void updateCurrentMonitorGUI(int index);
|
void updateCurrentMonitorGUI(int index);
|
||||||
|
|
||||||
void updateState();
|
void updateState();
|
||||||
@@ -63,6 +68,7 @@ class MainWindow : public QMainWindow {
|
|||||||
|
|
||||||
QThread* m_timerThread = nullptr;
|
QThread* m_timerThread = nullptr;
|
||||||
QTimer* m_timer = nullptr;
|
QTimer* m_timer = nullptr;
|
||||||
|
QMutex m_mtx;
|
||||||
|
|
||||||
struct SensorData {
|
struct SensorData {
|
||||||
Sensor driver;
|
Sensor driver;
|
||||||
|
|||||||
Reference in New Issue
Block a user