Пример #1
0
        /// <summary>
        /// Creates a new document from a Stream of HTML using the options passed.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML input.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// A new document.
        /// </returns>

        public static IDomDocument Create(TextReader html, 
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            return GetNewParser(parsingMode, parsingOptions, docType).Parse(html);
        }
Пример #2
0
 public DataGrid(string name, string href, bool autoGenerateColumns = true, bool hasFooter = true,
                 IEnumerable <int> pageSizes = null, GridTheme theme = null,
                 HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(parsingMode, parsingOptions, docType)
 {
     Initialize(name, href, autoGenerateColumns, hasFooter, pageSizes, theme);
 }
Пример #3
0
        /// <summary>
        /// Create a new CQ object from a TextReader containg HTML
        /// </summary>
        ///
        /// <param name="html">
        /// A string of HTML.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// The new fragment.
        /// </returns>

        public static CQ Create(TextReader html,
                                HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                                HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                                DocType docType = DocType.Default)
        {
            return(new CQ(html, parsingMode, parsingOptions, docType));
        }
Пример #4
0
        /// <summary>
        /// Get the Value behind from en XML Element (&lt;Element&gt;Value&lt;/Element&gt;)
        /// The functions finds Elemts with atleast passed amounts of attributes (and).
        /// </summary>
        /// <param name="html">The HTML code to be analysed</param>
        /// <param name="element">The name of the HTML Element</param>
        /// <param name="options">The Options to parse the element</param>
        /// <param name="attributes">The attributes further specified by the HtmlParsingOptions</param>
        /// <returns>The Value of the Elemt</returns>
        /// <example>
        /// string mainPart = GetValue("div", "class=\"main\");
        /// </example>
        /// //TODO: Propper erordcumentation
        public static HTMLObject[] GetElementValue(string html, string element, HtmlParsingOptions options, params string[] attributes)
        {
            //replace any < that might have been passed
            Func <string, string> replaceGreaterSymbols = new Func <string, string>((input) =>
            {
                if (input.StartsWith("<"))
                {
                    input = input.Remove(0);
                }
                if (input.EndsWith(">"))
                {
                    input = input.Remove(input.Length - 1);
                }
                return(input.Trim());
            });

            element = replaceGreaterSymbols(element);

            switch (options)
            {
            case HtmlParsingOptions.UnsureAttributeValues: return(parseUnsureAttributes(html, element, attributes));

            default: throw new NotImplementedException("This option has not been implemented yet");
            }
        }
Пример #5
0
        /// <summary>
        /// Create a new CQ object from an HTML stream.
        /// <see cref="CQ.Create(char[])"/>
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(Stream html,
                  Encoding encoding,
                  HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                  HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                  DocType docType = DocType.Default)
        {
            CreateNew(this, html, encoding, parsingMode, parsingOptions, docType);
        }
Пример #6
0
        /// <summary>
        /// Create a new CQ object from a stream of HTML, treating the HTML as a content document.
        /// </summary>
        ///
        /// <param name="html">
        /// An open Stream.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// A new CQ object.
        /// </returns>

        public static CQ Create(Stream html,
                                Encoding encoding                 = null,
                                HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                                HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                                DocType docType = DocType.Default)
        {
            return(new CQ(html, encoding, parsingMode, parsingOptions, docType));
        }
Пример #7
0
  private static ElementFactory GetNewParser(HtmlParsingMode parsingMode, HtmlParsingOptions parsingOptions, DocType docType)
  {
      var parser = new ElementFactory();
      parser.HtmlParsingMode = parsingMode;
      parser.DocType = GetDocType(docType);
      parser.HtmlParsingOptions = MergeOptions(parsingOptions);
      return parser;
 }
Пример #8
0
        /// <summary>
        /// Creates a new DomDocument (or derived) object.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source for the document.
        /// </param>
        /// <param name="encoding">
        /// (optional) the character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// The DocType for this document.
        /// </param>
        ///
        /// <returns>
        /// A new IDomDocument object.
        /// </returns>

        public static IDomDocument Create(Stream html,
                                          Encoding encoding                 = null,
                                          HtmlParsingMode parsingMode       = HtmlParsingMode.Content,
                                          HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                                          DocType docType = DocType.Default)
        {
            return(ElementFactory.Create(html, encoding, parsingMode, parsingOptions, docType));
        }
Пример #9
0
        private static ElementFactory GetNewParser(HtmlParsingMode parsingMode, HtmlParsingOptions parsingOptions, DocType docType)
        {
            var parser = new ElementFactory();

            parser.HtmlParsingMode    = parsingMode;
            parser.DocType            = GetDocType(docType);
            parser.HtmlParsingOptions = MergeOptions(parsingOptions);
            return(parser);
        }
Пример #10
0
        /// <summary>
        /// Creates a new DomDocument (or derived) object.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source for the document.
        /// </param>
        /// <param name="encoding">
        /// (optional) the character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// The DocType for this document.
        /// </param>
        ///
        /// <returns>
        /// A new IDomDocument object.
        /// </returns>
        public static IDomDocument Create(Stream html,
            Encoding encoding = null,
            HtmlParsingMode parsingMode = HtmlParsingMode.Content,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {

            return ElementFactory.Create(html, encoding, parsingMode, parsingOptions, docType);
        }
Пример #11
0
        /// <summary>
        /// Creates a new document from a Stream of HTML using the options passed.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML input.
        /// </param>
        /// <param name="streamEncoding">
        /// The character set encoding used by the stream. If null, the BOM will be inspected, and it
        /// will default to UTF8 if no encoding can be identified.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// A new document.
        /// </returns>

        public static IDomDocument Create(Stream html,
                                          Encoding streamEncoding,
                                          HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                                          HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                                          DocType docType = DocType.Default)
        {
            return(GetNewParser(parsingMode, parsingOptions, docType)
                   .Parse(html, streamEncoding));
        }
Пример #12
0
        /// <summary>
        /// Create a new CQ object from an HTML stream.
        /// <see cref="CQ.Create(char[])"/>
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(Stream html, 
            Encoding encoding,
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto, 
            HtmlParsingOptions parsingOptions =HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {

            CreateNew(this, html, encoding, parsingMode, parsingOptions, docType);
            
        }
Пример #13
0
        /// <summary>
        /// Create a new CQ object from an HTML stream.
        /// <see cref="CQ.Create(char[])"/>
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(Stream html, 
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto, 
            HtmlParsingOptions parsingOptions =HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            using (var reader = new StreamReader(html))
            {
                CreateNew(this, reader, parsingMode, parsingOptions, docType);
            }
        }
Пример #14
0
        private void InitializeTreeBuilder()
        {
            treeBuilder = new CsQueryTreeBuilder(DomIndexProvider);

            treeBuilder.NamePolicy           = XmlViolationPolicy.Allow;
            treeBuilder.WantsComments        = !HtmlParsingOptions.HasFlag(HtmlParsingOptions.IgnoreComments);
            treeBuilder.AllowSelfClosingTags = HtmlParsingOptions.HasFlag(HtmlParsingOptions.AllowSelfClosingTags);

            // DocTypeExpectation should be set later depending on fragment/content/document selection
        }
Пример #15
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(TextReader html,
                  HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                  HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                  DocType docType = DocType.Default)
        {
            Encoding encoding = Encoding.UTF8;

            var stream = new MemoryStream(encoding.GetBytes(html.ReadToEnd()));

            CreateNew(this, stream, encoding, parsingMode, parsingOptions, docType);
        }
Пример #16
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(string html, 
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions=HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            var encoding = new UTF8Encoding(false);
            using (var stream = Support.GetEncodedStream(html ?? "", encoding))
            {
                CreateNew(this, stream, encoding, parsingMode, parsingOptions, docType);
            }
        }
Пример #17
0
 private static HtmlParsingOptions MergeOptions(HtmlParsingOptions options)
 {
     if (options.HasFlag(HtmlParsingOptions.Default))
     {
         return(CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default));
     }
     else
     {
         return(options);
     }
 }
Пример #18
0
        /// <summary>
        /// Creates a new document from a Stream of HTML using the options passed.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML input.
        /// </param>
        /// <param name="streamEncoding">
        /// The character set encoding used by the stream. If null, the BOM will be inspected, and it
        /// will default to UTF8 if no encoding can be identified.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// A new document.
        /// </returns>

        public static IDomDocument Create(Stream html, 
            Encoding streamEncoding,
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            
            return GetNewParser(parsingMode, parsingOptions, docType)
                .Parse(html, streamEncoding);
            
        }
Пример #19
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(string html,
                  HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                  HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                  DocType docType = DocType.Default)
        {
            var encoding = new UTF8Encoding(false);

            using (var stream = Support.GetEncodedStream(html ?? "", encoding))
            {
                CreateNew(this, stream, encoding, parsingMode, parsingOptions, docType);
            }
        }
Пример #20
0
        /// <summary>
        /// Creates a new DomDocument (or derived) object
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source for the document
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// The DocType for this document.
        /// </param>
        ///
        /// <returns>
        /// A new IDomDocument object
        /// </returns>

        public static IDomDocument Create(string html,
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {

            var encoding = Encoding.UTF8; 
            using (var stream = new MemoryStream(encoding.GetBytes(html)))
            {
                return ElementFactory.Create(stream, encoding, parsingMode, parsingOptions, docType);
            }
        }
Пример #21
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(string html, 
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions=HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            //CreateNew(this, html, parsingMode,parsingOptions, docType);

            using (var reader = new StringReader(html ?? ""))
            {
                CreateNew(this,reader, parsingMode, parsingOptions, docType);
            }
        }
Пример #22
0
        /// <summary>
        /// Creates a new DomDocument (or derived) object
        /// </summary>
        ///
        /// <param name="html">
        /// The HTML source for the document
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// The DocType for this document.
        /// </param>
        ///
        /// <returns>
        /// A new IDomDocument object
        /// </returns>

        public static IDomDocument Create(string html,
                                          HtmlParsingMode parsingMode       = HtmlParsingMode.Auto,
                                          HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
                                          DocType docType = DocType.Default)
        {
            var encoding = Encoding.UTF8;

            using (var stream = new MemoryStream(encoding.GetBytes(html)))
            {
                return(ElementFactory.Create(stream, encoding, parsingMode, parsingOptions, docType));
            }
        }
Пример #23
0
        /// <summary>
        /// Bind this instance to a new DomFragment created from HTML in a specific HTML tag context.
        /// </summary>
        ///
        /// <param name="target">
        /// The target.
        /// </param>
        /// <param name="html">
        /// The HTML.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        protected void CreateNew(CQ target,
                                 Stream html,
                                 Encoding encoding,
                                 HtmlParsingMode parsingMode,
                                 HtmlParsingOptions parsingOptions,
                                 DocType docType)
        {
            target.Document = DomDocument.Create(html, encoding, parsingMode, parsingOptions, docType);

            //  enumerate ChildNodes when creating a new fragment to be sure the selection set only
            //  reflects the original document.

            target.SetSelection(Document.ChildNodes.ToList(), SelectionSetOrder.Ascending);
        }
Пример #24
0
 private static HtmlParsingOptions MergeOptions(HtmlParsingOptions options)
 {
     if ((options & HtmlParsingOptions.Default) != 0)
     {
         return(CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default));
     }
     else
     {
         return(options);
     }
     //if (options.HasFlag(HtmlParsingOptions.Default))
     //{
     //    return CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default);
     //}
     //else
     //{
     //    return options;
     //}
 }
Пример #25
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(TextReader html,
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            CreateNew(this, html, parsingMode, parsingOptions, docType);
        }
Пример #26
0
 public LabelElement(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(HtmlTag.Label, parsingMode, parsingOptions, docType)
 {
 }
Пример #27
0
 public Image(string src, HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(parsingMode, parsingOptions, docType)
 {
     Src = src;
 }
Пример #28
0
 private static HtmlParsingOptions MergeOptions(HtmlParsingOptions options)
 {
     if ((options & HtmlParsingOptions.Default) != 0)
     {
         return CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default);
     }
     else
     {
         return options;
     }
     //if (options.HasFlag(HtmlParsingOptions.Default))
     //{
     //    return CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default);
     //}
     //else
     //{
     //    return options;
     //}
 }
Пример #29
0
 private static HtmlParsingOptions MergeOptions(HtmlParsingOptions options)
 {
     if (options.HasFlag(HtmlParsingOptions.Default))
     {
         return CsQuery.Config.HtmlParsingOptions | options & ~(HtmlParsingOptions.Default);
     }
     else
     {
         return options;
     }
 }
Пример #30
0
 public InputElement(InputType type, HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(HtmlTag.Input, parsingMode, parsingOptions, docType)
 {
     Type = type;
 }
Пример #31
0
        /// <summary>
        /// Create a new CQ object from a stream of HTML, treating the HTML as a content document.
        /// </summary>
        ///
        /// <param name="html">
        /// An open Stream.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// A new CQ object.
        /// </returns>

        public static CQ Create(Stream html, 
            Encoding encoding = null,
            HtmlParsingMode parsingMode=HtmlParsingMode.Auto, 
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            return new CQ(html, encoding,parsingMode,parsingOptions, docType);
        }
Пример #32
0
 public SubmitImage(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(InputType.Image, parsingMode, parsingOptions, docType)
 {
 }
Пример #33
0
 protected TableContainer(HtmlTag tag, HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(tag, parsingMode, parsingOptions, docType)
 {
     Rows.CollectionChanged += (sender, e) => Refresh();
 }
Пример #34
0
        /// <summary>
        /// Create a new CQ object from an HTML string.
        /// </summary>
        ///
        /// <param name="html">
        /// The html source of the new document.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        public CQ(TextReader html,
            HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
            HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
            DocType docType = DocType.Default)
        {
            Encoding encoding = Encoding.UTF8;

            var stream = new MemoryStream(encoding.GetBytes(html.ReadToEnd()));
            CreateNew(this, stream, encoding,parsingMode, parsingOptions, docType);
        }
Пример #35
0
        /// <summary>
        /// Bind this instance to a new DomFragment created from HTML in a specific HTML tag context.
        /// </summary>
        ///
        /// <param name="target">
        /// The target.
        /// </param>
        /// <param name="html">
        /// The HTML.
        /// </param>
        /// <param name="encoding">
        /// The character set encoding.
        /// </param>
        /// <param name="parsingMode">
        /// The HTML parsing mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>

        protected void CreateNew(CQ target,
          Stream html,
          Encoding encoding,
          HtmlParsingMode parsingMode,
          HtmlParsingOptions parsingOptions,
          DocType docType)
        {
            target.Document = DomDocument.Create(html, encoding, parsingMode,parsingOptions, docType);

            //  enumerate ChildNodes when creating a new fragment to be sure the selection set only
            //  reflects the original document. 

            target.SetSelection(Document.ChildNodes.ToList(), SelectionSetOrder.Ascending);
        }
Пример #36
0
 public ProcessElement(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(HtmlTag.Progress, parsingMode, parsingOptions, docType)
 {
 }
Пример #37
0
 public CheckBox(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(InputType.CheckBox, parsingMode, parsingOptions, docType)
 {
 }
Пример #38
0
 public TextAreaElement(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(HtmlTag.Textarea, parsingMode, parsingOptions, docType)
 {
 }
Пример #39
0
        /// <summary>
        /// Create a new CQ object from a TextReader containg HTML
        /// </summary>
        ///
        /// <param name="html">
        /// A string of HTML.
        /// </param>
        /// <param name="parsingMode">
        /// (optional) the mode.
        /// </param>
        /// <param name="parsingOptions">
        /// (optional) options for controlling the parsing.
        /// </param>
        /// <param name="docType">
        /// (optional) type of the document.
        /// </param>
        ///
        /// <returns>
        /// The new fragment.
        /// </returns>

        public static CQ Create(TextReader html,
           HtmlParsingMode parsingMode = HtmlParsingMode.Auto,
           HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default,
           DocType docType = DocType.Default)
        {
            return new CQ(html, parsingMode, parsingOptions, docType);
        }
Пример #40
0
 public GridCommand(string href, HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(href, parsingMode, parsingOptions, docType)
 {
     Attr("data-command-type", "default");
     _icon = new CommonElement(HtmlTag.I);
     Append(_icon);
 }
Пример #41
0
 public Table(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(parsingMode, parsingOptions, docType)
 {
 }
Пример #42
0
 public AjaxCommand(string href, HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(href, parsingMode, parsingOptions, docType)
 {
     Attr("data-command-type", "ajax");
 }
Пример #43
0
 public HiddenField(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(InputType.Hidden, parsingMode, parsingOptions, docType)
 {
 }
Пример #44
0
 public OptGroupElement(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(HtmlTag.Optgroup, parsingMode, parsingOptions, docType)
 {
 }
Пример #45
0
 public GridColumn(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(true, parsingMode, parsingOptions, docType)
 {
     Sortable = true;
 }
Пример #46
0
 public SubmitButton(HtmlParsingMode parsingMode = HtmlParsingMode.Auto, HtmlParsingOptions parsingOptions = HtmlParsingOptions.Default, DocType docType = DocType.Default)
     : base(ButtonType.Submit, parsingMode, parsingOptions, docType)
 {
 }