//──────────────────────────────────────── public abstract void Translate( Configurationtree_Node cur_Cf, Expression_Node_String parent_Ec, MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports );
//──────────────────────────────────────── public override void Translate_Step2( ConfigurationtreeToFunction_Item parentProcesser, Configurationtree_Node action_Conf, Expression_Node_Function parent_Expr_Func,//todo:何これ? MemoryApplication owner_MemoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Expression_Node_String ec_ArgListboxName; parent_Expr_Func.TrySelectAttribute(out ec_ArgListboxName, Expression_Node_Function20Impl.PM_NAME_CONTROL_LISTBOX, EnumHitcount.One_Or_Zero, log_Reports); if ("" == ec_ArgListboxName.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports)) { // 引数 listboxFcName が指定されていない場合は、その記述が書かれているコントロールの名前を入れる。 Configuration_Node cf_Event = action_Conf.GetParentByNodename( NamesNode.S_EVENT, EnumConfiguration.Unknown, true, log_Reports); if (log_Reports.Successful) { Configuration_Node parent_Configurationtree_Control = cf_Event.GetParentByNodename( NamesNode.S_CONTROL1, EnumConfiguration.Tree, true, log_Reports); string sName_Usercontrol; ((Configurationtree_Node)parent_Configurationtree_Control).Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Usercontrol, true, log_Reports); ec_ArgListboxName.AppendTextNode(sName_Usercontrol, action_Conf, log_Reports); } } }
//──────────────────────────────────────── /// <summary> /// クリアー /// </summary> public void Clear(MemoryApplication owner_MemoryApplication) { Log_Method log_Method = new Log_MethodImpl(1, Log_ReportsImpl.BDebugmode_Static); Log_Reports log_Reports_ThisMethod = new Log_ReportsImpl(log_Method); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "Clear", log_Reports_ThisMethod); // this.owner_MemoryApplication = owner_MemoryApplication; this.cur_Configurationtree = new Configurationtree_NodeImpl("<clear>", null); if (null == this.memoryAaeditorxml_Editor) { this.memoryAaeditorxml_Editor = new MemoryAaeditorxml_EditorImpl(null); } else { if (log_Method.CanDebug(1)) { log_Method.WriteDebug_ToConsole("「エディター設定ファイル・モデル」をクリアーします。"); } this.memoryAaeditorxml_Editor.Clear(); } goto gt_EndMethod; // gt_EndMethod: log_Method.EndMethod(log_Reports_ThisMethod); log_Reports_ThisMethod.EndLogging(log_Method); }
//──────────────────────────────────────── public MemoryAatoolxmlDialogImpl(MemoryApplication owner_MemoryApplication) { this.Name_SelectedEditor = ""; this.Name_Application = ""; this.memoryAatoolxml = new MemoryAatoolxmlImpl(owner_MemoryApplication); this.dictionary_Editor = new Dictionary_Fsetvar_ConfigurationtreeImpl(); }
//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── protected override void Parse_SAttribute( XmlElement cur_X, Configurationtree_Node cur_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0); log_Method.BeginMethod(Info_XmlToConf.Name_Library, this, "Parse_SAttr", log_Reports); // // //string sIvtv = x_Cur.Attributes.GetNamedItem(AttrNames.S_ITEM_VALUE_TO_VARIABLE).Value; //string sIvtvTrim = ""; //if (null == sIvtv) //{ // sIvtvTrim = ""; //} //else //{ // sIvtvTrim = sIvtv.Trim(); //} cur_Cf.Dictionary_Attribute.Set(PmNames.S_NAME_VAR.Name_Pm, "", log_Reports);// PmNames.Z_ITEM_VALUE_TO_VARIABLE sIvtv; goto gt_EndMethod; // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── public override void Translate_Step2( ConfigurationtreeToFunction_Item parentProcesser, Configurationtree_Node action_Conf, Expression_Node_Function parent_Expr_Func,//todo:何これ? MemoryApplication owner_MemoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Expression_Node_String ec_ArgListboxName; parent_Expr_Func.TrySelectAttribute(out ec_ArgListboxName, Expression_Node_Function20Impl.PM_NAME_CONTROL_LISTBOX, EnumHitcount.One_Or_Zero, log_Reports); if ("" == ec_ArgListboxName.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports)) { // 引数 listboxFcName が指定されていない場合は、その記述が書かれているコントロールの名前を入れる。 Configuration_Node cf_Event = action_Conf.GetParentByNodename( NamesNode.S_EVENT, EnumConfiguration.Unknown, true, log_Reports); if (log_Reports.Successful) { Configuration_Node parent_Configurationtree_Control = cf_Event.GetParentByNodename( NamesNode.S_CONTROL1, EnumConfiguration.Tree, true, log_Reports); string sName_Usercontrol; ((Configurationtree_Node)parent_Configurationtree_Control).Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Usercontrol, true, log_Reports); ec_ArgListboxName.AppendTextNode(sName_Usercontrol, action_Conf, log_Reports); } } }
//──────────────────────────────────────── public static void ParseChild_InAnotherLibrary( Configurationtree_Node cur_Cf, Expression_Node_String parent_Expr,//nAcase,nFelemの両方の場合がある。 MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_ConfigurationtreeToExpression.Name_Library, "SToE_AbstractImpl", "ParseChild_InAnotherLibrary", log_Reports); ConfigurationtreeToExpression_F14n16 dammy = new ConfigurationtreeToExpression_F14_FncImpl_();//メソッドが使いたいだけなので、何でもいい。 dammy.ParseChild_InConfigurationtreeToExpression( cur_Cf, parent_Expr, memoryApplication, pg_ParsingLog, log_Reports ); goto gt_EndMethod; // // gt_EndMethod: if (Log_ReportsImpl.BDebugmode_Static) { //d_ParsingLog.Decrement(s_Cur.Name_Node); } log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── protected virtual Configurationtree_Node CreateMyself( XmlElement cur_X, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Configurationtree_Node cf_Cur = new Configurationtree_NodeImpl(cur_X.Name, parent_Cf); return(cf_Cur); }
//──────────────────────────────────────── /// <summary> /// 全てのフォームの、レイアウトの一時停止を解除。 /// </summary> private void ResumeLayout( TableUserformconfig fo_Config, MemoryApplication memoryApplication, Log_Reports pg_Logging ) { Log_Method pg_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); pg_Method.BeginMethod(Info_LayoutImpl.Name_Library, this, "ResumeLayout", pg_Logging); // // foreach (RecordUserformconfig fo_Record in fo_Config.List_RecordUserformconfig) { string sName_Control; fo_Record.TryGetString(out sName_Control, NamesFld.S_NAME, true, "", memoryApplication, pg_Logging); // // S → E。 コントロール名 Expression_Node_StringImpl ec_FcName = new Expression_Node_StringImpl(null, fo_Record.Parent_TableUserformconfig.Cur_Configurationtree); ec_FcName.AppendTextNode( sName_Control, fo_Record.Parent_TableUserformconfig.Cur_Configurationtree, pg_Logging ); List <Usercontrol> list_FcUc; if (pg_Logging.Successful) { list_FcUc = memoryApplication.MemoryForms.GetUsercontrolsByName( ec_FcName, true, pg_Logging ); } else { list_FcUc = new List <Usercontrol>(); } if (pg_Logging.Successful) { Usercontrol uct = list_FcUc[0]; if (uct is UsercontrolWindow) { UsercontrolWindow uctWnd = (UsercontrolWindow)uct; uctWnd.CustomcontrolWindow1.ResumeLayout(false); } } } // // // // pg_Method.EndMethod(pg_Logging); }
//──────────────────────────────────────── /// <summary> /// イベントハンドラーの作成。 /// </summary> /// <param name="s_Action"></param> /// <param name="log_Reports"></param> /// <returns></returns> public Expression_Node_Function ConfigurationtreeToFunction( Configurationtree_Node action_Conf, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "ConfigurationtreeToFunction",log_Reports); if (log_Reports.CanStopwatch) { log_Method.Log_Stopwatch.Begin(); } // Expression_Node_Function expr_Func; if (log_Reports.Successful) { expr_Func = owner_MemoryApplication.MemoryForms.ConfigurationtreeToFunction.Translate( action_Conf, true, log_Reports ); } else { expr_Func = null; } goto gt_EndMethod; // gt_EndMethod: log_Method.EndMethod(log_Reports); return expr_Func; }
//──────────────────────────────────────── public static void ParseChild_InAnotherLibrary( Configurationtree_Node cur_Cf, Expression_Node_String parent_Expr,//nAcase,nFelemの両方の場合がある。 MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_ConfigurationtreeToExpression.Name_Library, "SToE_AbstractImpl", "ParseChild_InAnotherLibrary",log_Reports); ConfigurationtreeToExpression_F14n16 dammy = new ConfigurationtreeToExpression_F14_FncImpl_();//メソッドが使いたいだけなので、何でもいい。 dammy.ParseChild_InConfigurationtreeToExpression( cur_Cf, parent_Expr, memoryApplication, pg_ParsingLog, log_Reports ); goto gt_EndMethod; // // gt_EndMethod: if (Log_ReportsImpl.BDebugmode_Static) { //d_ParsingLog.Decrement(s_Cur.Name_Node); } log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── /// <summary> /// イベント アクション リストを作成します。 /// </summary> /// <param nFcName="eventName"></param> /// <param nFcName="nActionSuper"></param> /// <param nFcName="log_Reports"></param> public Functionlist CreateFunctionlist( ConfigurationtreeToExpression_Event sToE_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method pg_Method = new Log_MethodImpl(); pg_Method.BeginMethod(Info_Controls.Name_Library, this, "CreateFunctionlist", log_Reports); // // Functionlist fw_Result = null; //.WriteLine(this.GetType().Name + "#CreateEventActionList: <構築>【開始】 イベントに対応ついたアクションリストを追加します。 (ピクチャー)"); switch (sToE_Event.Name) { case NamesSe.S_LOAD: { // // このコントロールの「アプリケーション起動時」。 // // (NActionPerformEnum.O_EA) // // // 無視します。 // } break; default: goto gt_Error_NotSupportEvent; } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NotSupportEvent: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, this.GetType().Name, log_Reports); //クラス名 tmpl.SetParameter(2, sToE_Event.Name, log_Reports); //イベント名 tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Configuration(sToE_Event.Configurationtree_Event), log_Reports); //位置パンくずリスト owner_MemoryApplication.CreateErrorReport("Er:525;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: pg_Method.EndMethod(log_Reports); return(fw_Result); }
//──────────────────────────────────────── /// <summary> /// クリアーします。 /// </summary> public void Clear(MemoryApplication owner_MemoryApplication) { this.owner_MemoryApplication = owner_MemoryApplication; this.xToConfigurationtree_V = new XmlToConfigurationtree_Validator_ConfigImpl(); this.givechapterandverseToExpression_V = new ConfigurationtreeToExpression_V51_ConfigImpl(); this.givechapterandverse_Validatorsconfig = new Configurationtree_NodeImpl(NamesNode.S_CODEFILE_VALIDATORS, new Configurationtree_NodeImpl(this.GetType().Name + "#<init>", null)); }
//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── protected override void Parse_ChildNodes( XmlElement cur_X, Configurationtree_Node cf_Cur, MemoryApplication memoryApplication, Log_Reports log_Reports ) { }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param name="e_ParentNode"></param> /// <param name="s_ParentNode"></param> /// <param name="moOpyopyo"></param> public Expression_FparamImpl( Expression_Node_String parent_Expression_Node, Configurationtree_Node parent_Configurationtree_Node, MemoryApplication owner_MemoryApplication ) : base(parent_Expression_Node, parent_Configurationtree_Node, owner_MemoryApplication) { }
//──────────────────────────────────────── protected override void Parse_SAttribute( XmlElement cur_X, Configurationtree_Node cur_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports ) { }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param name="s_ParentNode"></param> /// <param name="moOpyopyo"></param> public Expression_FvarImpl( Expression_Node_String parent_Expression_Node, Configuration_Node parent_Configuration_Node, MemoryApplication owner_MemoryApplication ) : base(parent_Expression_Node, parent_Configuration_Node, owner_MemoryApplication) { }
//──────────────────────────────────────── protected override void Parse_ChildNodes( XmlElement cur_X, Configurationtree_Node cf_Cur, MemoryApplication memoryApplication, Log_Reports log_Reports ) { }
//──────────────────────────────────────── protected override Configurationtree_Node CreateMyself( XmlElement cur_X, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Configurationtree_Node cur_Cf; cur_Cf = new Configurationtree_NodeImpl(NamesNode.S_F_LISTBOX_VALIDATION, parent_Cf); return cur_Cf; }
//──────────────────────────────────────── public void Resume( MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method pg_Method = new Log_MethodImpl(0); pg_Method.BeginMethod(Info_Controls.Name_Library, this, "Resume", log_Reports); Exception err_Excp; if (log_Reports.Successful) { try { if (dictionary_EventHandler == null) { throw new ApplicationException("Events have not been suppressed."); } foreach (KeyValuePair <object, Delegate[]> pair in dictionary_EventHandler) { for (int nX = 0; nX < pair.Value.Length; nX++) { this.eventHandlerList_Control.AddHandler(pair.Key, pair.Value[nX]); } } dictionary_EventHandler = null; } catch (Exception e) { err_Excp = e; goto gt_Error_Exception; } } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_Exception: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, err_Excp.GetType().Name, log_Reports); //例外の型 tmpl.SetParameter(2, err_Excp.Message, log_Reports); //例外メッセージ owner_MemoryApplication.CreateErrorReport("Er:530;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: pg_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param name="form"></param> public ConfigurationtreeToFunction_ListImpl( Expression_Node_String parent_Expression, Configuration_Node cur_Conf, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { this.owner_MemoryApplication = owner_MemoryApplication; }
//──────────────────────────────────────── /// <summary> /// イベント アクション リストを作成します。 /// </summary> /// <param nFcName="eventName"></param> /// <param nFcName="nActionSuper"></param> /// <param nFcName="log_Reports"></param> public Functionlist CreateFunctionlist( ConfigurationtreeToExpression_Event sToE_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method pg_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); pg_Method.BeginMethod(Info_Controls.Name_Library, this, "CreateFunctionlist",log_Reports); // // Functionlist fw_Result = null; //.WriteLine(this.GetType().Name + "#CreateEventActionList: <構築>【開始】 イベントに対応ついたアクションリストを追加します。 (ウィンドウ)"); switch (sToE_Event.Name) { case NamesSe.S_LOAD: { // // このコントロールの「アプリケーション起動時」。 // // (NActionPerformEnum.O_EA) // // // 無視します。 // } break; default: goto gt_Error_NotSupportedEvent; } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NotSupportedEvent: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, this.GetType().Name, log_Reports);//クラス名 tmpl.SetParameter(2, sToE_Event.Name, log_Reports);//イベント名 tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Configuration(sToE_Event.Configurationtree_Event), log_Reports);//設定位置パンくずリスト this.ControlCommon.Owner_MemoryApplication.CreateErrorReport("Er:515;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: pg_Method.EndMethod(log_Reports); return fw_Result; }
//──────────────────────────────────────── /// <summary> /// 未実装。 /// </summary> /// <param name="oFStrNode"></param> /// <param name="nFAelem"></param> /// <param name="memoryApplication"></param> /// <param name="log_Reports"></param> public override void Translate( Configurationtree_Node cur_Cf, //<def-param> Expression_Node_String parent_Ec, //親<●●>要素。汎用。 MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { }
//"f-listbox-for-items", //──────────────────────────────────────── public Expressionv_3FListboxValidationImpl( Expression_Node_String parent_Expression, Configurationtree_Node parent_Conf, MemoryApplication owner_MemoryApplication) : base(parent_Expression, parent_Conf, owner_MemoryApplication) { this.Owner_MemoryApplication = owner_MemoryApplication; this.list_Expressionv_ADisplay = new List<Expressionv_4ADisplay>(); this.list_Expressionv_ASelectRecord = new List<Expressionv_4ASelectRecord>(); }
//──────────────────────────────────────── protected override Configurationtree_Node CreateMyself( XmlElement cur_X, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Configurationtree_Node cur_Cf; cur_Cf = new Configurationtree_NodeImpl(NamesNode.S_FNC, parent_Cf); return(cur_Cf); }
//──────────────────────────────────────── /// <summary> /// 未実装。 /// </summary> /// <param name="oFStrNode"></param> /// <param name="nFAelem"></param> /// <param name="memoryApplication"></param> /// <param name="log_Reports"></param> public override void Translate( Configurationtree_Node cur_Cf,//<def-param> Expression_Node_String parent_Ec,//親<●●>要素。汎用。 MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { }
public void TryGetBool(out bool out_BValue, string sName, MemoryApplication memoryApplication, Log_Reports log_Reports) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Expr.Name_Library, this, "TryGetBool", log_Reports); // if (!this.Dictionary_Field.ContainsKey(sName)) { //該当なし。 out_BValue = false; goto gt_Error_NotFound; } FieldUserformtable fo_Field = this.Dictionary_Field[sName]; if (EnumTypedb.Bool != fo_Field.EnumTypedb) { //型が異なる。 out_BValue = false; goto gt_Error_Type; } out_BValue = (bool)fo_Field.Data; goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NotFound: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, sName, log_Reports);//フィールド名 memoryApplication.CreateErrorReport("Er:6005;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── gt_Error_Type: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, sName, log_Reports); //フィールド名 tmpl.SetParameter(2, fo_Field.EnumTypedb.ToString(), log_Reports); //フィールドの型名 memoryApplication.CreateErrorReport("Er:6006;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 全てのコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// /// 別の関数から呼び出されます。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_AllUsercontrols( List <string> sFcNameList, object sender, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_AllUsercontrols", log_Reports); // // Configurationtree_Node cf_ThisMethod = new Configurationtree_NodeImpl(log_Method.Fullname, null); foreach (string sName_Usercontrol in sFcNameList) { if ("" == sName_Usercontrol) { // 空行。飛ばす。 goto end_row; } Expression_Leaf_StringImpl ec_FcName = new Expression_Leaf_StringImpl(null, cf_ThisMethod); ec_FcName.SetString(sName_Usercontrol, log_Reports); List <Usercontrol> list_UcFc = owner_MemoryApplication.MemoryForms.GetUsercontrolsByName(ec_FcName, true, log_Reports); if (list_UcFc.Count < 1) { // 正常。 // 特に設定をすることのないコントロールは、XMLファイルが用意されていない。 // 無視する。 } else { Usercontrol ucFc = list_UcFc[0]; this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } end_row: ; } // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── /// <summary> /// 実行。 /// /// 指定のコントロールの、指定のイベントを実行します。 /// /// todo:どこで利用されている? /// </summary> /// <param name="sender"></param> /// <param name="nFcName">コントロール名。</param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_Usercontrol( object sender, Expression_Node_String ec_FcName, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー開始】"); Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_Usercontrol", log_Reports); // // Usercontrol ucFc = null; string sFcName1 = ec_FcName.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); owner_MemoryApplication.MemoryForms.ForEach_Children(delegate(string sKey, Usercontrol ucFc2, ref bool bRemove, ref bool bBreak) { string sFcName2 = ucFc2.ControlCommon.Expression_Name_Control.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); if (sFcName2 == sFcName1) { ucFc = ucFc2; } }); if (null != ucFc) { // 一致したfcUcがあれば、一致した最後のfcUcを。 this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } else { // // // //.WriteLine(this.GetType().Name + "#PerformFc: ■[" + sFcName_prm + "]という名前のコントロールはありませんでした。"); } // // log_Method.EndMethod(log_Reports); //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー終了】"); }
//──────────────────────────────────────── public virtual void Translate_Step2( ConfigurationtreeToFunction_Item parentProcesser, Configurationtree_Node action_Conf, Expression_Node_Function parent_Ec_Sf,//todo:何これ? MemoryApplication owner_MemoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { }
//──────────────────────────────────────── protected override void LinkToParent(Configurationtree_Node cur_Cf, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Usercontrol uct = null; if (log_Reports.Successful) { uct = Utility_XmlToConfigurationtree_NodeImpl.GetUsercontrol(cur_Cf, memoryApplication, log_Reports); } uct.ControlCommon.Configurationtree_Control.List_Child.Add(cur_Cf, log_Reports); }
// //──────────────────────────────────────── public Expressionv_4ASelectRecordImpl(Expression_Node_String parent_Expression_Node, Configurationtree_Node parent_Configurationtree_Node, MemoryApplication owner_MemoryApplication) : base(parent_Expression_Node, parent_Configurationtree_Node, owner_MemoryApplication) { this.expression_Field = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); this.expression_LookupVal = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); this.expression_Required = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); this.expression_From = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); this.expression_Storage = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); this.expression_Description = new Expression_Node_StringImpl(parent_Expression_Node, parent_Configurationtree_Node); }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param name="moOpyopyo"></param> /// <param name="s_ParentNode"></param> public Expression_ValuecontrolImpl( Expression_Node_String ec_FcName, MemoryApplication owner_MemoryApplication, Expression_Node_String parent_Expression_Node, Configurationtree_Node parent_Configurationtree_Node ) : base(parent_Expression_Node, parent_Configurationtree_Node, owner_MemoryApplication) { this.expression_UsercontrolName = ec_FcName; }
/// <summary> /// レコードセットの取得。 /// </summary> /// <param name="eName"></param> /// <param name="log_Reports"></param> /// <returns>該当がなければヌル。</returns> public RecordSet Get(Expression_Node_String ec_Name, MemoryApplication memoryApplication, Log_Reports log_Reports) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Expr.Name_Library, this, "Get", log_Reports); // // string sName = ec_Name.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports).Trim(); RecordSet nResult; try { //ystem.Console.WriteLine(Info_N.LibraryName + ":" + this.GetType().Name + "#Remove: 【レコードセット削除】sName=[" + sName + "]"); nResult = this.dictionary_Recordset[sName]; } catch (KeyNotFoundException ex) { nResult = null; { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, sName, log_Reports); //名前 tmpl.SetParameter(2, Log_RecordReportsImpl.ToText_Configuration(ec_Name.Cur_Configuration), log_Reports); //設定位置パンくずリスト tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Exception(ex), log_Reports); //例外メッセージ memoryApplication.CreateErrorReport("Er:6043;", tmpl, log_Reports); } } catch (Exception ex) { nResult = null; { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, sName, log_Reports); //名前 tmpl.SetParameter(2, Log_RecordReportsImpl.ToText_Configuration(ec_Name.Cur_Configuration), log_Reports); //設定位置パンくずリスト tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Exception(ex), log_Reports); //例外メッセージ memoryApplication.CreateErrorReport("Er:6044;", tmpl, log_Reports); } } // // // // log_Method.EndMethod(log_Reports); return(nResult); }
//──────────────────────────────────────── /// <summary> /// 必須属性の有無テスト。 /// </summary> /// <param name="x_Cur"></param> /// <param name="s_Cur"></param> /// <param name="log_Reports"></param> protected virtual void Test_Attributes(XmlElement cur_X, Configurationtree_Node cur_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { // // // //()メソッド開始 // // // Log_Method log_Method = new Log_MethodImpl(0); log_Method.BeginMethod(Info_XmlToConf.Name_Library, this, "Test_Attributes", log_Reports); // // 必須属性の有無テスト // string err_SName_Attr; if (null != this.List_SName_RequiredPm) { foreach (string sName_Attr in this.List_SName_RequiredPm) { if (!cur_Cf.Dictionary_Attribute.ContainsKey(sName_Attr)) { // エラー。 err_SName_Attr = sName_Attr; goto gt_Error_NothingAttr; } } } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NothingAttr: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, cur_X.Name, log_Reports); //要素名 tmpl.SetParameter(2, err_SName_Attr, log_Reports); //属性名 tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Configuration(cur_Cf), log_Reports); //設定位置パンくずリスト memoryApplication.CreateErrorReport("Er:8009;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── protected override void LinkToParent( Configurationtree_Node cur_Cf, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Log_Method log_Method = new Log_MethodImpl(0); log_Method.BeginMethod(Info_XmlToConf.Name_Library, this, "LinkToParent", log_Reports); log_Method.WriteWarning_ToConsole("親要素に、連結。"); parent_Cf.List_Child.Add(cur_Cf, log_Reports); log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param nFcName="nActionPerformEnum"></param> /// <param nFcName="oWrittenPlace"></param> public Functionlist_FormImpl( ConfigurationtreeToExpression_Event sToE_Event, MemoryApplication owner_MemoryApplication ) : base(null /*parent_Expression*/, null /*cur_Conf*/) { this.ConfigurationtreeToExpression_Event = sToE_Event; this.list_Item = new List <Expression_Node_Function>(); this.sType = "!ハードコーディング_" + this.GetType().Name + "#<init>"; }
/// <summary> /// クリアーします。 /// </summary> public void Clear(MemoryApplication owner_MemoryApplication) { this.name_SubFolder = ""; this.backupKeptbackups = 0; Configurationtree_Node s_ParentNode_Null = null; this.givechapterandverse_Name_SubFolder = new Configurationtree_NodeImpl(NamesNode.S_F_SET_VAR, s_ParentNode_Null); this.givechapterandverse_BackupKeptbackups = new Configurationtree_NodeImpl(NamesNode.S_F_SET_VAR, s_ParentNode_Null); this.owner_MemoryApplication = owner_MemoryApplication; }
//──────────────────────────────────────── protected virtual void Parse_ChildNodes( XmlElement cur_X, Configurationtree_Node cur_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports ) { XmlToConfigurationtree_C14_Hub to = new XmlToConfigurationtree_C14_HubImpl(); to.XmlToConfigurationtree(cur_X, cur_Cf, memoryApplication, log_Reports); }
//──────────────────────────────────────── /// <summary> /// コンストラクター。 /// </summary> /// <param nFcName="nActionPerformEnum"></param> /// <param nFcName="oWrittenPlace"></param> public Functionlist_FormImpl( ConfigurationtreeToExpression_Event sToE_Event, MemoryApplication owner_MemoryApplication ) : base(null/*parent_Expression*/, null/*cur_Conf*/) { this.ConfigurationtreeToExpression_Event = sToE_Event; this.list_Item = new List<Expression_Node_Function>(); this.sType = "!ハードコーディング_" + this.GetType().Name + "#<init>"; }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 全てのコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// /// 別の関数から呼び出されます。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_AllUsercontrols( List<string> sFcNameList, object sender, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_AllUsercontrols", log_Reports); // // Configurationtree_Node cf_ThisMethod = new Configurationtree_NodeImpl(log_Method.Fullname, null); foreach (string sName_Usercontrol in sFcNameList) { if ("" == sName_Usercontrol) { // 空行。飛ばす。 goto end_row; } Expression_Leaf_StringImpl ec_FcName = new Expression_Leaf_StringImpl(null, cf_ThisMethod); ec_FcName.SetString( sName_Usercontrol, log_Reports); List<Usercontrol> list_UcFc = owner_MemoryApplication.MemoryForms.GetUsercontrolsByName(ec_FcName, true, log_Reports); if (list_UcFc.Count < 1) { // 正常。 // 特に設定をすることのないコントロールは、XMLファイルが用意されていない。 // 無視する。 } else { Usercontrol ucFc = list_UcFc[0]; this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } end_row: ; } // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── protected override Configurationtree_Node CreateMyself( XmlElement cur_X, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports ) { Configurationtree_Node cf_Cur; cf_Cur = new Configurationtree_NodeImpl(NamesNode.S_FNC, parent_Cf); return cf_Cur; }
/// <summary> /// クリアーします。 /// </summary> public void Clear(MemoryApplication owner_MemoryApplication) { this.owner_MemoryApplication = owner_MemoryApplication; if (null == this.dictionary_Table_Humaninput) { this.dictionary_Table_Humaninput = new Dictionary <string, Table_Humaninput>(); } else { this.dictionary_Table_Humaninput.Clear(); } }
/// <summary> /// クリアーします。 /// </summary> public void Clear(MemoryApplication owner_MemoryApplication) { this.owner_MemoryApplication = owner_MemoryApplication; if (null == this.dictionary_Item) { this.dictionary_Item = new Dictionary <string, Expression_Node_Function>(); } else { this.dictionary_Item.Clear(); } }
//──────────────────────────────────────── public static void WriteErrorLog( Log_Method log_Method, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { // エラーログ出力。 owner_MemoryApplication.MemoryLogwriter.WriteErrorLog( owner_MemoryApplication, log_Reports, log_Method.Fullname); //Info_Functions.Name_Library + ":" + sClassName + sMethodNameWithSharp); }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolPanel uctPnl = new UsercontrolPanel(); // 名前だけ初期設定 uctPnl.Expression_Name_Control = ec_FcName; uctPnl.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctPnl; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolCheckbox uctChk = new UsercontrolCheckbox(); // 名前だけ初期設定 uctChk.ControlCommon.Expression_Name_Control = ec_FcName; uctChk.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctChk; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolTabPage uctTpg = new UsercontrolTabPage(); // 名前だけ初期設定 uctTpg.Expression_Name_Control = ec_FcName; uctTpg.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctTpg; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolButton uctBtn = new UsercontrolButton(); // 名前だけ初期設定 uctBtn.Expression_Name_Control = ec_FcName; uctBtn.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctBtn; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolNumericUpDown uctNum = new UsercontrolNumericUpDown(); // 名前だけ初期設定 uctNum.Expression_Name_Control = ec_FcName; uctNum.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctNum; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolArea uctAra = new UsercontrolArea(); // 名前だけ初期設定 uctAra.Expression_Name_Control = ec_FcName; uctAra.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctAra; }
//──────────────────────────────────────── /// <summary> /// レコードセットの追加。 /// </summary> /// <param name="eName"></param> /// <param name="recordSet"></param> /// <param name="log_Reports"></param> public void Add( Expression_Node_String ec_Name, RecordSet recordSet, MemoryApplication memoryApplication, Log_Reports log_Reports) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Expr.Name_Library, this, "Add",log_Reports); // // string sName = ec_Name.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports).Trim(); try { this.dictionary_Recordset.Add(sName, recordSet); //// debug: 追加したレコードセットの内容。 //{ // ystem.Console.WriteLine(Info_N.LibraryName + ":" + this.GetType().Name + "#Add: 追加したレコードセットの内容"+ // " fld=["+oRecordSet.NField.E_Execute(EnumHitcount.Unconstraint, log_Reports)+"]" + // " lookup-value=["+oRecordSet.NLookupValue.E_Execute(EnumHitcount.Unconstraint, log_Reports)+"]" + // " required=[" + oRecordSet.NRequired.E_Execute(EnumHitcount.Unconstraint, log_Reports) + "]" + // " from=[" + oRecordSet.NFrom.E_Execute(EnumHitcount.Unconstraint, log_Reports) + "]" + // " description=[" + oRecordSet.NDescription.E_Execute(EnumHitcount.Unconstraint, log_Reports) + "]" + // " Storage=[" + oRecordSet.NStorage.E_Execute(EnumHitcount.Unconstraint, log_Reports) + "]" // ); //} } catch (ArgumentException ex) { //return; { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, sName, log_Reports);//名前 tmpl.SetParameter(2, Log_RecordReportsImpl.ToText_Configuration(ec_Name.Cur_Configuration), log_Reports);//設定位置パンくずリスト tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Exception(ex), log_Reports);//例外メッセージ memoryApplication.CreateErrorReport("Er:6042;", tmpl, log_Reports); } } // // // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { UsercontrolWindow uctWnd = new UsercontrolWindow(); // 名前だけ初期設定 uctWnd.Expression_Name_Control = ec_FcName; uctWnd.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; uctWnd.CustomcontrolWindow1.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;//.CenterParent; return uctWnd; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { // // ▲▲▲ ※暫定で テキストボックス // UsercontrolTextbox uctTxt = new UsercontrolTextbox(); // 名前だけ初期設定 uctTxt.Expression_Name_Control = ec_FcName; uctTxt.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctTxt; }
//──────────────────────────────────────── protected override void LinkToParent( Configurationtree_Node cur_Cf, Configurationtree_Node parent_Cf, MemoryApplication memoryApplication, Log_Reports log_Reports) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_XmlToConf.Name_Library, this, "LinkToParent", log_Reports); Usercontrol uct = null; if (log_Reports.Successful) { Configuration_Node cf_Control = cur_Cf.GetParentByNodename( NamesNode.S_CONTROL1, EnumConfiguration.Tree, true, log_Reports); if (log_Reports.Successful) { uct = Utility_XmlToConfigurationtree_NodeImpl.GetUsercontrol( (Configurationtree_Node)cf_Control, memoryApplication, log_Reports); } } uct.ControlCommon.Configurationtree_Control.List_Child.Add(cur_Cf, log_Reports); goto gt_EndMethod; // #region 異常系 //──────────────────────────────────────── gt_Error_UndefinedClass: if (log_Reports.CanCreateReport) { Log_RecordReports r = log_Reports.BeginCreateReport(EnumReport.Error); r.SetTitle("▲エラー386!", log_Method); StringBuilder s = new StringBuilder(); s.Append("なんらかのエラー。"); s.Append(Environment.NewLine); // ヒント r.Message = s.ToString(); log_Reports.EndCreateReport(); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication owner_MemoryApplication ) { // // 既に起動されているウィンドウに、パネルを埋め込む指定です。 // UsercontrolTextbox uctTxt = new UsercontrolTextbox(); // 名前だけ初期設定 uctTxt.Expression_Name_Control = ec_FcName; uctTxt.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; return uctTxt; }