//────────────────────────────────────────
        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);
                }
            }
        }
Esempio n. 2
0
        //────────────────────────────────────────
        #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);
                }
            }
        }
Esempio n. 3
0
        //────────────────────────────────────────

        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
            )
        {
        }
 //────────────────────────────────────────
 public Expression_Node_Function05Impl(EnumEventhandler enumEventhandler, List<string> listS_ArgName, ConfigurationtreeToFunction_Item functiontranslatoritem)
     : base(enumEventhandler, listS_ArgName,functiontranslatoritem)
 {
 }
Esempio n. 5
0
        //────────────────────────────────────────
        #endregion



        #region アクション
        //────────────────────────────────────────

        public virtual void Translate_Step1(
            ConfigurationtreeToFunction_Item parentProcesser,
            Configurationtree_Node action_Conf,
            Expression_Node_Function cur_Expr_Func,
            MemoryApplication owner_MemoryApplication,
            Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog,
            Log_Reports log_Reports
            )
        {
            Log_Method log_Method = new Log_MethodImpl(0);

            log_Method.BeginMethod(Info_Functions.Name_Library, this, "Translate_Step1", log_Reports);

            //
            // アクション型引数の引数
            //
            string err_sName_Attr;

            action_Conf.List_Child.ForEach(delegate(Configurationtree_Node s_Arg, ref bool bBreak)
            {
                string sName_Attr;
                s_Arg.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Attr, true, log_Reports);

                if (cur_Expr_Func.ContainsName_ArgumentDefinition(sName_Attr, log_Reports))
                {
                    //
                    // 自解析
                    //
                    ConfigurationtreeToExpression_F14n16 to = new ConfigurationtreeToExpression_F14_FArgImpl();
                    to.Translate(
                        s_Arg,
                        cur_Expr_Func,
                        owner_MemoryApplication,
                        pg_ParsingLog,
                        log_Reports
                        );
                }
                else
                {
                    // エラー
                    err_sName_Attr = sName_Attr;
                    goto gt_Error_UndefinedArgName;
                }

                goto gt_EndMethod2;
                //
                //
                gt_Error_UndefinedArgName:
                bBreak = true;
                {
                    Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl();
                    tmpl.SetParameter(1, err_sName_Attr, log_Reports);                                                //引数名
                    tmpl.SetParameter(2, cur_Expr_Func.ToString_ListNameargumentDefinition_ForReport(), log_Reports); //引数名リスト

                    owner_MemoryApplication.CreateErrorReport("Er:110001;", tmpl, log_Reports);
                }
                //
                gt_EndMethod2:
                ;
            });

            goto gt_EndMethod;

gt_EndMethod:
            log_Method.EndMethod(log_Reports);
        }
Esempio n. 6
0
        //────────────────────────────────────────
        #endregion



        #region 生成と破棄
        //────────────────────────────────────────

        public Expression_Node_Function31Impl(EnumEventhandler enumEventhandler, List <string> listS_ArgName, ConfigurationtreeToFunction_Item functiontranslatoritem)
            : base(enumEventhandler, listS_ArgName, functiontranslatoritem)
        {
        }
 //────────────────────────────────────────
 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
     )
 {
 }
        //────────────────────────────────────────
        public virtual void Translate_Step1(
            ConfigurationtreeToFunction_Item parentProcesser,
            Configurationtree_Node action_Conf,
            Expression_Node_Function cur_Expr_Func,
            MemoryApplication owner_MemoryApplication,
            Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog,
            Log_Reports log_Reports
            )
        {
            Log_Method log_Method = new Log_MethodImpl(0);
            log_Method.BeginMethod(Info_Functions.Name_Library, this, "Translate_Step1",log_Reports);

            //
            // アクション型引数の引数
            //
            string err_sName_Attr;
            action_Conf.List_Child.ForEach(delegate(Configurationtree_Node s_Arg, ref bool bBreak)
            {
                string sName_Attr;
                s_Arg.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Attr, true, log_Reports);

                if (cur_Expr_Func.ContainsName_ArgumentDefinition(sName_Attr,log_Reports))
                {
                    //
                    // 自解析
                    //
                    ConfigurationtreeToExpression_F14n16 to = new ConfigurationtreeToExpression_F14_FArgImpl();
                    to.Translate(
                        s_Arg,
                        cur_Expr_Func,
                        owner_MemoryApplication,
                        pg_ParsingLog,
                        log_Reports
                        );
                }
                else
                {
                    // エラー
                    err_sName_Attr = sName_Attr;
                    goto gt_Error_UndefinedArgName;
                }

                goto gt_EndMethod2;
            //
            //
            gt_Error_UndefinedArgName:
                bBreak = true;
                {
                    Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl();
                    tmpl.SetParameter(1, err_sName_Attr, log_Reports);//引数名
                    tmpl.SetParameter(2, cur_Expr_Func.ToString_ListNameargumentDefinition_ForReport(), log_Reports);//引数名リスト

                    owner_MemoryApplication.CreateErrorReport("Er:110001;", tmpl, log_Reports);
                }
            //
            gt_EndMethod2:
                ;
            });

            goto gt_EndMethod;

            gt_EndMethod:
            log_Method.EndMethod(log_Reports);
        }
 //────────────────────────────────────────
 /// <summary>
 /// コンストラクター。
 /// 
 /// コンストラクターで生成したインスタンスは内容未設定です。必ず、#NewInstance でもう一度インスタンスを作って、そっちを使ってください。
 /// </summary>
 /// <param name="sNodeName"></param>
 /// <param name="parent_Ec"></param>
 /// <param name="cur_Conf"></param>
 public Expression_Node_FunctionAbstract(EnumEventhandler enumEventhandler, List<string> list_NameArgument, ConfigurationtreeToFunction_Item functiontranslatoritem)
     : base(null/*parent_Expression*/, null/*cur_Conf*/, list_NameArgument)
 {
     this.EnumEventhandler = enumEventhandler;
     this.functiontranslatoritem = functiontranslatoritem;
 }
Esempio n. 10
0
        //────────────────────────────────────────

        /// <summary>
        /// コンストラクター。
        ///
        /// コンストラクターで生成したインスタンスは内容未設定です。必ず、#NewInstance でもう一度インスタンスを作って、そっちを使ってください。
        /// </summary>
        /// <param name="sNodeName"></param>
        /// <param name="parent_Ec"></param>
        /// <param name="cur_Conf"></param>
        public Expression_Node_FunctionAbstract(EnumEventhandler enumEventhandler, List <string> list_NameArgument, ConfigurationtreeToFunction_Item functiontranslatoritem)
            : base(null /*parent_Expression*/, null /*cur_Conf*/, list_NameArgument)
        {
            this.EnumEventhandler       = enumEventhandler;
            this.functiontranslatoritem = functiontranslatoritem;
        }