<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Home</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>Recent changes to Home</description><atom:link href="https://sourceforge.net/p/tinyhtmlpp/wiki/Home/feed" rel="self"/><language>en</language><lastBuildDate>Wed, 10 Jun 2015 06:33:38 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/tinyhtmlpp/wiki/Home/feed" rel="self" type="application/rss+xml"/><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -78,11 +78,11 @@
 If you look at the Header file htmlelement.h you can see that it basically provides five properties:

  - **type**: Is a enum which can be:
-    - **tag**: This means the HTMLelement is a normal tag such as \&amp;lt;div\&amp;gt; \&amp;lt;a\&amp;gt; \&amp;lt;script\&amp;gt; \&amp;lt;h1\&amp;gt;...
+    - **tag**: This means the HTMLelement is a normal tag such as `&amp;lt;div\&amp;gt;` `&amp;lt;a\&amp;gt;` `&amp;lt;script\&amp;gt;` `&amp;lt;h1\&amp;gt;`...
     - **text**: The HTMLelement is a text. This means, Content will *contain* the text value.
     - **cdata**: This is similar to *text*, except that it can contain characters which are allowed for cdata
  - **name**: A string with the Name of the tag. This is only valid if *type* == tag
- - **metaData**: A std::map of string which contains the metadata. e.g. \&lt;a href=".."&gt; --&amp;gt; metaData would contain the href.
+ - **metaData**: A std::map of string which contains the metadata. e.g. `&lt;/a&gt;&lt;a href=".."&gt;` --&amp;gt; metaData would contain the href.
  - **content**: As described above, this string contains the text if the tag type is text or cdata
  - **children**: This std::list contains the HTMLelement-children

&lt;/a&gt;&lt;/pre&gt;&lt;a href=".."&gt;
&lt;/a&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Wed, 10 Jun 2015 06:33:38 -0000</pubDate><guid>https://sourceforge.net047f971f91f4073445d6f5960cc68b4180e13843</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -82,7 +82,7 @@
     - **text**: The HTMLelement is a text. This means, Content will *contain* the text value.
     - **cdata**: This is similar to *text*, except that it can contain characters which are allowed for cdata
  - **name**: A string with the Name of the tag. This is only valid if *type* == tag
- - **metaData**: A std::map of string which contains the metadata. e.g. &lt;a href=".."&gt; --&amp;gt; metaData would contain the href.
+ - **metaData**: A std::map of string which contains the metadata. e.g. \&lt;/a&gt;&lt;a href=".."&gt; --&amp;gt; metaData would contain the href.
  - **content**: As described above, this string contains the text if the tag type is text or cdata
  - **children**: This std::list contains the HTMLelement-children

&lt;/a&gt;&lt;/pre&gt;&lt;a href=".."&gt;
&lt;/a&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Wed, 10 Jun 2015 06:31:14 -0000</pubDate><guid>https://sourceforge.net2cb4b05ae6a4d3c4b6dfab6e62019368f16f9653</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v4
+++ v5
@@ -78,7 +78,7 @@
 If you look at the Header file htmlelement.h you can see that it basically provides five properties:

  - **type**: Is a enum which can be:
-    - **tag**: This means the HTMLelement is a normal tag such as &lt;div&gt; &lt;a&gt; &amp;lt;script&amp;gt; &lt;h1&gt;...
+    - **tag**: This means the HTMLelement is a normal tag such as \&amp;lt;div\&amp;gt; \&amp;lt;a\&amp;gt; \&amp;lt;script\&amp;gt; \&amp;lt;h1\&amp;gt;...
     - **text**: The HTMLelement is a text. This means, Content will *contain* the text value.
     - **cdata**: This is similar to *text*, except that it can contain characters which are allowed for cdata
  - **name**: A string with the Name of the tag. This is only valid if *type* == tag
