Пример #1
0
 // プログラム実行開始時に最初に行う処理
 public static void Initialize()
 {
     baseDir = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + "\\";
     workDir = baseDir + "work\\";
     if (!Directory.Exists(workDir))
     {
         Directory.CreateDirectory(workDir);
     }
     settingName    = baseDir + "setting.xml";
     settings       = new GGFrontSettings();
     currentProject = new GGFrontProject();
     errorList      = new GHDLErrorList();
     if (!settings.Load())
     {
         //Warn("初めにGHDLとGTKWaveのファイルを指定してください.");
         settings.guessGHDLPath    = true;
         settings.guessGTKWavePath = true;
     }
 }
Пример #2
0
 public bool Load()
 {
     try
     {
         XmlSerializer   serial      = new XmlSerializer(typeof(GGFrontSettings));
         FileStream      fs          = new FileStream(Util.settingName, FileMode.Open);
         GGFrontSettings newSettings = (GGFrontSettings)serial.Deserialize(fs);
         double          version     = Double.Parse(newSettings.GGFrontVersion);
         if (version < 0.3)
         {
             guessGHDLPath    = false;
             guessGTKWavePath = false;
         }
         else
         {
             guessGHDLPath    = newSettings.guessGHDLPath;
             guessGTKWavePath = newSettings.guessGTKWavePath;
         }
         if (version < 0.4)
         {
             simLimit  = simLimitDefault;
             procLimit = procLimitDefault;
         }
         else
         {
             simLimit  = newSettings.simLimit;
             procLimit = newSettings.procLimit;
         }
         if (version < 0.5)
         {
             errorWindowHeight   = errorWindowHeightDefault;
             errorWindowWidth    = errorWindowWidthDefault;
             errorWindowTextSize = errorWindowTextSizeDefault;
         }
         else
         {
             errorWindowHeight   = newSettings.errorWindowHeight;
             errorWindowWidth    = newSettings.errorWindowWidth;
             errorWindowTextSize = newSettings.errorWindowTextSize;
         }
         GHDLPath    = newSettings.GHDLPath;
         GTKWavePath = newSettings.GTKWavePath;
         fs.Close();
     }
     catch (FileNotFoundException)
     {
         Reset();
         return(false);
     }
     catch (InvalidOperationException)
     {
         Util.Warn("設定ファイルのロードに失敗しました.形式が正しくありません.");
         Reset();
         return(false);
     }
     catch (Exception ex)
     {
         Util.Warn("設定ファイルのロード中にエラーが発生しました.\n" +
                   "設定ファイルを保存しません.\n\nエラー内容: " + ex.Message);
         Reset();
         disableSaveSettings = true;
         return(false);
     }
     return(true);
 }