/* * We need this function as we want to load the user setting in admin mode, we want to use * the admin model, but load the user settings instead. */ public static MainViewModel LoadAndDirtyUpModelUserOptions(MainViewModel model, bool bFactoryDefaults) { // Load user's current options and make a copy. BuildModel(model, true, bFactoryDefaults, true); List<IOption> currentOptions = model.CheapCopyAllOptions(); // Load the default options. BuildModel(model, false, false, true); // Options in the persisted model that are different to the temporary // model will be made dirty. (No data is copied.) model.DirtyUp(currentOptions); return model; }