예제 #1
0
        /// <summary>
        /// Is an update available?
        /// </summary>
        /// <returns>True if an update is available.</returns>
        private bool UpdateCheck()
        {
            if (m_UpdateCheckRequest != null && m_UpdateCheckRequest.isDone)
            {
                if (string.IsNullOrEmpty(m_UpdateCheckRequest.error))
                {
#if UNITY_2018_3_OR_NEWER
                    LatestVersion = m_UpdateCheckRequest.downloadHandler.text;
#else
                    LatestVersion = m_UpdateCheckRequest.text;
#endif
                }
                m_UpdateCheckRequest = null;
                return(false);
            }

            if (m_UpdateCheckRequest == null && DateTime.Compare(LastUpdateCheck.AddDays(1), DateTime.UtcNow) < 0)
            {
                var url = string.Format("https://opsive.com/asset/UpdateCheck.php?asset=UltimateCharacterController&type={0}&version={1}&unityversion={2}&devplatform={3}&targetplatform={4}",
                                        AssetInfo.Name.Replace(" ", ""), AssetInfo.Version, Application.unityVersion, Application.platform, EditorUserBuildSettings.activeBuildTarget);
#if UNITY_2018_3_OR_NEWER
                m_UpdateCheckRequest = UnityEngine.Networking.UnityWebRequest.Get(url);
                m_UpdateCheckRequest.SendWebRequest();
#else
                m_UpdateCheckRequest = new WWW(url);
#endif
                LastUpdateCheck = DateTime.UtcNow;
            }

            return(m_UpdateCheckRequest != null);
        }
예제 #2
0
 /// <summary>
 /// Saves all the settings in BESettings inside the parent registry Software\BExplorer
 /// </summary>
 public static void SaveSettings()
 {
     using (RegistryKey rk = Registry.CurrentUser, rks = rk.OpenSubKey(@"Software\BExplorer", true)) {
         rks.SetValue("StartUpLoc", StartupLocation);
         rks.SetValue("CheckForUpdates", IsUpdateCheck);
         rks.SetValue("CheckInterval", UpdateCheckInterval);
         rks.SetValue("CheckForUpdatesStartup", IsUpdateCheckStartup);
         rks.SetValue("UpdateCheckType", UpdateCheckType);
         rks.SetValue("IsConsoleShown", IsConsoleShown);
         rks.SetValue("EnableActionLog", EnableActionLog);
         rks.SetValue("IsGlassOnRibonMinimized", IsGlassOnRibonMinimized);
         rks.SetValue("LastUpdateCheck", LastUpdateCheck.ToBinary(), RegistryValueKind.QWord);
         rks.SetValue("InfoPaneHeight", InfoPaneHeight, RegistryValueKind.DWord);
         rks.SetValue("CurrentTheme", CurrentTheme);
         rks.SetValue("PreviewPaneEnabled", IsPreviewPaneEnabled);
         rks.SetValue("InfoPaneEnabled", IsInfoPaneEnabled);
         rks.SetValue("IsTraditionalNameGrouping", IsTraditionalNameGrouping);
         rks.SetValue("Locale", Locale);
         rks.SetValue("IsRestoreTabs", IsRestoreTabs);
         rks.SetValue("InfoPaneHeight", InfoPaneHeight);
         rks.SetValue("NavigationPaneEnabled", IsNavigationPaneEnabled);
         rks.SetValue("FileOpExEnabled", IsFileOpExEnabled);
         rks.SetValue("IsCustomFO", IsCustomFO);
         rks.SetValue("SearchBarWidth", SearchBarWidth);
         rks.SetValue("OverwriteImageWhileEditing", OverwriteImageWhileEditing);
         rks.SetValue("SavedTabsDirectory", SavedTabsDirectory);
         rks.SetValue("OpenedTabs", OpenedTabs);
         rks.SetValue("LastWindowWidth", LastWindowWidth);
         rks.SetValue("LastWindowHeight", LastWindowHeight);
         rks.SetValue("LastWindowPosLeft", LastWindowPosLeft);
         rks.SetValue("LastWindowPosTop", LastWindowPosTop);
         rks.SetValue("LastWindowState", LastWindowState);
         rks.SetValue("IsRibonMinimized", IsRibonMinimized);
         rks.SetValue("OpenedTabs", OpenedTabs);
         rks.SetValue("RTLMode", RTLMode);
         rks.SetValue("AutoSwitchFolderTools", AutoSwitchFolderTools);
         rks.SetValue("AutoSwitchArchiveTools", AutoSwitchArchiveTools);
         rks.SetValue("AutoSwitchImageTools", AutoSwitchImageTools);
         rks.SetValue("AutoSwitchApplicationTools", AutoSwitchApplicationTools);
         rks.SetValue("AutoSwitchLibraryTools", AutoSwitchLibraryTools);
         rks.SetValue("AutoSwitchDriveTools", AutoSwitchDriveTools);
         rks.SetValue("AutoSwitchVirtualDriveTools", AutoSwitchVirtualDriveTools);
         rks.SetValue("ShowCheckboxes", ShowCheckboxes);
         rks.SetValue("CmdWinHeight", CmdWinHeight);
         rks.SetValue("TabBarAlignment", TabBarAlignment);
         rks.SetValue("HFlyoutEnabled", HFlyoutEnabled);
         rks.SetValue("PreviewPaneWidth", PreviewPaneWidth);
         rks.SetValue("NavigateParentWithDblClickEmpty", NavigateParentWithDblClickEmpty);
     }
 } //TODO: Make sure you only use this 1 time when the application closes OR when a new instance is opened
