AA2Install.formMain.updateStatus C# (CSharp) Method

updateStatus() private method

private updateStatus ( string entry, LogIcon icon = LogIcon.Ready, bool displayTime = true, bool onlyStatusBar = false ) : void
entry string
icon LogIcon
displayTime bool
onlyStatusBar bool
return void
        private void updateStatus(string entry, LogIcon icon = LogIcon.Ready, bool displayTime = true, bool onlyStatusBar = false)
        {
            if (statusUpdated != null)
                statusUpdated(entry);
            if (onlyStatusBar)
            {
                labelStatus.GetCurrentParent().HybridInvoke(() => 
                    labelStatus.Text = entry);
            }
            else
            {
                Console.ProgramLog.Add(new LogEntry(entry, icon));

                lsvLog.HybridInvoke(() =>
                {
                    if (lsvLog.Items.Count > 0 && showTime)
                    {
                        lsvLog.Items[lsvLog.Items.Count - 1].SubItems.Add((getTimeSinceLastCheck().TotalMilliseconds / 1000).ToString("F2") + "s");
                    }
                    showTime = displayTime;
                    switch (icon)
                    {
                        case LogIcon.Error:
                        case LogIcon.Warning:
                            lsvLog.Items.Add(entry, (int)icon);
                            break;
                        default:
                            lsvLog.Items.Add(entry, (int)icon);
                            labelStatus.Text = entry;
                            break;
                    }
                });
            }

        }
        #endregion