Exemple #1
0
        /// <summary>
        /// 创建指标
        /// </summary>
        /// <param name="id">编号</param>
        /// <param name="script">脚本</param>
        /// <param name="xml">XML</param>
        /// <returns>指标</returns>
        public static FCScript createIndicator(String id, String script, FCUIXml xml)
        {
            FCScript indicator = new FCScript();

            indicator.Name = id;
            FCDataTable table = new FCDataTable();

            indicator.DataSource = table;
            NFunctionBase.addFunctions(indicator);
            NFunctionUI.addFunctions(indicator, xml);
            NFunctionWin.addFunctions(indicator);
            int index = STARTINDEX;

            String[] functions     = FUNCTIONS.Split(new String[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            int      functionsSize = functions.Length;

            for (int i = 0; i < functionsSize; i++)
            {
                indicator.addFunction(new NFunctionEx(indicator, index + i, functions[i], xml));
            }
            indicator.Script = script;
            table.addColumn(0);
            table.set(0, 0, 0);
            indicator.onCalculate(0);
            return(indicator);
        }
Exemple #2
0
 /// <summary>
 /// 创建方法
 /// </summary>
 /// <param name="indicator">指标</param>
 /// <param name="id">ID</param>
 /// <param name="name">名称</param>
 /// <param name="withParameters">是否有参数</param>
 public NFunctionEx(FCScript indicator, int id, String name, FCUIXml xml)
 {
     m_indicator = indicator;
     m_ID        = id;
     m_name      = name;
     m_xml       = xml;
 }
Exemple #3
0
        /// <summary>
        /// 添加方法
        /// </summary>
        /// <param name="indicator">方法库</param>
        /// <param name="native">脚本</param>
        /// <param name="xml">XML</param>
        /// <returns>指标</returns>
        public static void addFunctions(FCScript indicator, FCUIXml xml)
        {
            String[] functions     = FUNCTIONS.Split(new String[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            int      functionsSize = functions.Length;

            for (int i = 0; i < functionsSize; i++)
            {
                indicator.addFunction(new NFunctionUI(indicator, STARTINDEX + i, PREFIX + functions[i], xml));
            }
        }
Exemple #4
0
 /// <summary>
 /// 创建脚本
 /// </summary>
 /// <param name="xml">XML对象</param>
 public DesignerScript(FCUIXml xml)
 {
     m_xml = xml;
 }
Exemple #5
0
 /// <summary>
 /// 创建脚本
 /// </summary>
 /// <param name="xml">XML对象</param>
 public FaceCatScript(FCUIXml xml)
 {
     m_xml = xml;
 }
Exemple #6
0
 /// <summary>
 /// 创建事件
 /// </summary>
 /// <param name="xml">XML对象</param>
 public FCUIEvent(FCUIXml xml)
 {
     m_xml = xml;
 }