public SettingModel(ISettingsCollection settings, IVersionControl versionControl) { //Static Data AvaliableThemes = ThemeManager.AppThemes.Select(x => new AccentThemeModel { Name = x.Name.Replace("Base", ""), Colour = x.Resources["WhiteColorBrush"] as Brush, BorderColour = x.Resources["BlackColorBrush"] as Brush }).ToList(); AvaliableAccents = ThemeManager.Accents.Select(x => new AccentThemeModel { Name = x.Name, Colour = x.Resources["AccentColorBrush"] as Brush, BorderColour = x.Resources["AccentColorBrush"] as Brush }).ToList(); //AppSettings AlertWhenIdle = settings.AppSettings.AlertWhenNotRunning; AlertMinutes = (int)TimeSpan.FromMilliseconds(settings.AppSettings.AlertTimeMilliseconds).TotalMinutes; TrackIdle = settings.AppSettings.TrackIdleTime; TrackIdleThresholdMinutes = (int)TimeSpan.FromMilliseconds(settings.AppSettings.IdleTimeThresholdMilliseconds).TotalMinutes; TrackLock = settings.AppSettings.TrackLockTime; TrackLockThresholdMinutes = (int)TimeSpan.FromMilliseconds(settings.AppSettings.LockTimeThresholdMilliseconds).TotalMinutes; KeepTimersForDays = settings.AppSettings.KeepTimersForDays; AutoUpdate = settings.AppSettings.AutoUpdate; AllowTracking = settings.AppSettings.UsageTracking; TargetHoursPerDay = settings.AppSettings.TargetLogPerDay.Hours; TargetMinutesPerDay = settings.AppSettings.TargetLogPerDay.Minutes; StartOfWeek = settings.AppSettings.StartOfWeek.ToString(); DefaultTimers = string.Join(",", settings.AppSettings.DefaultTimers ?? new List<string>()); WorkingDays = new List<WorkingDay>(); foreach (DayOfWeek dayOfWeek in Enum.GetValues(typeof(DayOfWeek))) { var isChecked = settings.AppSettings.ExportDays.Contains(dayOfWeek); WorkingDays.Add(new WorkingDay(isChecked, dayOfWeek)); } //UI Settings Theme = AvaliableThemes.FirstOrDefault(x => x.Name == settings.UiSettings.Theme) ?? AvaliableThemes.First(); Accent = AvaliableAccents.FirstOrDefault(x => x.Name == settings.UiSettings.Accent) ?? AvaliableAccents.First(); StartOnBoot = versionControl.IsAutomatedDeploy && registryKey.GetValue(versionControl.AppName) != null; TopMostOnFlyoutOpen = settings.UiSettings.TopMostOnFlyoutOpen; //Jira Settings JiraUrl = settings.JiraConnectionSettings.JiraUrl; JiraUsername = settings.JiraConnectionSettings.JiraUsername; JiraPassword = settings.JiraConnectionSettings.JiraPassword; //Export Settings TrackingOnly = settings.ExportSettings.TrackingOnly; ExportAll = settings.ExportSettings.ExportPromptAll; ExportPrompts = new List<ExportPrompt> { new ExportPrompt("Locked", settings.ExportSettings.ExportPrompt.OnAddIdle, "Add Locked Time"), new ExportPrompt("Manual", settings.ExportSettings.ExportPrompt.OnManualAdjust, "Manual Timer Adjustment"), new ExportPrompt("Stop", settings.ExportSettings.ExportPrompt.OnStop, "Stop Timer"), new ExportPrompt("Pre", settings.ExportSettings.ExportPrompt.OnCreatePreloaded, "Add Pre-Loaded Timer"), }; RemainingAdjustmentValues = new List<RemainingAdjustmentValue> { new RemainingAdjustmentValue(DefaultRemaining.Auto, "Adjust Automatically"), new RemainingAdjustmentValue(DefaultRemaining.Leave, "Leave Remaining"), new RemainingAdjustmentValue(DefaultRemaining.Set, "Set Value") }; SelectedRemainingAdjustmentValue = RemainingAdjustmentValues.First(x => x.Remaining == settings.ExportSettings.DefaultRemainingValue); CommentPrefix = settings.ExportSettings.ExportCommentPrefix; DefaultComment = settings.ExportSettings.EmptyExportComment; }
public TrackUsage(IVersionControl versionControl, ISettingsCollection settingsCollection, InstanceType instanceType) { this.versionControl = versionControl; this.settingsCollection = settingsCollection; this.instanceType = instanceType; SetupBrowser(); TrackAppUsage(TrackingType.AppLoad); }
public SettingModel(ISettingsCollection settings, IVersionControl versionControl) { //Static Data AvaliableThemes = ThemeManager.AppThemes.Select(x => new AccentThemeModel { Name = x.Name.Replace("Base", ""), Colour = x.Resources["WhiteColorBrush"] as Brush, BorderColour = x.Resources["BlackColorBrush"] as Brush }).ToList(); AvaliableAccents = ThemeManager.Accents.Select(x => new AccentThemeModel { Name = x.Name, Colour = x.Resources["AccentColorBrush"] as Brush, BorderColour = x.Resources["AccentColorBrush"] as Brush }).ToList(); //AppSettings AlertWhenIdle = settings.AppSettings.AlertWhenNotRunning; AlertMinutes = (settings.AppSettings.AlertTimeMilliseconds / 1000 / 60); KeepTimersForDays = settings.AppSettings.KeepTimersForDays; AutoUpdate = settings.AppSettings.AutoUpdate; AllowTracking = settings.AppSettings.UsageTracking; TargetHoursPerDay = settings.AppSettings.TargetLogPerDay.Hours; TargetMinutesPerDay = settings.AppSettings.TargetLogPerDay.Minutes; StartOfWeek = settings.AppSettings.StartOfWeek.ToString(); WorkingDays = new List <WorkingDay>(); foreach (DayOfWeek dayOfWeek in Enum.GetValues(typeof(DayOfWeek))) { var isChecked = settings.AppSettings.ExportDays.Contains(dayOfWeek); WorkingDays.Add(new WorkingDay(isChecked, dayOfWeek)); } //UI Settings Theme = AvaliableThemes.FirstOrDefault(x => x.Name == settings.UiSettings.Theme) ?? AvaliableThemes.First(); Accent = AvaliableAccents.FirstOrDefault(x => x.Name == settings.UiSettings.Accent) ?? AvaliableAccents.First(); StartOnBoot = versionControl.IsAutomatedDeploy && registryKey.GetValue(versionControl.AppName) != null; //Jira Settings JiraUrl = settings.JiraConnectionSettings.JiraUrl; JiraUsername = settings.JiraConnectionSettings.JiraUsername; JiraPassword = settings.JiraConnectionSettings.JiraPassword; //Export Settings ExportAll = settings.ExportSettings.ExportPromptAll; ExportPrompts = new List <ExportPrompt> { new ExportPrompt("Idle", settings.ExportSettings.ExportPrompt.OnAddIdle, "Add Idle Time"), new ExportPrompt("Manual", settings.ExportSettings.ExportPrompt.OnManualAdjust, "Manual Timer Adjustment"), new ExportPrompt("Stop", settings.ExportSettings.ExportPrompt.OnStop, "Stop Timer"), new ExportPrompt("Pre", settings.ExportSettings.ExportPrompt.OnCreatePreloaded, "Add Pre-Loaded Timer"), }; RemainingAdjustmentValues = new List <RemainingAdjustmentValue> { new RemainingAdjustmentValue(DefaultRemaining.Auto, "Adjust Automatically"), new RemainingAdjustmentValue(DefaultRemaining.Leave, "Leave Remaining"), new RemainingAdjustmentValue(DefaultRemaining.Set, "Set Value") }; SelectedRemainingAdjustmentValue = RemainingAdjustmentValues.First(x => x.Remaining == settings.ExportSettings.DefaultRemainingValue); CommentPrefix = settings.ExportSettings.ExportCommentPrefix; DefaultComment = settings.ExportSettings.EmptyExportComment; }
public void UpdateSettings(ISettingsCollection settings, IVersionControl versionControl) { //AppSettings settings.AppSettings.AlertWhenNotRunning = AlertWhenIdle; settings.AppSettings.AlertTimeMilliseconds = AlertMinutes * 60 * 1000; settings.AppSettings.KeepTimersForDays = KeepTimersForDays; settings.AppSettings.AutoUpdate = AutoUpdate; settings.AppSettings.UsageTracking = AllowTracking; settings.AppSettings.TargetLogPerDay = new TimeSpan(TargetHoursPerDay, TargetMinutesPerDay, 0); settings.AppSettings.ExportDays = WorkingDays.Where(x => x.IsChecked).Select(x => x.DayOfWeek).ToList(); settings.AppSettings.StartOfWeek = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), StartOfWeek, true); //UI Settings settings.UiSettings.Theme = Theme.Name; settings.UiSettings.Accent = Accent.Name; if (versionControl.IsAutomatedDeploy) { if (StartOnBoot) { var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "Gallifrey", $"{versionControl.AppName}.appref-ms"); registryKey.SetValue(versionControl.AppName, path); } else { registryKey.DeleteValue(versionControl.AppName, false); } } //Jira Settings if (settings.JiraConnectionSettings.JiraUrl != JiraUrl || settings.JiraConnectionSettings.JiraUsername != JiraUsername || settings.JiraConnectionSettings.JiraPassword != JiraPassword) { JiraSettingsChanged = true; } else if (string.IsNullOrWhiteSpace(JiraUrl) || string.IsNullOrWhiteSpace(JiraUsername) || string.IsNullOrWhiteSpace(JiraPassword)) { JiraSettingsChanged = true; } settings.JiraConnectionSettings.JiraUrl = JiraUrl; settings.JiraConnectionSettings.JiraUsername = JiraUsername; settings.JiraConnectionSettings.JiraPassword = JiraPassword; //Export Settings settings.ExportSettings.ExportPrompt.OnAddIdle = ExportPrompts.First(x => x.Key == "Idle").IsChecked; settings.ExportSettings.ExportPrompt.OnManualAdjust = ExportPrompts.First(x => x.Key == "Manual").IsChecked; settings.ExportSettings.ExportPrompt.OnStop = ExportPrompts.First(x => x.Key == "Stop").IsChecked; settings.ExportSettings.ExportPrompt.OnCreatePreloaded = ExportPrompts.First(x => x.Key == "Pre").IsChecked; settings.ExportSettings.ExportPromptAll = ExportAll; settings.ExportSettings.DefaultRemainingValue = SelectedRemainingAdjustmentValue.Remaining; settings.ExportSettings.ExportCommentPrefix = CommentPrefix; settings.ExportSettings.EmptyExportComment = DefaultComment; }
public TrackUsage(IVersionControl versionControl, ISettingsCollection settingsCollection, InstanceType instanceType) { this.versionControl = versionControl; this.settingsCollection = settingsCollection; this.instanceType = instanceType; tracker = new SimpleTracker("UA-51628201-7", new SimpleTrackerEnvironment(Environment.OSVersion.Platform.ToString(), Environment.OSVersion.Version.ToString(), Environment.OSVersion.VersionString)); TrackAppUsage(TrackingType.AppLoad); heartbeat = new Timer(TimeSpan.FromMinutes(1).TotalMilliseconds); heartbeat.Elapsed += (sender, args) => TrackAppUsage(TrackingType.Heartbeat); heartbeat.Enabled = true; }
/// <summary> /// Initializes a new <see cref="TfsSolutionProject"/>. /// </summary> /// <param name="projectItem">The source controlled project file</param> /// <param name="versionControl">TFS source control</param> public TfsSolutionProject(IVersionedItem projectItem, IVersionControl versionControl) : base(projectItem, versionControl) { _projectDocument = new Lazy <XDocument>(() => XDocument.Load(new StreamReader(Download()))); _projectTypeGuids = new Lazy <IEnumerable <Guid> >(() => new HashSet <Guid>(_projectDocument.Value .Descendants(XName.Get("ProjectTypeGuids", ProjectNamespace)) .SelectMany(e => e.Value.Split(';')) .Select(Guid.Parse))); }
/// <summary> /// Initializes a new <see cref="TfsSolutionProject"/>. /// </summary> /// <param name="projectItem">The source controlled project file</param> /// <param name="versionControl">TFS source control</param> public TfsSolutionProject(IVersionedItem projectItem, IVersionControl versionControl) : base(projectItem, versionControl) { _projectDocument = new Lazy<XDocument>(() => XDocument.Load(new StreamReader(Download()))); _projectTypeGuids = new Lazy<IEnumerable<Guid>>(() => new HashSet<Guid>(_projectDocument.Value .Descendants(XName.Get("ProjectTypeGuids", ProjectNamespace)) .SelectMany(e => e.Value.Split(';')) .Select(Guid.Parse))); }
public static void SetVersionControl(IVersionControl instance) { s_VersionControlInstance = instance; // Initialize version control based on whether collab is enabled if (s_Instance != null) { if (s_Instance.IsCollabEnabledForCurrentProject()) { instance.OnEnableVersionControl(); } else { instance.OnDisableVersionControl(); } } }
void Start() { /* * 版本控制设置 * */ versionControl = new IncrementalVersionControl(); //step.1 新建增量包版本控制对象 versionControl.mResServerAddress = "http://api-resource.ptdev.cn/v1/res"; //step.2 设置接入服务器 versionControl.mLocalHotUpdateResPath = Application.persistentDataPath + "/hot"; //step.3设置 //c盘有权限问题 更改如下 versionControl.mLocalHotUpdateResPath = "E:/Hot"; /* * 资源管理设置 * */ BDResources.SetLocalPath(versionControl.mLocalHotUpdateResPath); //step.1 设置本地目录 如不设置,以后全部传入绝对路径 }
public IVersionControl getVersionControl() { IVersionControl lresult = null; do { try { if (checkICaptureManagerControl()) { break; } object lUnknown; mICaptureManagerControl.createMisc( typeof(CaptureManagerLibrary.IVersionControl).GUID, out lUnknown); if (lUnknown == null) { break; } var lVersionControl = lUnknown as CaptureManagerLibrary.IVersionControl; if (lVersionControl == null) { break; } lresult = new VersionControl(lVersionControl); } catch (Exception exc) { LogManager.getInstance().write(exc.Message); } } while (false); return(lresult); }
public VersionControlModule(ILogger Logger, IDatabaseCreator DatabaseCreator, IVersionControl VersionControl) : base(Logger) { this.databaseCreator = DatabaseCreator; this.versionControl = VersionControl; }
public FirstBadVersionControl(IVersionControl versionControl) { this.versionControl = versionControl; }
public void UpdateSettings(ISettingsCollection settings, IVersionControl versionControl) { //AppSettings settings.AppSettings.AlertWhenNotRunning = AlertWhenIdle; settings.AppSettings.AlertTimeMilliseconds = AlertWhenIdle ? (int)TimeSpan.FromMinutes((AlertMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.TrackIdleTime = TrackIdle; settings.AppSettings.IdleTimeThresholdMilliseconds = TrackIdle ? (int)TimeSpan.FromMinutes((TrackIdleThresholdMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.TrackLockTime = TrackLock; settings.AppSettings.LockTimeThresholdMilliseconds = TrackLock ? (int)TimeSpan.FromMinutes((TrackLockThresholdMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.KeepTimersForDays = KeepTimersForDays ?? 7; settings.AppSettings.AutoUpdate = AutoUpdate; settings.AppSettings.TargetLogPerDay = new TimeSpan(TargetHoursPerDay ?? 0, TargetMinutesPerDay ?? 0, 0); settings.AppSettings.ExportDays = WorkingDays.Where(x => x.IsChecked).Select(x => x.DayOfWeek).ToList(); settings.AppSettings.StartOfWeek = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), StartOfWeek, true); settings.AppSettings.DefaultTimers = DefaultTimers.Split(',').SelectMany(x => x.Split(' ')).Where(x => !string.IsNullOrWhiteSpace(x)).ToList(); if (settings.AppSettings.UsageTracking != AllowTracking) { settings.AppSettings.UsageTracking = AllowTracking; if (!AllowTracking) { TrackingOptOut = true; } } //UI Settings settings.UiSettings.Theme = Theme.Name; settings.UiSettings.Accent = Accent.Name; if (versionControl.IsAutomatedDeploy) { if (StartOnBoot) { var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "Gallifrey", $"{versionControl.AppName}.appref-ms"); registryKey.SetValue(versionControl.AppName, path); } else { registryKey.DeleteValue(versionControl.AppName, false); } } settings.UiSettings.TopMostOnFlyoutOpen = TopMostOnFlyoutOpen; //Jira Settings if (settings.JiraConnectionSettings.JiraUrl != JiraUrl || settings.JiraConnectionSettings.JiraUsername != JiraUsername || settings.JiraConnectionSettings.JiraPassword != JiraPassword || settings.JiraConnectionSettings.UseTempo != UseTempo) { JiraSettingsChanged = true; } else if (string.IsNullOrWhiteSpace(JiraUrl) || string.IsNullOrWhiteSpace(JiraUsername) || string.IsNullOrWhiteSpace(JiraPassword)) { JiraSettingsChanged = true; } settings.JiraConnectionSettings.JiraUrl = JiraUrl; settings.JiraConnectionSettings.JiraUsername = JiraUsername; settings.JiraConnectionSettings.JiraPassword = JiraPassword; settings.JiraConnectionSettings.UseTempo = UseTempo; //Export Settings settings.ExportSettings.ExportPrompt.OnAddIdle = ExportPrompts.First(x => x.Key == "Locked").IsChecked&& !TrackingOnly; settings.ExportSettings.ExportPrompt.OnManualAdjust = ExportPrompts.First(x => x.Key == "Manual").IsChecked&& !TrackingOnly; settings.ExportSettings.ExportPrompt.OnStop = ExportPrompts.First(x => x.Key == "Stop").IsChecked&& !TrackingOnly; settings.ExportSettings.ExportPrompt.OnCreatePreloaded = ExportPrompts.First(x => x.Key == "Pre").IsChecked&& !TrackingOnly; settings.ExportSettings.ExportPromptAll = ExportAll; settings.ExportSettings.DefaultRemainingValue = SelectedRemainingAdjustmentValue.Remaining; settings.ExportSettings.ExportCommentPrefix = CommentPrefix; settings.ExportSettings.EmptyExportComment = DefaultComment; settings.ExportSettings.TrackingOnly = TrackingOnly; }
/// <summary> /// Initializes a new instance of the <see cref="TfsSourceTreeRoot"/> class. /// </summary> /// <param name="versionControl">Provides access to TFS source control</param> public TfsSourceTreeRoot(IVersionControl versionControl) : base(new TfsRootItem(), versionControl) { }
/// <summary> /// Initializes a new <see cref="TfsSourceControlledItem"/>. /// </summary> /// <param name="item">The source controlled item.</param> /// <param name="versionControl">The item's associated TFS source control</param> protected TfsSourceControlledItem(IVersionedItem item, IVersionControl versionControl) { Item = item; VersionControl = versionControl; }
public VsFileManipulation(IVersionControl versionControl, string workspaceRoot, Direction toggleDirection) { VersionControl = versionControl; WorkspaceRoot = workspaceRoot; ToggleDirection = toggleDirection; }
/// <summary> /// Initializes a new <see cref="TfsSolution"/>. /// </summary> /// <param name="solutionItem">The source contorlled solution file</param> /// <param name="versionControl">TFS source control</param> public TfsSolution(IVersionedItem solutionItem, IVersionControl versionControl) : base(solutionItem, versionControl) { }
/// <summary> /// Initializes a new <see cref="TfsFile"/>. /// </summary> /// <param name="fileItem">The source controlled file</param> /// <param name="versionControl">TFS source control</param> public TfsFile(IVersionedItem fileItem, IVersionControl versionControl) : base(fileItem, versionControl) { }
public ClassFileManipulation(IVersionControl versionControl, string workspaceRoot) { VersionControl = versionControl; WorkspaceRoot = workspaceRoot; }
public void UpdateSettings(ISettingsCollection settings, IVersionControl versionControl) { //AppSettings settings.AppSettings.AlertWhenNotRunning = AlertWhenIdle; settings.AppSettings.AlertTimeMilliseconds = AlertWhenIdle ? (int)TimeSpan.FromMinutes((AlertMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.TrackIdleTime = TrackIdle; settings.AppSettings.IdleTimeThresholdMilliseconds = TrackIdle ? (int)TimeSpan.FromMinutes((TrackIdleThresholdMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.TrackLockTime = TrackLock; settings.AppSettings.LockTimeThresholdMilliseconds = TrackLock ? (int)TimeSpan.FromMinutes((TrackLockThresholdMinutes ?? 1)).TotalMilliseconds : 0; settings.AppSettings.KeepTimersForDays = KeepTimersForDays ?? 7; settings.AppSettings.AutoUpdate = AutoUpdate; settings.AppSettings.UsageTracking = AllowTracking; settings.AppSettings.TargetLogPerDay = new TimeSpan(TargetHoursPerDay ?? 0, TargetMinutesPerDay ?? 0, 0); settings.AppSettings.ExportDays = WorkingDays.Where(x => x.IsChecked).Select(x => x.DayOfWeek).ToList(); settings.AppSettings.StartOfWeek = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), StartOfWeek, true); settings.AppSettings.DefaultTimers = DefaultTimers.Split(',').SelectMany(x => x.Split(' ')).Where(x=>!string.IsNullOrWhiteSpace(x)).ToList(); //UI Settings settings.UiSettings.Theme = Theme.Name; settings.UiSettings.Accent = Accent.Name; if (versionControl.IsAutomatedDeploy) { if (StartOnBoot) { var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "Gallifrey", $"{versionControl.AppName}.appref-ms"); registryKey.SetValue(versionControl.AppName, path); } else { registryKey.DeleteValue(versionControl.AppName, false); } } settings.UiSettings.TopMostOnFlyoutOpen = TopMostOnFlyoutOpen; //Jira Settings if (settings.JiraConnectionSettings.JiraUrl != JiraUrl || settings.JiraConnectionSettings.JiraUsername != JiraUsername || settings.JiraConnectionSettings.JiraPassword != JiraPassword) { JiraSettingsChanged = true; } else if (string.IsNullOrWhiteSpace(JiraUrl) || string.IsNullOrWhiteSpace(JiraUsername) || string.IsNullOrWhiteSpace(JiraPassword)) { JiraSettingsChanged = true; } settings.JiraConnectionSettings.JiraUrl = JiraUrl; settings.JiraConnectionSettings.JiraUsername = JiraUsername; settings.JiraConnectionSettings.JiraPassword = JiraPassword; //Export Settings settings.ExportSettings.ExportPrompt.OnAddIdle = ExportPrompts.First(x => x.Key == "Locked").IsChecked && !TrackingOnly; settings.ExportSettings.ExportPrompt.OnManualAdjust = ExportPrompts.First(x => x.Key == "Manual").IsChecked && !TrackingOnly; settings.ExportSettings.ExportPrompt.OnStop = ExportPrompts.First(x => x.Key == "Stop").IsChecked && !TrackingOnly; settings.ExportSettings.ExportPrompt.OnCreatePreloaded = ExportPrompts.First(x => x.Key == "Pre").IsChecked && !TrackingOnly; settings.ExportSettings.ExportPromptAll = ExportAll; settings.ExportSettings.DefaultRemainingValue = SelectedRemainingAdjustmentValue.Remaining; settings.ExportSettings.ExportCommentPrefix = CommentPrefix; settings.ExportSettings.EmptyExportComment = DefaultComment; settings.ExportSettings.TrackingOnly = TrackingOnly; }
//give the context where the phone call is happening public CallManager(IContext context, IVersionControl versionControl) { this.context = context; this.versionControl = versionControl; }
/// <summary> /// Initializes a new <see cref="TfsDirectory"/>. /// </summary> /// <param name="item">The source controlled file</param> /// <param name="versionControl">TFS source control</param> public TfsDirectory(IVersionedItem item, IVersionControl versionControl) : base(item, versionControl) { }