예제 #3
0
        public void SaveConfig()
        {
            if (Directory.Exists(Path.GetDirectoryName(ConfigFilePath)))
            {
                string cfgString = "";
                cfgString += "CharacterDataFolderPath" + " = " + CharacterDataFolderPath + "\r\n";
                cfgString += "DefaultCharacterID" + " = " + DefaultCharacterID + "\r\n";
                cfgString += "UpdateCheckFrequency_Days" + " = " + UpdateCheckFrequency_Days.ToString() + "\r\n";
                cfgString += "LastUpdateCheck" + " = " + LastUpdateCheck.ToString("u") + "\r\n";
                cfgString += "ShowInitialWarning" + " = " + ShowInitialWarning.ToString() + "\r\n";

                if (File.Exists(ConfigFilePath))
                {
                    File.Copy(ConfigFilePath, ConfigFilePath + ".bak", true);
                }
                File.WriteAllText(ConfigFilePath, cfgString);
            }
        }
예제 #4
0
        public static void Save()
        {
            using (BinaryWriter binWriter = new BinaryWriter(File.Create(SettingsFile)))
            {
                binWriter.Write("WINBMACFG".ToCharArray());
                binWriter.Write(4);
                binWriter.Write(Authenticators.Count);

                foreach (AuthAPI.Authenticator auth in Authenticators)
                {
                    if (auth.Name != null)
                    {
                        binWriter.Write(auth.Name);
                    }
                    else
                    {
                        binWriter.Write("");
                    }

                    binWriter.Write(auth.Serial);
                    binWriter.Write(auth.IsRestoreSupported);
                    binWriter.Write((byte)auth.EncryptionType);
                    binWriter.Write(auth.Token.Length);
                    binWriter.Write(auth.Token);
                }

                binWriter.Write(LastSyncTime.ToBinary());
                binWriter.Write(ServerTimeOffset);
                binWriter.Write(SelectedAuthenticatorIndex);
                binWriter.Write(AutoSyncTime);
                binWriter.Write(AlwaysOnTop);
                binWriter.Write(AutoCopyToClipboard);
                binWriter.Write(Theme);
                binWriter.Write(CheckForUpdates);
                binWriter.Write(LastUpdateCheck.ToBinary());

                binWriter.Write(IsHotkeyEnabled);
                binWriter.Write((byte)HotkeyModifiers);
                binWriter.Write((int)Hotkey);
            }
        }
예제 #5
0
        public void SaveConfig()
        {
            if (Directory.Exists(Path.GetDirectoryName(ConfigFilePath)))
            {
                string cfgString = "";
                cfgString += "CharacterDataFolderPath" + " = " + CharacterDataFolderPath + "\r\n";
                cfgString += "DefaultCharacterID" + " = " + DefaultCharacterID + "\r\n";
                cfgString += "UpdateRequestTimeout_Sec" + " = " + UpdateRequestTimeout_Sec.ToString() + "\r\n";
                cfgString += "UpdateCheckFrequency_Days" + " = " + UpdateCheckFrequency_Days.ToString() + "\r\n";
                cfgString += "LastUpdateCheck" + " = " + LastUpdateCheck.ToString("u") + "\r\n";
                cfgString += "LastConfigUpdateCheck" + " = " + LastConfigUpdateCheck.ToString("u") + "\r\n";
                cfgString += "ShowInitialWarning" + " = " + ShowInitialWarning.ToString() + "\r\n";
                cfgString += "LastProgramUpdateVersionSeen" + " = " + LastProgramUpdateVersionSeen.ToString() + "\r\n";
                cfgString += "EarliestPresetTimestampAllowed" + " = " + EarliestPresetTimestampAllowed.ToString("u") + "\r\n";

                if (File.Exists(ConfigFilePath))
                {
                    File.Copy(ConfigFilePath, ConfigFilePath + ".bak", true);
                }
                File.WriteAllText(ConfigFilePath, cfgString);
            }
        }
 protected override void SaveData(XElement xmlElement)
 {
     AddAttrValue(xmlElement, "LastUpdateCheck", LastUpdateCheck.ToString("s"));
     AddAttrValue(xmlElement, "LastUpdateFound", LastUpdateFound.ToString("s"));
     AddAttrValue(xmlElement, "LastUpdateError", LastUpdateError.ToString("s"));
 }