<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>Demos/demo8.html</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -14,6 +14,7 @@ var SubtleTemplate = new Class({
 	Implements: Options,
 	
 	options:{
+		subTemplateClass:'SubtleTemplate',
 		tag:     'div',
 		id:      '',
 		'class': '',
@@ -52,6 +53,8 @@ var SubtleTemplate = new Class({
 		if(!element) return this.fireEvent('error');
 		element = $(element);
 		
+		this.parseSubTemplates(element);
+		
 		if(Browser.Engine.trident)element.getElements('*').each(function(el){
 			// Edit this list to include 
 			// all attribute names whose value you may set in your html templates
@@ -79,6 +82,17 @@ var SubtleTemplate = new Class({
 		return this;
 	},
 	
+	subTemplates:{},
+	parseSubTemplates: function(element){
+		var subTemplateElements = element.getElements('.'+this.options.subTemplateClass);
+		subTemplateElements.each(function(subTemplateElement){
+			var key = subTemplateElement.removeClass(this.options.subTemplateClass).get('class');
+			if (!key) return;
+			new Element('span',{ 'class':this.options.subTemplateClass+'-'+key.camelCase() }).inject(subTemplateElement, 'before');
+			this.subTemplates[key] = new SubtleTemplate(subTemplateElement);
+		},this);
+	},
+	
 	updateTemplate: function(fn){
 		try{console.log( &quot;updateTemplate&quot;, fn );}catch(e){};
 		if($type(fn) != 'function') return this;
@@ -132,9 +146,29 @@ SubtleTemplate.Template = new Class({
 			'class':(this.data.html_class||this.constructor.instance.options['class']||'').substitute(this.data),
 			'id':   (this.data.html_id||'').substitute(this.data)
 		});
+		
+		this.populateSubTemplates(this.data);
+		
 		return this.fireEvent(&quot;populate&quot;);
 	},
 	
+	populateSubTemplates: function(data){
+		var self = this;
+		Hash.each(this.constructor.instance.subTemplates, function(subTemplate,key){
+			
+			try{console.log( self.constructor.instance.options.subTemplateClass+'-'+key.camelCase() );}catch(e){};
+			var elementForKey = self.element.getElement('.'+ self.constructor.instance.options.subTemplateClass+'-'+key.camelCase() )
+			
+			if ($type(data[key])=='array') data[key].each(function(dataForKey){
+				
+				new subTemplate(dataForKey).element.inject(elementForKey, 'before');
+				
+			});
+			
+			elementForKey.dispose();
+		});
+	},
+	
 	toElement: function(){
 		return this.element;
 	},</diff>
      <filename>Source/Plugins/SubtleTemplate.js</filename>
    </modified>
    <modified>
      <diff>@@ -3,7 +3,7 @@
 &lt;plist version=&quot;1.0&quot;&gt;
 &lt;dict&gt;
 	&lt;key&gt;currentDocument&lt;/key&gt;
-	&lt;string&gt;Demos/demo2.html&lt;/string&gt;
+	&lt;string&gt;Source/Plugins/SubtleTemplate.js&lt;/string&gt;
 	&lt;key&gt;documents&lt;/key&gt;
 	&lt;array&gt;
 		&lt;dict&gt;
@@ -77,12 +77,42 @@
 			&lt;key&gt;firstVisibleLine&lt;/key&gt;
 			&lt;integer&gt;0&lt;/integer&gt;
 		&lt;/dict&gt;
+		&lt;key&gt;Demos/demo3.html&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;37&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;columnSelection&lt;/key&gt;
+			&lt;false/&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;selectFrom&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;32&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;selectTo&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;37&lt;/integer&gt;
+			&lt;/dict&gt;
+		&lt;/dict&gt;
 		&lt;key&gt;Demos/demo4.html&lt;/key&gt;
 		&lt;dict&gt;
 			&lt;key&gt;caret&lt;/key&gt;
 			&lt;dict&gt;
 				&lt;key&gt;column&lt;/key&gt;
-				&lt;integer&gt;22&lt;/integer&gt;
+				&lt;integer&gt;21&lt;/integer&gt;
 				&lt;key&gt;line&lt;/key&gt;
 				&lt;integer&gt;41&lt;/integer&gt;
 			&lt;/dict&gt;
@@ -96,9 +126,9 @@
 			&lt;key&gt;caret&lt;/key&gt;
 			&lt;dict&gt;
 				&lt;key&gt;column&lt;/key&gt;
-				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;integer&gt;5&lt;/integer&gt;
 				&lt;key&gt;line&lt;/key&gt;
-				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;integer&gt;27&lt;/integer&gt;
 			&lt;/dict&gt;
 			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
 			&lt;integer&gt;0&lt;/integer&gt;
@@ -110,15 +140,59 @@
 			&lt;key&gt;caret&lt;/key&gt;
 			&lt;dict&gt;
 				&lt;key&gt;column&lt;/key&gt;
-				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;integer&gt;109&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;49&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;columnSelection&lt;/key&gt;
+			&lt;false/&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;selectFrom&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;104&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;49&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;selectTo&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;111&lt;/integer&gt;
 				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;49&lt;/integer&gt;
+			&lt;/dict&gt;
+		&lt;/dict&gt;
+		&lt;key&gt;Demos/demo7.html&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
 				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;44&lt;/integer&gt;
 			&lt;/dict&gt;
 			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
 			&lt;integer&gt;0&lt;/integer&gt;
 			&lt;key&gt;firstVisibleLine&lt;/key&gt;
 			&lt;integer&gt;0&lt;/integer&gt;
 		&lt;/dict&gt;
+		&lt;key&gt;Source/Plugins/SubtleTemplate.js&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;20&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;97&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;76&lt;/integer&gt;
+		&lt;/dict&gt;
 	&lt;/dict&gt;
 	&lt;key&gt;openDocuments&lt;/key&gt;
 	&lt;array&gt;
@@ -126,14 +200,15 @@
 		&lt;string&gt;Demos/demo.css&lt;/string&gt;
 		&lt;string&gt;Demos/demo1.html&lt;/string&gt;
 		&lt;string&gt;Demos/demo2.html&lt;/string&gt;
+		&lt;string&gt;Demos/demo3.html&lt;/string&gt;
 		&lt;string&gt;Demos/demo4.html&lt;/string&gt;
 		&lt;string&gt;Demos/demo5.html&lt;/string&gt;
 		&lt;string&gt;Demos/demo6.html&lt;/string&gt;
+		&lt;string&gt;Demos/demo7.html&lt;/string&gt;
+		&lt;string&gt;Source/Plugins/SubtleTemplate.js&lt;/string&gt;
 	&lt;/array&gt;
 	&lt;key&gt;showFileHierarchyDrawer&lt;/key&gt;
 	&lt;false/&gt;
-	&lt;key&gt;showFileHierarchyPanel&lt;/key&gt;
-	&lt;true/&gt;
 	&lt;key&gt;treeState&lt;/key&gt;
 	&lt;dict&gt;
 		&lt;key&gt;mootools-subtle-templates&lt;/key&gt;
@@ -141,15 +216,7 @@
 			&lt;key&gt;isExpanded&lt;/key&gt;
 			&lt;true/&gt;
 			&lt;key&gt;subItems&lt;/key&gt;
-			&lt;dict&gt;
-				&lt;key&gt;Demos&lt;/key&gt;
-				&lt;dict&gt;
-					&lt;key&gt;isExpanded&lt;/key&gt;
-					&lt;true/&gt;
-					&lt;key&gt;subItems&lt;/key&gt;
-					&lt;dict/&gt;
-				&lt;/dict&gt;
-			&lt;/dict&gt;
+			&lt;dict/&gt;
 		&lt;/dict&gt;
 	&lt;/dict&gt;
 	&lt;key&gt;windowFrame&lt;/key&gt;</diff>
      <filename>mootools-subtle-templates.tmproj</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>b6076dfb7f4f0ca78080caa3573a69ed4bdfcf5d</id>
    </parent>
  </parents>
  <author>
    <name>Thomas Aylott</name>
    <email>oblivious+git@subtlegradient.com</email>
  </author>
  <url>http://github.com/subtleGradient/mootools-subtle-templates/commit/1902ced26cc7e6e7a28a6aa3ca0b92a0bb71b948</url>
  <id>1902ced26cc7e6e7a28a6aa3ca0b92a0bb71b948</id>
  <committed-date>2009-01-12T13:48:31-08:00</committed-date>
  <authored-date>2009-01-12T13:48:31-08:00</authored-date>
  <message>[NEW] Added basic subtemplate support! Check out demo8 for a simple demo. WARNING: API For this will change soon. very Alpha right now</message>
  <tree>4d94310676d11ece07a88c68ae694cbadcd74443</tree>
  <committer>
    <name>Thomas Aylott</name>
    <email>oblivious+git@subtlegradient.com</email>
  </committer>
</commit>
