Ejemplo n.º 1
0
 public override PageObject Create(char?lastChar, char currentChar, char?nextChar)
 {
     if (this.IsPossibleStart(lastChar, currentChar, nextChar))
     {
         ElementAttributeValue result = new ElementAttributeValue(Page);
         result.html.Append(currentChar);
         return(result);
     }
     return(null);
 }
Ejemplo n.º 2
0
        List <PageObject> ObjectFactory(char?lastChar, char currentChar, char?nextChar)
        {
            List <PageObject> objects = new List <FoogleEngine.PageObject>();

            foreach (var factory in factories)
            {
                PageObject temp = factory.Create(lastChar, currentChar, nextChar);

                // Elements may think they can start inside a element value
                // Element values may think the end of one element value is the beginning of another
                ElementAttributeValue tempEAV = temp as ElementAttributeValue;
                if (tempEAV != null && nextIsValue)
                {
                    inValue = true;
                }

                if (temp != null && (tempEAV == null || inValue))
                {
                    objects.Add(temp);
                }
            }
            return(objects);
        }