| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -85,9 +85,12 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  for (auto &[param, title, desc, icon, needs_restart] : toggle_defs) { | 
					 | 
					 | 
					 | 
					  for (auto &[param, title, desc, icon, needs_restart] : toggle_defs) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    auto toggle = new ParamControl(param, title, desc, icon, this); | 
					 | 
					 | 
					 | 
					    auto toggle = new ParamControl(param, title, desc, icon, this); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if (needs_restart) { | 
					 | 
					 | 
					 | 
					    bool locked = params.getBool((param + "Lock").toStdString()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      QObject::connect(uiState(), &UIState::engagedChanged, [toggle](bool engaged) { | 
					 | 
					 | 
					 | 
					    toggle->setEnabled(!locked); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        toggle.setEnabled(!engaged); | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    if (needs_restart && !locked) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					      QObject::connect(uiState(), &UIState::engagedChanged, [=](bool engaged) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        toggle->setEnabled(!engaged); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      }); | 
					 | 
					 | 
					 | 
					      }); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      QObject::connect(toggle, &ParamControl::toggleFlipped, [=](bool state) { | 
					 | 
					 | 
					 | 
					      QObject::connect(toggle, &ParamControl::toggleFlipped, [=](bool state) { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -96,9 +99,6 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      }); | 
					 | 
					 | 
					 | 
					      }); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    bool locked = params.getBool((param + "Lock").toStdString()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    toggle->setEnabled(!locked); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    addItem(toggle); | 
					 | 
					 | 
					 | 
					    addItem(toggle); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    toggles[param.toStdString()] = toggle; | 
					 | 
					 | 
					 | 
					    toggles[param.toStdString()] = toggle; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |