iSpyApplication.MainForm.VolumeControlFileListUpdated C# (CSharp) Method

VolumeControlFileListUpdated() private method

private VolumeControlFileListUpdated ( object sender ) : void
sender object
return void
        void VolumeControlFileListUpdated(object sender)
        {
            lock (ThreadLock)
            {
                try {
                    var vl = sender as VolumeLevel;
                    if (vl != null)
                    {
                        Masterfilelist.RemoveAll(p => p.ObjectId == vl.Micobject.id && p.ObjectTypeId == 1);
                        var l = vl.FileList.ToList();
                        foreach (var ff in l)
                        {
                            Masterfilelist.Add(new FilePreview(ff.Filename, ff.DurationSeconds, vl.Micobject.name,
                                                               ff.CreatedDateTicks, 1, vl.Micobject.id, ff.MaxAlarm,ff.IsTimelapse,ff.IsMergeFile));
                        }
                        if (!vl.LoadedFiles)
                        {
                            vl.LoadedFiles = true;
                            //last one?
                            bool all = true;
                            foreach (Control c in _pnlCameras.Controls)
                            {
                                var cameraWindow = c as CameraWindow;
                                if (cameraWindow != null)
                                {
                                    if (!cameraWindow.LoadedFiles)
                                    {
                                        all = false;
                                        break;
                                    }
                                }
                                var volumeLevel = c as VolumeLevel;
                                if (volumeLevel != null)
                                {
                                    if (!volumeLevel.LoadedFiles)
                                    {
                                        all = false;
                                        break;
                                    }
                                }
                            }
                            if (all)
                            {
                                flowPreview.Loading = false;
                                LoadPreviews();
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    Logger.LogExceptionToFile(ex, "FileListUpdated");
                }
            }
        }
MainForm