Exemple #1
0
        private void UpdateJobGui(IList <CIJob> jobs)
        {
            // Clear the current jobs list
            if (JobListView.InvokeRequired)
            {
                JobListView.Invoke((MethodInvoker) delegate { JobListView.Items.Clear(); });
            }
            else
            {
                JobListView.Items.Clear();
            }

            // Set the list view height
            if (JobListView.InvokeRequired)
            {
                JobListView.Invoke((MethodInvoker) delegate { JobListView.SmallImageList = new ImageList()
                                                              {
                                                                  ImageSize = new Size(1, 26)
                                                              }; });
            }
            else
            {
                JobListView.SmallImageList = new ImageList()
                {
                    ImageSize = new Size(1, 26)
                };
            }

            // Setup each job in the list
            foreach (var job in jobs)
            {
                if (!SettingManager.Instance.BuildStatuses.IsVisible(job.BuildStatus))
                {
                    continue;
                }

                var item = new ListViewItem(new string[]
                {
                    job.BuildId.ToString(),
                    job.Name,
                    job.ServerName,
                    job.TimeStamp.ToLongDateString() + " " + job.TimeStamp.ToLongTimeString(),
                    TimeSpan.FromSeconds(job.Duration).ToString("h'h 'm'm 's's'"),
                    job.BuildStatus.ToString()
                });

                item.BackColor = SettingManager.Instance.BuildStatuses.MapColor(job.BuildStatus);
                item.ForeColor = Color.Black;

                if (JobListView.InvokeRequired)
                {
                    JobListView.Invoke((MethodInvoker) delegate { JobListView.Items.Add(item); });
                }
                else
                {
                    JobListView.Items.Add(item);
                }
            }
        }
Exemple #2
0
        private void UpdateJobGui(IList <CIJob> jobs)
        {
            var guiJobs = jobs.OrderBy(a => a.BuildStatus).ToList();

            if (JobListView.InvokeRequired)
            {
                JobListView.Invoke((MethodInvoker) delegate { JobListView.Items.Clear(); });
            }
            else
            {
                JobListView.Items.Clear();
            }

            if (JobListView.InvokeRequired)
            {
                JobListView.Invoke((MethodInvoker) delegate { JobListView.SmallImageList = new ImageList()
                                                              {
                                                                  ImageSize = new Size(1, 26)
                                                              }; });
            }
            else
            {
                JobListView.SmallImageList = new ImageList()
                {
                    ImageSize = new Size(1, 26)
                };
            }

            foreach (var job in guiJobs)
            {
                var item = new ListViewItem(new string[]
                {
                    job.BuildId.ToString(),
                    job.Name,
                    job.ServerName,
                    job.TimeStamp.ToLongDateString() + " " + job.TimeStamp.ToLongTimeString(),
                    job.Duration + "ms",
                    job.BuildStatus.ToString()
                });

                switch (job.BuildStatus)
                {
                case BuildStatusType.Failed:
                    item.BackColor = Preferences.FAIL_COLOR;
                    break;

                case BuildStatusType.Success:
                    item.BackColor = Preferences.SUCCESS_COLOR;
                    break;

                case BuildStatusType.Unstable:
                    item.BackColor = Preferences.UNSTABLE_COLOR;
                    break;

                case BuildStatusType.Building:
                    item.BackColor = Preferences.BUILDING_COLOR;
                    break;

                case BuildStatusType.Disabled:
                case BuildStatusType.NotBuilt:
                case BuildStatusType.Unknown:
                    item.BackColor = Preferences.DISABLED_COLOR;
                    break;
                }

                item.ForeColor = Color.Black;

                if (JobListView.InvokeRequired)
                {
                    JobListView.Invoke((MethodInvoker) delegate { JobListView.Items.Add(item); });
                }
                else
                {
                    JobListView.Items.Add(item);
                }
            }
        }