&lt;/h1&gt;&lt;/a&gt;&lt;/div&gt;&lt;/pre&gt;&lt;a&gt;
&lt;/a&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Wed, 10 Jun 2015 06:30:21 -0000</pubDate><guid>https://sourceforge.net79d0666a0402153d97f15b2a6adfd11cd2985520</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -72,5 +72,19 @@
 &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &lt;title&gt;Testpage&lt;/title&gt; &amp;lt;/head&amp;gt; &amp;lt;body&amp;gt; &lt;h1&gt;Big title&lt;/h1&gt; &lt;p&gt;Here I forgot the &lt;b&gt;closing tag&lt;/b&gt;&lt;/p&gt; &lt;p&gt;And here I used the wrong closing type&lt;/p&gt; &lt;p&gt;Very special characters: &amp;amp;!]]&amp;gt;&lt;br /&gt;&lt;br /&gt;new line&lt;/p&gt; &lt;p&gt;&lt;a href="#"&gt;This&lt;/a&gt; should be displayed inline.&lt;/p&gt; &amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;
 ~~~~~

+Working with HTMLelement
+------------------------
+
+If you look at the Header file htmlelement.h you can see that it basically provides five properties:
+
+ - **type**: Is a enum which can be:
+    - **tag**: This means the HTMLelement is a normal tag such as &lt;div&gt; &lt;a&gt; &amp;lt;script&amp;gt; &lt;/a&gt;&lt;h1&gt;&lt;a&gt;...
+    - **text**: The HTMLelement is a text. This means, Content will *contain* the text value.
+    - **cdata**: This is similar to *text*, except that it can contain characters which are allowed for cdata
+ - **name**: A string with the Name of the tag. This is only valid if *type* == tag
+ - **metaData**: A std::map of string which contains the metadata. e.g. &lt;/a&gt;&lt;a href=".."&gt; --&amp;gt; metaData would contain the href.
+ - **content**: As described above, this string contains the text if the tag type is text or cdata
+ - **children**: This std::list contains the HTMLelement-children
+
 Yes, it really is so simple! :-)
 --------------------------------
&lt;/a&gt;&lt;/h1&gt;&lt;/div&gt;&lt;/pre&gt;&lt;a href=".."&gt;
&lt;/a&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Wed, 10 Jun 2015 06:29:15 -0000</pubDate><guid>https://sourceforge.net6e09bc9f3ebb4adc48387831034fc9ba37f42e9b</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -63,7 +63,7 @@
 new line
 This should be displayed inline.

-&amp;gt;Here I forgot the 
+Here I forgot the 
 And here I used the wrong closing type
 Very special characters: &amp;lt;&amp;gt;&amp;amp;!
 new line
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Thu, 21 Aug 2014 21:10:31 -0000</pubDate><guid>https://sourceforge.netecc93366a2a30e445c8934cf15cbd1c12ddb35f3</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -1,8 +1,76 @@
-Welcome to your wiki!
+Introduction
+============

-This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: [SamplePage].
+I think the best way to explain a library is by using an example:

-The wiki uses [Markdown](/p/tinyhtmlpp/wiki/markdown_syntax/) syntax.
+~~~~~~~~
+#include &amp;lt;htmlparser.h&amp;gt;
+#include &amp;lt;htmlelement.h&amp;gt;
+#include &amp;lt;string&amp;gt;
+#include &amp;lt;iostream&amp;gt;

