DebuggerWidget.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using Gtk;
  2. using System;
  3. using GUI = Gtk.Builder.ObjectAttribute;
  4. namespace Ryujinx.Debugger.UI
  5. {
  6. public class DebuggerWidget : Box
  7. {
  8. public event EventHandler DebuggerEnabled;
  9. public event EventHandler DebuggerDisabled;
  10. #pragma warning disable CS0649
  11. [GUI] Notebook _widgetNotebook;
  12. #pragma warning restore CS0649
  13. public DebuggerWidget() : this(new Builder("Ryujinx.Debugger.UI.DebuggerWidget.glade")) { }
  14. public DebuggerWidget(Builder builder) : base(builder.GetObject("_debuggerBox").Handle)
  15. {
  16. builder.Autoconnect(this);
  17. LoadProfiler();
  18. }
  19. public void LoadProfiler()
  20. {
  21. ProfilerWidget widget = new ProfilerWidget();
  22. widget.RegisterParentDebugger(this);
  23. _widgetNotebook.AppendPage(widget, new Label("Profiler"));
  24. }
  25. public void Enable()
  26. {
  27. DebuggerEnabled.Invoke(this, null);
  28. }
  29. public void Disable()
  30. {
  31. DebuggerDisabled.Invoke(this, null);
  32. }
  33. }
  34. }