mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-02-07 21:23:31 +01:00
![TryTwo](/assets/img/avatar_default.png)
This reduces code duplication in the different ConfigControls. This is helpful for the next commit, which will modify the now deduplicated code.
35 lines
809 B
C++
35 lines
809 B
C++
// Copyright 2023 Dolphin Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include "DolphinQt/Config/ConfigControls/ConfigControl.h"
|
|
#include "DolphinQt/Config/ToolTipControls/ToolTipSlider.h"
|
|
|
|
namespace Config
|
|
{
|
|
template <typename T>
|
|
class Info;
|
|
}
|
|
|
|
// Automatically converts an int slider into a float one.
|
|
// Do not read the int values or ranges directly from it.
|
|
class ConfigFloatSlider final : public ConfigControl<ToolTipSlider>
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
ConfigFloatSlider(float minimum, float maximum, const Config::Info<float>& setting, float step);
|
|
void Update(int value);
|
|
|
|
// Returns the adjusted float value
|
|
float GetValue() const;
|
|
|
|
protected:
|
|
void OnConfigChanged() override;
|
|
|
|
private:
|
|
float m_minimum;
|
|
float m_step;
|
|
const Config::Info<float>& m_setting;
|
|
};
|