Exemplo n.º 1
0
        private void CreateConditionType(List <Node> re)
        {
            var conditionType = new Node();

            conditionType.Text = "Type";
            conditionType.Nodes.Add(CreateRadioButton("Health", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Health)));
            conditionType.Nodes.Add(CreateRadioButton("Mana", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Mana)));
            conditionType.Nodes.Add(CreateRadioButton("Rage", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Rage)));
            conditionType.Nodes.Add(CreateRadioButton("Focus", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Focus)));
            conditionType.Nodes.Add(CreateRadioButton("Energy", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Energy)));
            conditionType.Nodes.Add(CreateRadioButton("Happiness", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.ComboPoints)));
            conditionType.Nodes.Add(CreateRadioButton("Eclipse", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Eclipse)));
            conditionType.Nodes.Add(CreateRadioButton("DemonicFury", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.DemonicFury)));
            conditionType.Nodes.Add(CreateRadioButton("Alternate", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Alternate)));
            conditionType.Nodes.Add(CreateRadioButton("RunicPower", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.RunicPower)));
            conditionType.Expanded = true;
            re.Add(conditionType);
        }
        internal bool Matches(CellReference reference)
        {
            // first check that it is in one of the regions defined for this format
            CellRangeAddress region = null;

            foreach (CellRangeAddress r in regions)
            {
                if (r.IsInRange(reference))
                {
                    region = r;
                    break;
                }
            }

            if (region == null)
            {
                // cell not in range of this rule
                return(false);
            }

            ConditionType ruleType = this.Rule.ConditionType;

            // these rules apply to all cells in a region. Specific condition criteria
            // may specify no special formatting for that value partition, but that's display logic
            if (ruleType.Equals(ConditionType.ColorScale) ||
                ruleType.Equals(ConditionType.DataBar) ||
                ruleType.Equals(ConditionType.IconSet))
            {
                return(true);
            }

            ICell cell = null;
            IRow  row  = sheet.GetRow(reference.Row);

            if (row != null)
            {
                cell = row.GetCell(reference.Col);
            }

            if (ruleType.Equals(ConditionType.CellValueIs))
            {
                // undefined cells never match a VALUE_IS condition
                if (cell == null)
                {
                    return(false);
                }
                return(CheckValue(cell, region));
            }
            if (ruleType.Equals(ConditionType.Formula))
            {
                return(CheckFormula(reference, region));
            }
            if (ruleType.Equals(ConditionType.Filter))
            {
                return(CheckFilter(cell, reference, region));
            }
            // TODO: anything else, we don't handle yet, such as top 10
            return(false);
        }
Exemplo n.º 3
0
        private void CreateConditionType(List <Node> re)
        {
            var conditionType = new Node();

            conditionType.Text = "Type";
            conditionType.Nodes.Add(CreateRadioButton("Health", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Health)));
            conditionType.Nodes.Add(CreateRadioButton("Mana", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Mana)));
            conditionType.Nodes.Add(CreateRadioButton("Energy", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Energy)));
            conditionType.Nodes.Add(CreateRadioButton("Rage", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Rage)));
            conditionType.Nodes.Add(CreateRadioButton("RunicPower", "Runic Power", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.RunicPower)));
            conditionType.Nodes.Add(CreateRadioButton("Eclipse", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Eclipse)));
            conditionType.Nodes.Add(CreateRadioButton("Focus", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.Focus)));
            conditionType.Nodes.Add(CreateRadioButton("HolyPower", "Holy Power", "ConditionTypeEnum",
                                                      ConditionType.Equals(ConditionTypeEnum.HolyPower)));
            conditionType.Expanded = true;
            re.Add(conditionType);
        }