-[[members limit=20]]
-[[download_button]]
+using namespace std;
+
+const string page =
+"&amp;lt;html&amp;gt;"
+"  &amp;lt;head&amp;gt;"
+"      &lt;title&gt;Testpage&lt;/title&gt;"
+"  &amp;lt;/head&amp;gt;"
+"  &amp;lt;body&amp;gt;"
+"      &lt;h1&gt;Big title&lt;/h1&gt;"
+"      &lt;p&gt;Here I forgot the &lt;b&gt;closing tag&lt;/b&gt;&lt;/p&gt;&lt;b&gt;"
+"      &lt;/b&gt;&lt;p&gt;And here I used the wrong closing type"
+"      "
+"      &lt;/p&gt;&lt;p&gt;Very special characters: &amp;amp;!]]&amp;gt;&lt;br /&gt;new line&lt;/p&gt;"
+"      &lt;p&gt;&lt;a href='../\"#\"'&gt;This&lt;/a&gt; should be displayed inline.&lt;/p&gt;"
+"  &amp;lt;/body&amp;gt;"
+"&amp;lt;/html&amp;gt;";
+
+bool checkElement(const HTMLelement &amp;amp;e)
+{
+   if(e.name == "p")return true;
+   return false;
+}
+
+int main(int argc, char **args)
+{
+   HTMLparser p;
+   HTMLelement e;
+   p.parse(page, e);
+
+   //getFormattedString removes all the tags
+   //And represents the page in pure text
+   cout&amp;lt;&amp;lt;e.getFormattedString()&amp;lt;&amp;lt;endl; +="" +="" It="" is="" also="" possible="" to="" print="" only="" certain="" elements="" +="" cout&amp;lt;&amp;lt;e.getFormattedString(&amp;amp;checkElement)&amp;lt;&amp;lt;endl;="" +="" +="" cout&amp;lt;&amp;lt;e.createHTML()&amp;lt;&amp;lt;endl;="" +}="" +~~~~~~="" +="" +Output:="" +-------="" +="" +~~~~~~~="" +Testpage="" +="" +Big="" title="" +Here="" I="" forgot="" the="" closing="" tag="" +And="" here="" I="" used="" the="" wrong="" closing="" type="" +Very="" special="" characters:="" &amp;lt;=""&amp;gt;&amp;amp;!
+new line
+This should be displayed inline.
+
+&amp;gt;Here I forgot the 
+And here I used the wrong closing type
+Very special characters: &amp;lt;&amp;gt;&amp;amp;!
+new line
+should be displayed inline.
+
+&amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &lt;title&gt;Testpage&lt;/title&gt; &amp;lt;/head&amp;gt; &amp;lt;body&amp;gt; &lt;h1&gt;Big title&lt;/h1&gt; &lt;p&gt;Here I forgot the &lt;b&gt;closing tag&lt;/b&gt;&lt;/p&gt; &lt;p&gt;And here I used the wrong closing type&lt;/p&gt; &lt;p&gt;Very special characters: &amp;amp;!]]&amp;gt;&lt;br /&gt;&lt;br /&gt;new line&lt;/p&gt; &lt;p&gt;&lt;a href="#"&gt;This&lt;/a&gt; should be displayed inline.&lt;/p&gt; &amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;
+~~~~~
+
+Yes, it really is so simple! :-)
+--------------------------------
&lt;/pre&gt;&lt;b&gt;
&lt;/b&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Thu, 21 Aug 2014 21:09:07 -0000</pubDate><guid>https://sourceforge.net6eb1aac5dd91d9c9ad07a4ff4673769e9803a101</guid></item><item><title>Home modified by Thomas Sparber</title><link>https://sourceforge.net/p/tinyhtmlpp/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Welcome to your wiki!&lt;/p&gt;
&lt;p&gt;This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: &lt;span&gt;[SamplePage]&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;The wiki uses &lt;a class="" href="/p/tinyhtmlpp/wiki/markdown_syntax"&gt;Markdown&lt;/a&gt; syntax.&lt;/p&gt;
&lt;p&gt;&lt;h6&gt;Project Members:&lt;/h6&gt;
&lt;ul class="md-users-list"&gt;
&lt;li&gt;&lt;a href="/u/tommy-infancy"&gt;Thomas Sparber&lt;/a&gt; (admin)&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;span class="download-button-53f6495004161f789b319d75" style="margin-bottom: 1em; display: block;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas Sparber</dc:creator><pubDate>Thu, 21 Aug 2014 19:32:32 -0000</pubDate><guid>https://sourceforge.net8b61955901692e9dd7242e10d75e215350894876</guid></item></channel></rss>