public ApplicationWindowDiagnostics(ApplicationWindow owner, int nFrames = 5) { Owner = owner; PanelPaint = new StatusTextPanel("diagnostics_paint", Docking.Right); PanelLayout = new StatusTextPanel("diagnostics_layout", Docking.Right); style = new ApplicationWindowDiagnosticStyle(); PanelPaint.Styles.SetStyle(style, WidgetStates.Default); PanelLayout.Styles.SetStyle(style, WidgetStates.Default); PanelPaint.Click += Panel_Click; PanelLayout.Click += Panel_Click; //PanelLayout.Style.BackColorBrush.Color = SolarizedColors.Green; //PanelPaint.Style.BackColorBrush.Color = SolarizedColors.Cyan; Owner.StatusBar.AddChild(PanelPaint); Owner.StatusBar.AddChild(PanelLayout); LayoutMeter = new FramePerformanceMeter(nFrames); PaintMeter = new FramePerformanceMeter(nFrames); PanelPaint.InvalidateOnHeartBeat = true; PanelLayout.InvalidateOnHeartBeat = true; Owner.Controls.SubscribeHeartbeat(PanelPaint); Owner.Controls.SubscribeHeartbeat(PanelLayout); }
public StatusBar(string name, IWidgetStyle style) : base(name, Docking.Bottom, style) { this.ZIndex = 5000; this.Padding = new Padding(6, 3, 5, 3); this.Margin = Padding.Empty; DefaultPanel = new StatusTextPanel("default", Docking.Fill, ""); this.AddChild(DefaultPanel); ProgressPanel = new StatusProgressPanel("progress"); ProgressPanel.Visible = false; this.AddChild(ProgressPanel); RootControllerObserver = new Observer <EventMessage> (OnNext, OnError, OnCompleted); ReadyStatusString = "Ready."; ShowStatus(); }