/// <summary> /// Sets up the columns of a listview for displaying OrgItem lists. /// </summary> /// <param name="setup">Setup type for selecting which column will be enabled</param> /// <param name="lv">The listview to setup columns for</param> /// <returns>Dictionary of column types and the column for that type that was set in the listview</returns> public static Dictionary<OrgColumnType, OrgItemColumn> SetOrgItemListColumns(OrgColumnSetup setup, ListView lv) { // Initialize columns dictionary Dictionary<OrgColumnType, OrgItemColumn> scanColumns = new Dictionary<OrgColumnType, OrgItemColumn>(); int columnOrder = 0; // Select which columns will be enabled based on setup OrgColumnType columnsToAdd = OrgColumnType.Source_Folder | OrgColumnType.Source_File | OrgColumnType.Action | OrgColumnType.Destination_Folder | OrgColumnType.Destination_File; if (setup == OrgColumnSetup.DirectoryScan || setup == OrgColumnSetup.MissingCheck) columnsToAdd |= OrgColumnType.Category; if (setup == OrgColumnSetup.MissingCheck) columnsToAdd |= OrgColumnType.Status | OrgColumnType.Show | OrgColumnType.Season | OrgColumnType.Episode; if (setup == OrgColumnSetup.Queue) columnsToAdd |= OrgColumnType.Progress; if (setup == OrgColumnSetup.Log) columnsToAdd |= OrgColumnType.DateTime; if (setup == OrgColumnSetup.RootFolderCheck) columnsToAdd |= OrgColumnType.Movie; // Add the enabled columns to the listview lv.Columns.Clear(); foreach (OrgColumnType type in Enum.GetValues(typeof(OrgColumnType))) if ((type & columnsToAdd) > 0) { scanColumns.Add(type, new OrgItemColumn(type, columnOrder++)); lv.Columns.Add(scanColumns[type].Header); } // Return columns dictionary return scanColumns; }
/// <summary> /// Sets up the columns of a listview for displaying OrgItem lists. /// </summary> /// <param name="setup">Setup type for selecting which column will be enabled</param> /// <param name="lv">The listview to setup columns for</param> /// <returns>Dictionary of column types and the column for that type that was set in the listview</returns> public static Dictionary <OrgColumnType, OrgItemColumn> SetOrgItemListColumns(OrgColumnSetup setup, ListView lv) { // Initialize columns dictionary Dictionary <OrgColumnType, OrgItemColumn> scanColumns = new Dictionary <OrgColumnType, OrgItemColumn>(); int columnOrder = 0; // Select which columns will be enabled based on setup OrgColumnType columnsToAdd = OrgColumnType.Source_Folder | OrgColumnType.Source_File | OrgColumnType.Action | OrgColumnType.Destination_Folder | OrgColumnType.Destination_File; if (setup == OrgColumnSetup.DirectoryScan || setup == OrgColumnSetup.MissingCheck) { columnsToAdd |= OrgColumnType.Category; } if (setup == OrgColumnSetup.MissingCheck) { columnsToAdd |= OrgColumnType.Status | OrgColumnType.Show | OrgColumnType.Season | OrgColumnType.Episode; } if (setup == OrgColumnSetup.Queue) { columnsToAdd |= OrgColumnType.Progress; } if (setup == OrgColumnSetup.Log) { columnsToAdd |= OrgColumnType.DateTime; } if (setup == OrgColumnSetup.RootFolderCheck) { columnsToAdd |= OrgColumnType.Movie; } // Add the enabled columns to the listview lv.Columns.Clear(); foreach (OrgColumnType type in Enum.GetValues(typeof(OrgColumnType))) { if ((type & columnsToAdd) > 0) { scanColumns.Add(type, new OrgItemColumn(type, columnOrder++)); lv.Columns.Add(scanColumns[type].Header); } } // Return columns dictionary return(scanColumns); }