Example #1
0
        /// <summary>
        /// 設定リストの選択
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void cmbSetting_SelectedIndexChanged(object sender, EventArgs e)
        {
            //*** 設定の読み込み ***//
            Config = ConfigList.ToArray()[cmbSetting.SelectedIndex].Value;

            //*** 抽出条件 ***//
            trkCondHueWidth.Value    = Config.Before.HWidth;
            trkCondASaturation.Value = Config.Before.SMin;
            trkCondBSaturation.Value = Config.Before.SMax;
            trkCondALight.Value      = Config.Before.LMin;
            trkCondBLight.Value      = Config.Before.LMax;

            //*** 変更色 ***//
            trkChgASaturation.Value = Config.After.SMin;
            trkChgBSaturation.Value = Config.After.SMax;
            trkChgALight.Value      = Config.After.LMin;
            trkChgBLight.Value      = Config.After.LMax;

            chkHueNoChg.Checked        = !Config.After.ChengeH;
            chkHueSame.Checked         = false;
            chkSaturationNoChg.Checked = false;
            chkLightNoChg.Checked      = false;

            //*** 値の反映 ***//
            ValueChenged();
        }
Example #2
0
        /// <summary>
        /// 設定をファイルから読み込む
        /// </summary>
        /// <param name="fileName"></param>
        private void ReadSetting(string fileName)
        {
            if (!File.Exists(fileName))
            {
                return;
            }

            ConfigList = new Dictionary <string, Color.Config>();

            Color.Config config = new Color.Config();
            StreamReader sr     = new StreamReader(fileName);

            while (!sr.EndOfStream)
            {
                string[] cols = sr.ReadLine().Split('\t');
                if (cols.Length < 14)
                {
                    string[] tmp = new string[14];
                    cols.CopyTo(tmp, 0);
                    cols = tmp;
                }

                config.Before.H      = int.Parse(cols[0]);
                config.Before.HWidth = int.Parse(cols[1]);
                config.Before.SMin   = int.Parse(cols[2]);
                config.Before.SMax   = int.Parse(cols[3]);
                config.Before.LMin   = int.Parse(cols[4]);
                config.Before.LMax   = int.Parse(cols[5]);
                config.After.H       = int.Parse(cols[6]);
                config.After.HWidth  = int.Parse(cols[7]);
                config.After.SMin    = int.Parse(cols[8]);
                config.After.SMax    = int.Parse(cols[9]);
                config.After.LMin    = int.Parse(cols[10]);
                config.After.LMax    = int.Parse(cols[11]);
                config.After.ChengeH = (cols[13] != "0");

                // 追加
                ConfigList.Add(cols[12], config);
            }
            sr.Close();
        }
Example #3
0
        /// <summary>
        /// 設定の初期化
        /// </summary>
        private void InitSetting()
        {
            string exePath  = Application.ExecutablePath;
            string fileName = Path.GetDirectoryName(exePath) + "\\" + Path.GetFileNameWithoutExtension(exePath) + ".ini";

            if (File.Exists(fileName))
            {
                ReadSetting(fileName);
            }
            else
            {
                Color.Config config = new Color.Config();
                ConfigList = new Dictionary <string, Color.Config>();

                config.Before.H      = 0;
                config.Before.HWidth = 180;
                config.Before.SMin   = 0;
                config.Before.SMax   = 100;
                config.Before.LMin   = 0;
                config.Before.LMax   = 100;
                config.After.ChengeH = false;
                config.After.H       = 0;
                config.After.HWidth  = 0;
                config.After.SMin    = 0;
                config.After.SMax    = 0;
                config.After.LMin    = 0;
                config.After.LMax    = 100;
                ConfigList.Add("モノクロ", config);

                config.Before.H      = 0;
                config.Before.HWidth = 180;
                config.Before.SMin   = 0;
                config.Before.SMax   = 100;
                config.Before.LMin   = 0;
                config.Before.LMax   = 100;
                config.After.ChengeH = true;
                config.After.H       = 50;
                config.After.HWidth  = 0;
                config.After.SMin    = 25;
                config.After.SMax    = 70;
                config.After.LMin    = 0;
                config.After.LMax    = 100;
                ConfigList.Add("セピア", config);

                config.Before.H      = 0;
                config.Before.HWidth = 180;
                config.Before.SMin   = 0;
                config.Before.SMax   = 100;
                config.Before.LMin   = 0;
                config.Before.LMax   = 100;
                config.After.ChengeH = false;
                config.After.H       = 0;
                config.After.HWidth  = 0;
                config.After.SMin    = 100;
                config.After.SMax    = 100;
                config.After.LMin    = 50;
                config.After.LMax    = 50;
                ConfigList.Add("サーモグラフィ", config);

                config.Before.H      = 0;
                config.Before.HWidth = 180;
                config.Before.SMin   = 0;
                config.Before.SMax   = 100;
                config.Before.LMin   = 0;
                config.Before.LMax   = 100;
                config.After.ChengeH = false;
                config.After.H       = 0;
                config.After.HWidth  = 0;
                config.After.SMin    = 100;
                config.After.SMax    = 100;
                config.After.LMin    = 0;
                config.After.LMax    = 100;
                ConfigList.Add("原色", config);

                WriteSetting(fileName);
            }

            cmbSetting.Items.Clear();
            foreach (KeyValuePair <string, Color.Config> item in ConfigList.ToArray())
            {
                cmbSetting.Items.Add(item.Key);
            }
        }