private static void OnEditorUpdate() { var controller = TypeSafeController.Instance; switch (controller.State) { case States.Idle: { if (_previousState != States.Idle) { SRProgressBar.Clear(); } break; } case States.ScanQueued: { SRProgressBar.Display("TypeSafe", "Scan Queued...", 0); break; } case States.Scanning: { var progress = (float)controller.ItemsCompleted / controller.TotalItems; if (controller.TotalItems == 0) { progress = 0f; } SRProgressBar.Display("TypeSafe", string.Format("Scanning ({0}/{1})", controller.ItemsCompleted + 1, controller.TotalItems), progress); break; } case States.Compiling: { SRProgressBar.Display("TypeSafe", "Compiling...", 1f); break; } case States.Waiting: { var timeLeft = Settings.Instance.MinimumBuildTime - controller.BuildTimeElapsed; SRProgressBar.Display("TypeSafe", string.Format("Waiting... ({0:#0.0}s)", timeLeft), Mathf.Clamp01((float)controller.BuildTimeElapsed / Settings.Instance.MinimumBuildTime)); break; } } _previousState = controller.State; }
public static void FakeProgress() { SRProgressBar.Display("TypeSafe", "Scanning (60/253)", 0.2f); }