コード例 #1
0
        internal override List <int> GetTypeSpecificIntelliItems(SystemTreeListTag systemTag)
        {
            List <int> specficIntelliItems = null;
            string     valType             = _parameterRows[systemTag.GetSystemRow().ID].ValueType.ToLower();

            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.VARorIL).ToLower())
            {
                specficIntelliItems = new List <int>();
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsStandardVar);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsDefVar);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsDefConst);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsDefIL);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsUpRateFactor);
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.VAR).ToLower())
            {
                specficIntelliItems = new List <int>();
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsStandardVar);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsDefVar);
                specficIntelliItems.Add(FormulaEditorManager._intelliContainsDefConst);
                if (GetDefaultParameterRow().Name.ToLower() != DefPar.Common.Output_Var.ToLower() &&
                    GetDefaultParameterRow().Name.ToLower() != DefPar.Common.Output_Add_Var.ToLower())
                {
                    specficIntelliItems.Add(FormulaEditorManager._intelliContainsUpRateFactor);
                }
            }

            if (IsDefTUMember())
            {
                specficIntelliItems = new List <int>()
                {
                    FormulaEditorManager._intelliContainsDefTUMembers
                }
            }
            ;

            if (IsUprateFactor())
            {
                specficIntelliItems = new List <int>()
                {
                    FormulaEditorManager._intelliContainsUpRateFactor
                }
            }
            ;

            return(specficIntelliItems);
        }
コード例 #2
0
        internal abstract RepositoryItem GetEditor(TreeListNode senderNode, TreeListColumn senderColumn); //policy / function: return combo-box-editor with on/off/..., parameter: return editor specific to parameter type

        internal virtual List <int> GetTypeSpecificIntelliItems(SystemTreeListTag systemTag)
        {
            return(null);
        }                                                                                                    //parameter returns intelli-items specific to parameter type (e.g. only variables for output_var)
コード例 #3
0
        internal override RepositoryItem GetEditor(TreeListNode senderNode, TreeListColumn senderColumn)
        {
            RepositoryItem editor = null;

            SystemTreeListTag systemTag = senderColumn.Tag as SystemTreeListTag;

            if (systemTag == null)
            {
                return(null);
            }
            if (!_parameterRows.ContainsKey(systemTag.GetSystemRow().ID))
            {
                return(null);
            }

            string valType = _parameterRows[systemTag.GetSystemRow().ID].ValueType.ToLower();

            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.BOOLEAN).ToLower())
            {
                editor = _mainForm.YesNoEditorCombo;
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.FORMULA).ToLower())
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.CONDITION).ToLower())
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.CATEG).ToLower())
            {
                editor = GetCategoriesEditor();
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.IL).ToLower())
            {
                editor = systemTag.GetILEditor();
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.VAR).ToLower())
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.TU).ToLower())
            {
                editor = systemTag.GetTUEditor();
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.TEXT).ToLower())
            {
                if (IsUprateFactor() || IsDefTUMember()) // to allow for suggesting uprating-factors resp. DefTU/Members via intelliSense
                {
                    editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
                }
            }
            if (valType == DefinitionAdmin.ParTypeToString(DefPar.PAR_TYPE.VARorIL).ToLower())
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }

            //allows free editing or add-on parameters, otherwise e.g. taxunits could not be set, as they may be defined in an other country and not in the add-on-system
            if (_mainForm._isAddOn)
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }
            //special handling for IlArithOp/ILName: showing ils would not offer the ils generated by IlArithOp/Out_ILName
            if (GetFunctionName().ToLower() == DefFun.IlArithOp.ToLower() && GetParameterName().ToLower() == DefPar.IlArithOp.ILName.ToLower())
            {
                editor = _mainForm.GetFormulaEditorManager().CreateEditor(senderNode, senderColumn);
            }

            return(editor);
        }