public void LoadSettings() { var userSettings = DefaultFactory.GetDefaultUserSettings(); LinkedProgramsData = new ObservableCollection <LinkedProgramData>(userSettings.GetSettingSerialized <List <LinkedProgramData> >(UserSettingEnum.ConfigLinkedProgramsList) ?? new List <LinkedProgramData>()); EnableDebugLogs = userSettings.GetSettingBool(UserSettingEnum.EnableDebugLogs); CachePath = (CacheEnums.CachePathType)userSettings.GetSettingInt(UserSettingEnum.PreferredCachePath); SelectedThumbnailRenderAspec = (RenderAspectEnum)userSettings.GetSettingInt(UserSettingEnum.Thumbnails3DAspect); EnableThumnailColorsByShaders = userSettings.GetSettingBool(UserSettingEnum.EnableThumnailColorsByShaders); EnableChangingViewColorChangesThumnailColor = userSettings.GetSettingBool(UserSettingEnum.EnableChangingViewColorChangesThumnailColor); EnableMeshDecimation = userSettings.GetSettingBool(UserSettingEnum.EnableMeshDecimation); MinTrianglesForMeshDecimation = userSettings.GetSettingInt(UserSettingEnum.MinTrianglesForMeshDecimation); EnableMaxSizeMBToLoadMeshInView = userSettings.GetSettingBool(UserSettingEnum.EnableMaxSizeMBToLoadMeshInView); MaxSizeMBToLoadMeshInView = userSettings.GetSettingInt(UserSettingEnum.MaxSizeMBToLoadMeshInView); EnableReduceThumbnailResolution = userSettings.GetSettingBool(UserSettingEnum.EnableReduceThumbnailResolution); EnableReduceThumbnailQuality = userSettings.GetSettingBool(UserSettingEnum.EnableReduceThumbnailQuality); NotifyPropertyChanged(nameof(LinkedProgramsData)); NotifyPropertyChanged(nameof(EnableDebugLogs)); NotifyPropertyChanged(nameof(CachePath)); NotifyPropertyChanged(nameof(SelectedThumbnailRenderAspec)); NotifyPropertyChanged(nameof(EnableThumnailColorsByShaders)); NotifyPropertyChanged(nameof(EnableChangingViewColorChangesThumnailColor)); NotifyPropertyChanged(nameof(EnableMeshDecimation)); NotifyPropertyChanged(nameof(MinTrianglesForMeshDecimation)); NotifyPropertyChanged(nameof(EnableMaxSizeMBToLoadMeshInView)); NotifyPropertyChanged(nameof(MaxSizeMBToLoadMeshInView)); NotifyPropertyChanged(nameof(EnableReduceThumbnailResolution)); NotifyPropertyChanged(nameof(EnableReduceThumbnailQuality)); }
public ModelItemListData() { var userSettings = DefaultFactory.GetDefaultUserSettings(); _FileOnlyFoldersFilter = userSettings.GetSettingBool(Shared.Enums.UserSettingEnum.EnableTreeOnlyFolders); _FileCollectionMode = userSettings.GetSettingBool(Shared.Enums.UserSettingEnum.EnableTreeCollections); }
public bool LoadDirectories(IEnumerable <string> paths) { IsLoading = false; MainDispatcher = Dispatcher.CurrentDispatcher; cancellationTokenSource = new CancellationTokenSource(); cancellationToken = cancellationTokenSource.Token; cache = DefaultFactory.GetDefaultThumbnailCache(); userSettings = DefaultFactory.GetDefaultUserSettings(); renderType = (RenderAspectEnum)userSettings.GetSettingInt(UserSettingEnum.Thumbnails3DAspect); logger.Info("Loading paths: Received: [{0}]", string.Join("] [", paths)); paths = paths.Where(p1 => !paths.Any(p2 => !p1.Equals(p2) && p1.Contains(p2))).ToArray(); // Remove selected subdirectories of other selected paths. logger.Info("Loading paths: After removed subdirs: [{0}]", string.Join("] [", paths)); try { IEnumerable <string> pathsFound = new List <string>(); for (int i = 0; i < SupportedExtensionsFilter.Length; i++) { foreach (string path in paths) { pathsFound = pathsFound.Concat(UtilMethods.EnumerateFiles(path, SupportedExtensionsFilter[i], SearchOption.AllDirectories, cancellationToken)); } } pathsFound = pathsFound.ToArray(); if (cancellationToken.IsCancellationRequested) { return(false); } if (pathsFound.Count() > 0) { CalculateThumnailSizes(pathsFound.Count()); InitializeFoundFilesObjects(pathsFound); return(true); } else { FilesFound = new ModelFileData[0]; } } catch (Exception ex) { logger.Trace(ex, "Unable to load: {ex}", ex.Message); } return(false); }
public void SetLanguage(string newLanguage) { CultureInfo ci = CultureInfo.CurrentUICulture; if (!LoadedLanguages.Contains(newLanguage)) { return; } IUserSettings settings = DefaultFactory.GetDefaultUserSettings(); settings.SetSettingString(Shared.Enums.UserSettingEnum.Language, newLanguage); CurrentLanguage = newLanguage; OnLanguageChanged?.Invoke(newLanguage); }
private int GetFileSizeFromFileName(string fileName) { if (DefaultFactory.GetDefaultUserSettings().GetSettingBool(UserSettingEnum.EnableThumnailColorsByShaders)) { if (int.TryParse(Regex.Match(fileName, @"\.N\.(\d+)\.png*").Groups[1].Value, out int matched)) { return(matched); } } else { if (int.TryParse(Regex.Match(fileName, @"\.\d+\.(\d+)\.png*").Groups[1].Value, out int matched)) { return(matched); } } return(0); }
public void SaveSettings() { var userSettings = DefaultFactory.GetDefaultUserSettings(); userSettings.SetSettingSerialized <List <LinkedProgramData> >(UserSettingEnum.ConfigLinkedProgramsList, LinkedProgramsData.ToList()); userSettings.SetSettingBool(UserSettingEnum.EnableDebugLogs, EnableDebugLogs); userSettings.SetSettingInt(UserSettingEnum.PreferredCachePath, (int)CachePath); userSettings.SetSettingInt(UserSettingEnum.Thumbnails3DAspect, (int)SelectedThumbnailRenderAspec); userSettings.SetSettingBool(UserSettingEnum.EnableThumnailColorsByShaders, EnableThumnailColorsByShaders); userSettings.SetSettingBool(UserSettingEnum.EnableChangingViewColorChangesThumnailColor, EnableChangingViewColorChangesThumnailColor); userSettings.SetSettingBool(UserSettingEnum.EnableMeshDecimation, EnableMeshDecimation); userSettings.SetSettingInt(UserSettingEnum.MinTrianglesForMeshDecimation, MinTrianglesForMeshDecimation); userSettings.SetSettingBool(UserSettingEnum.EnableMaxSizeMBToLoadMeshInView, EnableMaxSizeMBToLoadMeshInView); userSettings.SetSettingInt(UserSettingEnum.MaxSizeMBToLoadMeshInView, MaxSizeMBToLoadMeshInView); userSettings.SetSettingBool(UserSettingEnum.EnableReduceThumbnailResolution, EnableReduceThumbnailResolution); userSettings.SetSettingBool(UserSettingEnum.EnableReduceThumbnailQuality, EnableReduceThumbnailQuality); }
private Loc() { _Ins = this; CultureInfo ci = CultureInfo.CurrentUICulture; LoadTexts(); IUserSettings settings = DefaultFactory.GetDefaultUserSettings(); CurrentLanguage = settings.GetSettingString(Shared.Enums.UserSettingEnum.Language); if (string.IsNullOrEmpty(CurrentLanguage)) { logger.Info("Localization: Missing saved language. Setting system language '{0}'", ci.TwoLetterISOLanguageName); CurrentLanguage = ci.TwoLetterISOLanguageName; } if (!LoadedLanguages.Contains(CurrentLanguage)) { logger.Info("Localization: Missing current language '{0}'", CurrentLanguage); CurrentLanguage = DefaultLanguage; } }
private string GetComposedFileNameForFilter(string fileName, string filePath, RenderAspectEnum renderType) { bool useNormalMap = DefaultFactory.GetDefaultUserSettings().GetSettingBool(UserSettingEnum.EnableThumnailColorsByShaders); return(string.Format($"{fileName}{(uint)filePath.GetHashCode()}.cached.{(useNormalMap ? "N" : ((int)renderType).ToString())}.*.png")); }
private ThumbnailCacheInFolder() { settings = DefaultFactory.GetDefaultUserSettings(); }
public void SetEnviorementOptions(RenderAspectEnum renderAspect) { GL.Disable(EnableCap.Light0); GL.Disable(EnableCap.Light1); GL.Disable(EnableCap.Light2); GL.Disable(EnableCap.Light3); // InitializeFloorGrid(); //// Lighting { float highLight = 1f; mat_diffuse1 = null; mat_diffuse2 = null; mat_diffuse3 = null; mat_diffuse4 = null; if (DefaultFactory.GetDefaultUserSettings().GetSettingBool(UserSettingEnum.EnableThumnailColorsByShaders)) { mat_diffuse1 = new float[] { 0f, 1f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0f, 0f, 1f }; light_position2 = new float[] { 0f, 0f, 1f, 0f }; mat_diffuse3 = new float[] { 1f, 0f, 0f }; light_position3 = new float[] { 0f, -1f, 0f, 0f }; } else { if (renderAspect == RenderAspectEnum.VioletBlue) { mat_diffuse1 = new float[] { Colors.Violet.R / 256f, Colors.Violet.G / 256f, Colors.Violet.B / 256f }; light_position1 = new float[] { 0.5f, -1f, 0.5f, 0f }; mat_diffuse2 = new float[] { Colors.Blue.R / 256f, Colors.Blue.G / 256f, Colors.Blue.B / 256f }; light_position2 = new float[] { 1f, -0.5f, 0.5f, 0f }; } else if (renderAspect == RenderAspectEnum.RedOrangeYellow) { mat_diffuse1 = new float[] { 1f, 0f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 1, 1f, 0f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { Colors.Orange.R / 256f, Colors.Orange.G / 256f, Colors.Orange.B / 256f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else if (renderAspect == RenderAspectEnum.GreenLimeYellow) { mat_diffuse1 = new float[] { 0f, 0.5f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 1, 1f, 0f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { Colors.LimeGreen.R / 256f, Colors.LimeGreen.G / 256f, Colors.LimeGreen.B / 256f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else if (renderAspect == RenderAspectEnum.PinkFucsiaViolet) { mat_diffuse1 = new float[] { 1f, 0.75f, 0.795f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0.58f, 0.155f, 0.31f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { 0.93f, 0.51f, 0.93f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else if (renderAspect == RenderAspectEnum.CyanBlue) { mat_diffuse1 = new float[] { 0f, 0f, 1f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0.39f, 0.58f, 0.92f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { 0f, 1f, 1f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else if (renderAspect == RenderAspectEnum.RedRedish) { mat_diffuse1 = new float[] { 1f, 0f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0.5f, 0f, 0f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { 0.85f, 0.44f, 0.57f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else if (renderAspect == RenderAspectEnum.Yellow) { mat_diffuse1 = new float[] { 1f, 1f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0.6f, 0.8f, 0.195f }; light_position2 = new float[] { -0f, -1f, 0f, 0f }; mat_diffuse3 = new float[] { 1f, 1f, 0.87f }; light_position3 = new float[] { 0f, 0f, 1f, 0f }; } else { if (renderAspect == RenderAspectEnum.PerNormal) { mat_diffuse1 = new float[] { 0f, 0.39f, 0f }; light_position1 = new float[] { 1f, 0f, 0f, 0f }; mat_diffuse2 = new float[] { 0f, 0f, 0.54f }; light_position2 = new float[] { 0f, 0f, 1f, 0f }; mat_diffuse3 = new float[] { 0.54f, 0f, 0f }; light_position3 = new float[] { 0f, -1f, 0f, 0f }; } mat_diffuse4 = new float[] { highLight, highLight, highLight }; light_position4 = new float[] { 1f, -1f, 1f, 0f }; } } } }