| 
									
										
										
										
											2017-06-16 01:42:12 +02:00
										 |  |  | // Copyright 2017 Dolphin Emulator Project
 | 
					
						
							|  |  |  | // Licensed under GPLv2+
 | 
					
						
							|  |  |  | // Refer to the license.txt file included.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-07 00:40:15 +02:00
										 |  |  | #include "DolphinQt/Config/Graphics/GraphicsSlider.h"
 | 
					
						
							| 
									
										
										
										
											2017-06-16 01:42:12 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-08-23 07:11:52 -04:00
										 |  |  | #include <QSignalBlocker>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-07-09 16:17:36 -07:00
										 |  |  | #include "Common/Config/Config.h"
 | 
					
						
							| 
									
										
										
										
											2018-05-28 03:48:04 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-07 00:40:15 +02:00
										 |  |  | #include "DolphinQt/Settings.h"
 | 
					
						
							| 
									
										
										
										
											2017-06-16 01:42:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | GraphicsSlider::GraphicsSlider(int minimum, int maximum, const Config::ConfigInfo<int>& setting, | 
					
						
							|  |  |  |                                int tick) | 
					
						
							|  |  |  |     : QSlider(Qt::Horizontal), m_setting(setting) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   setMinimum(minimum); | 
					
						
							|  |  |  |   setMaximum(maximum); | 
					
						
							|  |  |  |   setTickInterval(tick); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   setValue(Config::Get(setting)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   connect(this, &GraphicsSlider::valueChanged, this, &GraphicsSlider::Update); | 
					
						
							| 
									
										
										
										
											2017-09-20 13:34:24 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-20 09:33:52 -07:00
										 |  |  |   connect(&Settings::Instance(), &Settings::ConfigChanged, [this] { | 
					
						
							| 
									
										
										
										
											2017-09-20 13:34:24 +02:00
										 |  |  |     QFont bf = font(); | 
					
						
							|  |  |  |     bf.setBold(Config::GetActiveLayerForConfig(m_setting) != Config::LayerType::Base); | 
					
						
							|  |  |  |     setFont(bf); | 
					
						
							| 
									
										
										
										
											2018-05-03 14:31:34 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-08-23 07:11:52 -04:00
										 |  |  |     const QSignalBlocker blocker(this); | 
					
						
							| 
									
										
										
										
											2018-04-29 12:17:39 +02:00
										 |  |  |     setValue(Config::Get(m_setting)); | 
					
						
							| 
									
										
										
										
											2017-09-20 13:34:24 +02:00
										 |  |  |   }); | 
					
						
							| 
									
										
										
										
											2017-06-16 01:42:12 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void GraphicsSlider::Update(int value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   Config::SetBaseOrCurrent(m_setting, value); | 
					
						
							|  |  |  | } |