⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 preferences.cs

📁 POCKET PC,照片管理系统!提供了真正意义上的目录打开功能
💻 CS
字号:
using System;
using Addot.Configuration;
using System.Collections.Specialized;

namespace Pex
{
	/// <summary>
	/// Preferences of the Pex software, implemented as a singleton.
	/// </summary>
    public class Preferences
    {
        #region --- Constants ---
        public static readonly int SMALL = 36;
        public static readonly int MEDIUM = 76;
        public static readonly int LARGE = 180;
        public enum ThumbnailsSize {Small, Medium, Large};
        public enum DisplayMode {RealSize, FitToScreen};
        #endregion

        #region --- Fields ---        
        public static readonly Preferences Singleton = new Preferences();
        private DisplayMode defaultDisplay;
        private string defaultFolder;
        private bool drawRectangle;
        private bool hasChanged;
        private int[] sizes;
        private bool strechSmallImages;
        private ThumbnailsSize thumbSizeIndex;
        #endregion

        #region --- Properties ---
        public DisplayMode DefaultDisplay
        {
            get
            {
                return defaultDisplay;
            }

            set
            {
                if( !hasChanged )
                {
                    hasChanged = ( value != defaultDisplay );
                }
                defaultDisplay = value;
            }
        }
        public string DefaultFolder
        {
            get
            {
                return defaultFolder;
            }

            set
            {
                if( !hasChanged )
                {
                    hasChanged = ( !defaultFolder.Equals(value) );
                }
                defaultFolder = value;
            }
        }

        public bool DrawRectangle
        {
            get
            {
                return drawRectangle;
            }

            set
            {
                if( !hasChanged )
                {
                    hasChanged = ( value != drawRectangle );
                }
                drawRectangle = value;
            }
        }
        public bool HasChanged
        {
            get
            {
                return hasChanged;
            }
        }
        public bool StrechSmallToThumbnails
        {
            get
            {
                return strechSmallImages;
            }

            set
            {
                if( !hasChanged )
                {
                    hasChanged = ( value != strechSmallImages );
                }
                strechSmallImages = value;
            }
        }
        public int ThumbSize
        {
            get
            {
                if ( sizes == null )
                {
                    sizes = new int[3];
                    sizes[0] = SMALL;
                    sizes[1] = MEDIUM;
                    sizes[2] = LARGE;
                }

                return sizes[(int)thumbSizeIndex];
            }
        }
        public ThumbnailsSize ThumbSizeIndex
        {
            get
            {
                return thumbSizeIndex;
            }

            set
            {
                if( !hasChanged )
                {
                    hasChanged = ( value != thumbSizeIndex );
                }
                thumbSizeIndex = value;
            }
        }

        #endregion

        protected Preferences()
		{
            defaultDisplay = DisplayMode.FitToScreen;
            defaultFolder = @"\images";
            drawRectangle = true;
            hasChanged = false;
            strechSmallImages = false;
            thumbSizeIndex = ThumbnailsSize.Medium;
        }

        public void Load()
        {
            defaultDisplay = (DisplayMode)Int16.Parse(ConfigurationSettings.AppSettings.Get("DefaultDisplay"));
            defaultFolder = ConfigurationSettings.AppSettings.Get("DefaultFolder");
            drawRectangle = (bool)Boolean.Parse(ConfigurationSettings.AppSettings.Get("DrawRectangle"));
            strechSmallImages = (bool)Boolean.Parse(ConfigurationSettings.AppSettings.Get("StretchSmallToThumbnails"));
            string ele = ConfigurationSettings.AppSettings.Get("ThumbSizeIndex");
            thumbSizeIndex = (ThumbnailsSize)Int16.Parse(ele);
        }
        public void Save()
        {
            ConfigurationSettings.AppSettings.Set("DefaultDisplay", ((int)defaultDisplay).ToString());
            ConfigurationSettings.AppSettings.Set("DefaultFolder", defaultFolder);            
            ConfigurationSettings.AppSettings.Set("DrawRectangle", drawRectangle.ToString());            
            ConfigurationSettings.AppSettings.Set("StretchSmallToThumbnails", strechSmallImages.ToString());            
            ConfigurationSettings.AppSettings.Set("ThumbSizeIndex", ((int)thumbSizeIndex).ToString());            
            ConfigurationSettings.Save();
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -