/// <summary> /// [出力]ボタンを押した時の処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ConfigGenerate_Button_Click(object sender, RoutedEventArgs e) { // コンフィグ情報の設定 configProperties = SetConfigurations(); // データシリアライザの生成 DataSerializer <ConfigProperties> serializer = new DataSerializer <ConfigProperties>(); // データシリアライズ string jsonstring = serializer.SerializeToJson(configProperties); if (OutputToDialog_RadioButton.IsChecked == true) { MessageBox.Show(jsonstring); } else if (OutputToText_RadioButton.IsChecked == true) { DoFileSave(jsonstring, "txt"); } else if (OutputToJson_RadioButton.IsChecked == true) { DoFileSave(jsonstring, "json"); } else { MessageBox.Show("出力方法を指定してください。"); } }
/// <summary> /// コンフィグの値を設定するメソッド /// </summary> /// <param name="configProperties"></param> /// <param name="configurations"></param> /// <param name="browse"></param> private ConfigProperties SetConfigurations() { // 一時インスタンスの作成 ConfigProperties configProperties = new ConfigProperties(); Configurations[] configurations = new Configurations[] { new Configurations() }; Browse browse = new Browse(); // インクルードパスの取得 => 配列に格納 string[] includepath = new string[] { ConfigPath1_TextBox.Text, ConfigPath2_TextBox.Text, ConfigPath3_TextBox.Text }; // プリプロセッサ定義の取得 => 配列に格納 string[] defines = new string[] { ConfigDefine1_TextBox.Text, ConfigDefine2_TextBox.Text, ConfigDefine3_TextBox.Text }; // 各値を設定 configurations[0].name = Strings.StrConv(ConfigName_TextBox.Text, VbStrConv.Narrow); configurations[0].includePath = includepath; configurations[0].defines = defines; configurations[0].intelliSenseMode = ConfigEngine_ComboBox.Text; configurations[0].cStandard = ConfigCversion_ComboBox.Text; configurations[0].cppStandard = ConfigCppversion_ComboBox.Text; browse.path = includepath; browse.databaseFilename = DatabaseFileName_TextBox.Text; browse.limitSymbolsToIncludedHeaders = ((bool)TagParser_CheckBox.IsChecked) ? true : false; // 全ての値を設定 configurations[0].browse = browse; configProperties.SetConfigProperties(configurations, 4); // 返却 return(configProperties); }