50 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			50 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | //#define SR_CONSOLE_DEBUG | |||
|  | 
 | |||
|  | namespace SRDebugger.UI.Tabs | |||
|  | { | |||
|  |     using SRF; | |||
|  |     using UnityEngine.UI; | |||
|  | 
 | |||
|  |     public class ProfilerTabController : SRMonoBehaviourEx | |||
|  |     { | |||
|  |         private bool _isDirty; | |||
|  | 
 | |||
|  |         [RequiredField] public Toggle PinToggle; | |||
|  | 
 | |||
|  |         protected override void Start() | |||
|  |         { | |||
|  |             base.Start(); | |||
|  | 
 | |||
|  |             PinToggle.onValueChanged.AddListener(PinToggleValueChanged); | |||
|  |             Refresh(); | |||
|  |         } | |||
|  | 
 | |||
|  |         private void PinToggleValueChanged(bool isOn) | |||
|  |         { | |||
|  |             SRDebug.Instance.IsProfilerDocked = isOn; | |||
|  |         } | |||
|  | 
 | |||
|  |         protected override void OnEnable() | |||
|  |         { | |||
|  |             base.OnEnable(); | |||
|  |             _isDirty = true; | |||
|  |         } | |||
|  | 
 | |||
|  |         protected override void Update() | |||
|  |         { | |||
|  |             base.Update(); | |||
|  | 
 | |||
|  |             if (_isDirty) | |||
|  |             { | |||
|  |                 Refresh(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void Refresh() | |||
|  |         { | |||
|  |             PinToggle.isOn = SRDebug.Instance.IsProfilerDocked; | |||
|  |             _isDirty = false; | |||
|  |         } | |||
|  |     } | |||
|  | } |