/// <summary> /// Adds the hidden service controls. /// </summary> /// <param name="group">The group.</param> /// <param name="settings">The settings.</param> /// <param name="canService">If set to <c>true</c> this service can be enabled.</param> private void AddHiddenServiceControls(UIHelperBase group, Settings.HiddenServiceSettings settings, bool canService) { if (canService) { group.AddCheckbox( "Dispatch " + settings.VehicleNamePlural.ToLower(), settings.DispatchVehicles, value => { try { if (settings.DispatchVehicles != value) { settings.DispatchVehicles = value; Global.Settings.Save(); Global.ReInitializeHandlers(); } } catch (Exception ex) { Log.Error(this, "CreateWreckingRecoveryGroup", ex, settings.VehicleNamePlural, "DispatchVehicles", value); } }); } else { UIComponent checkBox = group.AddCheckbox( "Dispatch " + settings.VehicleNamePlural.ToLower(), false, value => { }) as UIComponent; checkBox.Disable(); } group.AddExtendedSlider( settings.VehicleNameSingular + " delay", 0.0f, 60.0f * 24.0f, 0.01f, (float)settings.DelayMinutes, true, value => { try { if (settings.DelayMinutes != (double)value) { settings.DelayMinutes = (double)value; Global.BuildingUpdateNeeded = true; Global.Settings.Save(); } } catch (Exception ex) { Log.Error(this, "CreateWreckingRecoveryGroup", ex, settings.VehicleNamePlural, "DelayMinutes", value); } }); }