void WriteAssetImportPreferences()
        {
            AutoRefreshModeEditorPref = m_AutoRefresh;
            bool doRefreshSettings = false;

            bool oldDirectoryMonitoring = EditorPrefs.GetBool("DirectoryMonitoring", true);

            if (oldDirectoryMonitoring != m_DirectoryMonitoring)
            {
                EditorPrefs.SetBool("DirectoryMonitoring", m_DirectoryMonitoring);
                doRefreshSettings = true;
            }

            float oldDesiredImportWorkerCountPctOfLogicalCPUs = EditorPrefs.GetFloat(kDesiredImportWorkerCountPctOfLogicalCPUsKey, kDefaultDesiredImportWorkerCountPctOfLogicalCPUs);

            if (oldDesiredImportWorkerCountPctOfLogicalCPUs != m_DesiredImportWorkerCountPctOfLogicalCPUs)
            {
                EditorPrefs.SetFloat(kDesiredImportWorkerCountPctOfLogicalCPUsKey, m_DesiredImportWorkerCountPctOfLogicalCPUs);
                doRefreshSettings = true;
            }

            EditorPrefs.SetBool("VerifySavingAssets", m_VerifySavingAssets);
            EditorPrefs.SetBool("EnterSafeModeDialog", m_EnterSafeModeDialog);

            if (doRefreshSettings)
            {
                AssetDatabase.RefreshSettings();
            }
        }
 void ReadAssetImportPreferences()
 {
     m_AutoRefresh            = AutoRefreshModeEditorPref;
     m_DirectoryMonitoring    = EditorPrefs.GetBool("DirectoryMonitoring", true);
     m_VerifySavingAssets     = EditorPrefs.GetBool("VerifySavingAssets", false);
     m_CompressAssetsOnImport = Unsupported.GetApplicationSettingCompressAssetsOnImport();
     m_EnterSafeModeDialog    = EditorPrefs.GetBool("EnterSafeModeDialog", true);
     m_DesiredImportWorkerCountPctOfLogicalCPUs = GetDesiredImportWorkerCountPctOfLogicalCPUs();
 }
        void DoAutoRefreshMode()
        {
            bool collabEnabled = Collab.instance.IsCollabEnabledForCurrentProject();

            using (new EditorGUI.DisabledScope(collabEnabled))
            {
                if (collabEnabled)
                {
                    // Don't keep toggle value in m_AutoRefresh since we don't want to save the overwritten value
                    EditorGUILayout.EnumPopup(Properties.autoRefresh, AssetPipelineAutoRefreshMode.Enabled);

                    EditorGUILayout.Toggle(Properties.autoRefresh, true);
                    EditorGUILayout.HelpBox(Properties.autoRefreshHelpBox);
                }
                else
                {
                    m_AutoRefresh = (AssetPipelineAutoRefreshMode)EditorGUILayout.EnumPopup(Properties.autoRefresh, m_AutoRefresh);
                }
            }
        }