MainWindowViewModel.cs 943 B

123456789101112131415161718192021222324252627282930313233
  1. using System;
  2. using System.Reactive;
  3. using ReactiveUI;
  4. namespace RenderDemo.ViewModels
  5. {
  6. public class MainWindowViewModel : ReactiveObject
  7. {
  8. private bool drawDirtyRects = false;
  9. private bool drawFps = true;
  10. public MainWindowViewModel()
  11. {
  12. ToggleDrawDirtyRects = ReactiveCommand.Create(() => DrawDirtyRects = !DrawDirtyRects);
  13. ToggleDrawFps = ReactiveCommand.Create(() => DrawFps = !DrawFps);
  14. }
  15. public bool DrawDirtyRects
  16. {
  17. get { return drawDirtyRects; }
  18. set { this.RaiseAndSetIfChanged(ref drawDirtyRects, value); }
  19. }
  20. public bool DrawFps
  21. {
  22. get { return drawFps; }
  23. set { this.RaiseAndSetIfChanged(ref drawFps, value); }
  24. }
  25. public ReactiveCommand<Unit, bool> ToggleDrawDirtyRects { get; }
  26. public ReactiveCommand<Unit, bool> ToggleDrawFps { get; }
  27. }
  28. }