incubator-odf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r795009 [2/3] - in /websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo: ./ image/ scripts/ styles/
Date Tue, 30 Aug 2011 07:36:38 GMT
Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.html
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.html (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.html Tue Aug 30 07:36:37 2011
@@ -0,0 +1,279 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<link href="/odftoolkit/css/odf.css" rel="stylesheet" type="text/css">
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<link rel="stylesheet" href="../images/style.css" type="text/css" />
+<link type="text/css" rel="stylesheet" href="styles/shCoreEclipse.css"/>
+<title>Demos - SimpleODF</title>
+<style type="text/css">
+<!--
+.STYLE1 {
+	color: #FFFFFF;
+	font-size: 24px;
+}
+.STYLE2 {font-size: 32px}
+.STYLE3 {font-size: 16px}
+.STYLE4 {font-size: 36px}
+-->
+</style>
+<script type="text/javascript" src="scripts/shCore.js"></script>  
+<script type="text/javascript" src="scripts/shBrushJava.js"></script>  
+<script type="text/javascript"> SyntaxHighlighter.all();</script>
+<script type="text/javascript">
+
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-22366020-1']);
+  _gaq.push(['_trackPageview']);
+
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+
+</script>
+
+
+</head>
+
+<body>
+  <div id="banner">
+   <!-- <div id="bannerleft"><a alt="Apache ODF Toolkit (incubating)" href="http://incubator.apache.org/odftoolkit/">
+      <img id="logo" alt="Apache ODF Toolkit (Incubating)" src="/odftoolkit/images/ooo-logo.png"/></a></div> -->
+    <div id="bannerright"><a alt="Apache Incubator" href="http://incubator.apache.org">
+      <img id="asf-logo" alt="Apache Incubator" src="/odftoolkit/images/apache-incubator-logo.png"/></a></div>
+   <div id="bannercenter"><br/>&nbsp;&nbsp;&nbsp;&nbsp;Apache ODF Toolkit (incubating)</div>
+  </div>
+  <div id="clear"></div>
+  
+  <div id="content">
+  
+    
+    
+<div id="page" align="center">
+  <div id="content" style="width:920px" class="contentpanel">
+    <div id="topheader">
+      <div class="topright"> </div>
+    </div>
+    <div id="menu">
+      <div align="left" class="smallwhitetext"> <a href="../index.html" class="home"> </a> <a href="../downloads.html" class="download"></a> <a href="../documents.html" class="document"></a> <a href="../demo/index.html" class="sample"> </a> </div>
+    </div>
+    <div id="subcontent" align ="left">
+        <div align="left" class="titletext"> <span >
+		<a href="index.html">Simple Demos<a> > 
+		<a href="demo7.html">Demo 6: Offer Letter with Text Fields<a>
+		</span> 
+		</div>
+		
+		<!---------------------------------------------------------------------------------------------------->	
+<div class="contenttitle">
+    <a name="overview">Overview</a>
+</div>
+<div class="bodytext">
+    <p> We have introduced several samples about how to use Simple ODF API to generate document from the predefined templete, for example, <a href="demo3.html"><img src="../images/link.png">Demo 3: Navigation API in Hotel Receipt</a>. I believe you have known how easy it is. But sounds like, we never talk about how to create a template document using  Simple ODF API. <br/><br/>
+Today, let's do it.<br/><br/>
+Simple ODF API provides Fields API since version 0.5. OpenDocument text documents or OpenDocument text content embedded in other types of documents may contain variable text elements called fields. Fields are commonly used for, a page number field displays the number of the page on which it appears or a creation date field displays the date on which a document was created. Besides, there are several advance field, such as, variable field and condition field.<br/><br/>
+This demo provides a Java application which can create the offer letter template document from a sample and use it to generate new offer letters with the information from a spreadsheet. The template document contains some fields whose content is decided by the information from data file.<br/><br/>
+The following picture show a sample offer letter. I have labeled the variable content with blod and color style.<br/><br/>
+<img src="image/offer-letter-sample.png" ><br/><br/> 
+This offer was generated on "2011-01-20". It also can be in any other date, so this text content should be replaced by a date field. "Tom King" is the receiver, this name can be replaced with a variable field, then we can send it to any other perpson. Similarly, "software engineer" is the job title of "Tom King", "R&D" is the branch which he belongs to, and "2011-03-12" is his onboard date, all of them should be replaced by variable field in a template document.<br/><br/> 
+Salary and allowance are more complex. Different job titles and branches have different rules. Simplicity, we assume that except "Secretary" is 5,500,00, all of the other job titles are 6,000.00. We also assume that employees from "Sales" don't have allowance. Condition field or Hidden Text field is needed to realize these rules. The same as certificates/testimonials, for campus hires, they need supply "Educational certificates", while for professinal hires, they need supply "Experience certificates from previous employers" and "Copy of resignation/acceptation letter and relieving letter". This is another use case of condition field.<br/><br/>
+After replaced all of these variable content with fields, the template document is ready. The process of generate new offer letter is very simple. Only need to load the following data, update the variable values with the data and save as a new document. <br/><br/>
+<img src="image/candidate-data.png" ><br/><br/>
+No need text content search, no need target replace. It's faster than the content replace way. Beside, the variable content is highlighted automatically by Symphony or Open Office when the document is opend. The following is a generated letter sample.<br/><br/>
+<img src="image/generated-offer-letter.png" ><br/><br/>
+As using fields, the new offer letter is easily updated without inconsistent, even though after generated. You can do it in Symphony or Open Office.
+</p>
+</div>
+<hr/>
+<div class="contenttitle">
+    <a name="codeintroduction">Code Introduction</a>
+</div>
+<div class="bodytext">
+    <p>
+	There are two methods in the class, <code>createFieldTemplate()</code> is used to create template document from sample, and <code>generateOfferLetterDocument()</code> is used to generated new document using template and data file.<br/>
+	<!--java code-->
+    <pre class="brush:java;">
+	public static void main(String[] args) {
+		try {
+			// create offer letter template with sample offer letter.
+			createFieldTemplate();
+			// generate offer letters for the candidates from spreadsheet document.
+			generateOfferLetterDocument();
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+	}
+    </pre>
+    </p>
+    <p>Below is the source code of method <code>createFieldTemplate()</code>. The basic process is find the variable content and replace it with a field. We use <code>FixedDateField</code>, <code>UserVariableField</code>, <code>ConditionField</code> and <code>HiddenTextField</code> in this method. Simple ODF API provides more types of fields. For more information, please reference the <a href="../javadoc/index.html"><img src="../images/link.png"></img>Javadoc</a> or <a href="../cookbook/index.html"><img src="../images/link.png"></img>CookBook</a>.<br/>
+    <!--java code-->
+    <pre class="brush:java;">
+	public static void createFieldTemplate() throws Exception {
+		TextDocument sampleDocument = TextDocument.loadDocument("Tom's Offer.odt");
+		// replace offer date with FixedDateField
+		TextNavigation search = new TextNavigation("2011-01-20", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithSimpleField(Field.FieldType.FIXED_DATE_FIELD);
+		}
+		// replace candidate name with UserVariableField
+		VariableField candidateVar = Fields.createUserVariableField(sampleDocument, "candidateVar", "Tom King");
+		search = new TextNavigation("Tom King", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithVariableField(candidateVar);
+		}
+		// replace job title with UserVariableField
+		VariableField jobTitleVar = Fields.createUserVariableField(sampleDocument, "jobTitleVar", "software engineer");
+		search = new TextNavigation("software engineer", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithVariableField(jobTitleVar);
+		}
+		// replace branch with UserVariableField
+		VariableField branchVar = Fields.createUserVariableField(sampleDocument, "branchVar", "R&D");
+		search = new TextNavigation("R&D", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithVariableField(branchVar);
+		}
+		// replace onboard date with UserVariableField
+		VariableField onBoardDateVar = Fields.createUserVariableField(sampleDocument, "onBoardDateVar", "2011-03-12");
+		search = new TextNavigation("2011-03-12", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithVariableField(onBoardDateVar);
+		}
+		// replace salary with ConditionField
+		search = new TextNavigation("6,000.00", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithConditionField("jobTitleVar != \"Secretary\"", "6,000.00", "5,500.00");
+		}
+		// replace consolidated allowance with HiddenTextField
+		search = new TextNavigation(" and a Consolidated Allowance of 400\\$ per month", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection.replaceWithHiddenTextField("branchVar == \"Sales\"", " and a Consolidated Allowance of 400$ per month");
+		}
+		// replace certificates/testimonials with ConditionField
+		Fields.createUserVariableField(sampleDocument, "campusHireVar", "N");
+		search = new TextNavigation("\\* Educational certificates", sampleDocument);
+		while (search.hasNext()) {
+			TextSelection item = (TextSelection) search.nextSelection();
+			FieldSelection fieldSelection = new FieldSelection(item);
+			fieldSelection
+					.replaceWithConditionField(
+							"campusHireVar == \"Y\"",
+							"* Educational certificates",
+							"* Experience certificates from previous employers\n* Copy of resignation/acceptation letter and relieving letter");
+		}
+		sampleDocument.save("OfferTemplate.odt");
+	}
+    </pre>
+</p>
+<p>Method <code>generateOfferLetterDocument()</code> is easier. Just load the template document and data docuemnt and fill new value to all of the variables. <code>getVariableFieldByName()</code> is a method of <code>VariableContainer</code> used to iterate variable field by name.
+<br/>
+    <!--java code-->
+    <pre class="brush:java;">
+	public static void generateOfferLetterDocument() throws Exception {
+		TextDocument templateDocument = TextDocument.loadDocument("OfferTemplate.odt");
+		SpreadsheetDocument dataDocument = SpreadsheetDocument.loadDocument("Candidates.ods");
+		Table table = dataDocument.getTableByName("Sheet1");
+		int rowCount = table.getRowCount();
+		for(int i = 1; i &lt rowCount; i++)
+		{
+			Row row = table.getRowByIndex(i);
+			String name = row.getCellByIndex(0).getDisplayText();
+			VariableField candidateVar = templateDocument.getVariableFieldByName("candidateVar");
+			candidateVar.updateField(name, null);
+			String jobTitle = row.getCellByIndex(1).getDisplayText();
+			VariableField jobTitleVar = templateDocument.getVariableFieldByName("jobTitleVar");
+			jobTitleVar.updateField(jobTitle, null);
+			String branch = row.getCellByIndex(2).getDisplayText();
+			VariableField branchVar = templateDocument.getVariableFieldByName("branchVar");
+			branchVar.updateField(branch, null);
+			String isCampusHire = row.getCellByIndex(3).getDisplayText();
+			VariableField campusHireVar = templateDocument.getVariableFieldByName("campusHireVar");
+			campusHireVar.updateField(isCampusHire, null);
+			String onBoradDate = row.getCellByIndex(4).getDisplayText();
+			VariableField onBoardDateVar = templateDocument.getVariableFieldByName("onBoardDateVar");
+			onBoardDateVar.updateField(onBoradDate, null);
+			templateDocument.save(name+"'s offer letter.odt");
+		}
+	}
+    </pre>
+</p>
+</div>
+<hr/>
+<div class="contenttitle">
+    <a name="download">Download</a>
+</div>
+<div class="bodytext">
+  <p>
+    Powered by the Simple Java API for ODF version  <a target="_new" href="../downloads.html"><img src="../images/link.png"></img>0.5</a>.
+  </p>
+  <p>
+    You can download the code of this demo from <a href="demo7.zip"><img src="../images/link.png"></img>here</a>.
+  </p>
+</div>
+<!---------------------------------------------------------------------------------------------------->		
+</div>
+<div id="footer" class="smallgraytext"> <a href="#">Home</a> | <a href="#">About Us</a> | <a href="#">Contact Us</a> </div>
+</div>
+</div>
+
+
+  </div>
+
+  <div id="footera">
+    <div id="poweredby">
+      <p><img src="/odftoolkit/images/feather-small.gif"/><br/>Powered by the Apache CMS.</p>
+    </div>
+    <div id="copyrighta">
+      <p>
+	Apache "ODF Toolkit" is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator.
+	Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and
+	decision making process	have stabilized in a manner consistent with other successful ASF projects. While incubation status is
+	not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has
+	yet to be fully endorsed by the ASF.</p>
+      <p>
+	Copyright &copy; 2011 The Apache Software Foundation Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+	<a href="/openofficeorg/contact.html">Contact Us</a>
+	<br />Apache and the Apache feather logos are trademarks of The Apache Software Foundation.
+	<br />Other names appearing on the site may be trademarks of their respective owners.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.zip
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.zip
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo7.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo8.html
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo8.html (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo8.html Tue Aug 30 07:36:37 2011
@@ -0,0 +1,156 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<link href="/odftoolkit/css/odf.css" rel="stylesheet" type="text/css">
+
+

+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

+<link rel="stylesheet" href="../images/style.css" type="text/css" />

+<link type="text/css" rel="stylesheet" href="styles/shCoreEclipse.css"/>

+<title>Demos - SimpleODF</title>

+<style type="text/css">

+<!--

+.STYLE1 {

+	color: #FFFFFF;

+	font-size: 24px;

+}

+.STYLE2 {font-size: 32px}

+.STYLE3 {font-size: 16px}

+.STYLE4 {font-size: 36px}

+-->

+</style>

+<script type="text/javascript" src="scripts/shCore.js"></script>  

+<script type="text/javascript" src="scripts/shBrushJava.js"></script>  

+<script type="text/javascript"> SyntaxHighlighter.all();</script>

+<script type="text/javascript">

+

+  var _gaq = _gaq || [];

+  _gaq.push(['_setAccount', 'UA-22366020-1']);

+  _gaq.push(['_trackPageview']);

+

+  (function() {

+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;

+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';

+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);

+  })();

+

+</script>

+
+
+</head>
+
+<body>
+  <div id="banner">
+   <!-- <div id="bannerleft"><a alt="Apache ODF Toolkit (incubating)" href="http://incubator.apache.org/odftoolkit/">
+      <img id="logo" alt="Apache ODF Toolkit (Incubating)" src="/odftoolkit/images/ooo-logo.png"/></a></div> -->
+    <div id="bannerright"><a alt="Apache Incubator" href="http://incubator.apache.org">
+      <img id="asf-logo" alt="Apache Incubator" src="/odftoolkit/images/apache-incubator-logo.png"/></a></div>
+   <div id="bannercenter"><br/>&nbsp;&nbsp;&nbsp;&nbsp;Apache ODF Toolkit (incubating)</div>
+  </div>
+  <div id="clear"></div>
+  
+  <div id="content">
+  
+    
+    

+<div id="page" align="center">

+  <div id="content" style="width:920px" class="contentpanel">

+    <div id="topheader">

+      <div class="topright"> </div>

+    </div>

+    <div id="menu">

+      <div align="left" class="smallwhitetext"> <a href="../index.html" class="home"> </a> <a href="../downloads.html" class="download"></a> <a href="../documents.html" class="document"></a> <a href="../demo/index.html" class="sample"> </a> </div>

+    </div>

+    <div id="subcontent" align ="left">

+        <div align="left" class="titletext"> <span >
		<a href="index.html">Simple Demos<a> > 

+		<a href="demo8.html">Demo 7: Add 2D barcode image to a slide<a>

+		</span> 

+		</div>

+		

+		<!---------------------------------------------------------------------------------------------------->	

+<div class="contenttitle">

+    <a name="overview">Overview</a>

+</div>

+<div class="bodytext">

+    <p>This demo shows the power of image and metadata support in Simple ODF.<br /><br/>

+	A 2D bar code is a special image that can be scanned by a smart phone or a dedicated scanner. It could contain a URL, a books ISBN number a vCard for a person's contact, information, etc. It makes it easy to transfer information into a smartphone from a physical object, like a printed document, or a newspaper or magazine.<br /><br/>
	In this demo, the contact information of a document's author has been put in the metadata of a presentation document, with an ODF editor, such as IBM Lotus Symphony. The contact information in the metadata is extracted with the Simple ODF API, and wrapped into JSON object. Then a RESTful web service is called to generate a 2D bar code image based on this JSON object. 
	The bar code image is then added to the first slide of this presentation using the Simple ODF API.<br /><br/>
	
	This picture shows how the contact information is added to the metadata of this document.<br /><br/>

+<img src="image/demo8_metadata.bmp" ></img><br/>
<br />This picture shows the 2D bar code image added to the first slide of this presentation document.<br /><br/> 
<img src="image/demo8_slide.bmp" ></img><br/>
+</p>

+</div>

+<hr/>

+<div class="contenttitle">

+    <a name="codeintroduction">Code Introduction</a>

+</div>

+<div class="bodytext">

+    <p>

+	There code of this demo is very simple. First, we load the presentation document, and extract the metadata with Simple ODF API. Second, we invoke the web service to generate the bar code image and get the URI of this image. 

+	Finally, we get the subtitle text box in the first slide, add an image just below of this subtitle text box. Please note how FrameRectangle is used to specify the image position.<br /><br/>

+    <!--java code-->

+    <pre class="brush:java;">

+	public static void main(String[] args) {

+		try {
			//load the presentation
			PresentationDocument presentation = PresentationDocument.loadDocument("Demotemplate.odp");
			//get the metadata
			Meta metaData = new Meta(presentation.getMetaDom());
			String creator = metaData.getCreator();
			String mailto = metaData.getUserDefinedDataValue("Email");
			String phoneno = metaData.getUserDefinedDataValue("Phone");

			//invoke the 2D barcode service, and get the url
			BarcodeImageGeneration demo = new BarcodeImageGeneration();
			String url = demo.invokepost(creator,mailto,phoneno);
			
			//Add the image to the first slide
			Slide slide = presentation.getSlideByIndex(0);
			Textbox subtitleBox = slide.getTextboxByUsage(PresentationClass.SUBTITLE).get(0);
			FrameRectangle subtitleRect = subtitleBox.getRectangle();
			Image image = Image.newImage(slide, new URI(url));
			FrameRectangle imageRect = image.getRectangle();
			imageRect.setX(subtitleRect.getX()+(subtitleRect.getWidth()-imageRect.getWidth())/2);
			imageRect.setY(subtitleRect.getY()+subtitleRect.getHeight());
			image.setRectangle(imageRect);
			
			presentation.save("output.odp");

		} catch (Exception e) {
			e.printStackTrace();
		}

+	}

+    </pre>

+</p>

+</div>

+<hr/>

+<div class="contenttitle">

+    <a name="download">Download</a>

+</div>

+<div class="bodytext">

+  <p>

+    Powered by the Simple Java API for ODF version  <a target="_new" href="../downloads.html"><img src="../images/link.png"></img>0.5.5</a>.

+  </p>

+  <p>

+    You can download the code of this demo from <a href="TwoDBarcodeDemo.zip"><img src="../images/link.png"></img>here</a>.

+  </p>

+  <p>

    The dependent library jslib.zip can be downloaded from <a href="http://puzzle.dl.sourceforge.net/sourceforge/xulmaker/jslib.zip"><img src="../images/link.png"></img>here</a>.

  </p>
</div>

+<!---------------------------------------------------------------------------------------------------->		

+</div>

+<div id="footer" class="smallgraytext"> <a href="#">Home</a> | <a href="#">About Us</a> | <a href="#">Contact Us</a> </div>

+</div>

+</div>

+
+
+  </div>
+
+  <div id="footera">
+    <div id="poweredby">
+      <p><img src="/odftoolkit/images/feather-small.gif"/><br/>Powered by the Apache CMS.</p>
+    </div>
+    <div id="copyrighta">
+      <p>
+	Apache "ODF Toolkit" is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator.
+	Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and
+	decision making process	have stabilized in a manner consistent with other successful ASF projects. While incubation status is
+	not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has
+	yet to be fully endorsed by the ASF.</p>
+      <p>
+	Copyright &copy; 2011 The Apache Software Foundation Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+	<a href="/openofficeorg/contact.html">Contact Us</a>
+	<br />Apache and the Apache feather logos are trademarks of The Apache Software Foundation.
+	<br />Other names appearing on the site may be trademarks of their respective owners.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.html
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.html (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.html Tue Aug 30 07:36:37 2011
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<link href="/odftoolkit/css/odf.css" rel="stylesheet" type="text/css">
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<link rel="stylesheet" href="../images/style.css" type="text/css" />
+<link type="text/css" rel="stylesheet" href="styles/shCoreEclipse.css"/>
+<title>Demos - SimpleODF</title>
+<style type="text/css">
+<!--

+.STYLE1 {

+	color: #FFFFFF;

+	font-size: 24px;

+}

+.STYLE2 {font-size: 32px}

+.STYLE3 {font-size: 16px}

+.STYLE4 {font-size: 36px}

+-->
+</style>
+<script type="text/javascript" src="scripts/shCore.js"></script>  
+<script type="text/javascript" src="scripts/shBrushJava.js"></script>  
+<script type="text/javascript"> SyntaxHighlighter.all();</script>
+<script type="text/javascript">
+  var _gaq = _gaq || [];

+  _gaq.push(['_setAccount', 'UA-22366020-1']);

+  _gaq.push(['_trackPageview']);

+

+  (function() {

+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;

+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';

+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);

+  })();

+

+</script>
+
+
+</head>
+
+<body>
+  <div id="banner">
+   <!-- <div id="bannerleft"><a alt="Apache ODF Toolkit (incubating)" href="http://incubator.apache.org/odftoolkit/">
+      <img id="logo" alt="Apache ODF Toolkit (Incubating)" src="/odftoolkit/images/ooo-logo.png"/></a></div> -->
+    <div id="bannerright"><a alt="Apache Incubator" href="http://incubator.apache.org">
+      <img id="asf-logo" alt="Apache Incubator" src="/odftoolkit/images/apache-incubator-logo.png"/></a></div>
+   <div id="bannercenter"><br/>&nbsp;&nbsp;&nbsp;&nbsp;Apache ODF Toolkit (incubating)</div>
+  </div>
+  <div id="clear"></div>
+  
+  <div id="content">
+  
+    
+    
+<div id="page" align="center">
+<div id="content" style="width:920px" class="contentpanel">
+<div id="topheader">
+    <div class="topright"> </div>
+</div>
+<div id="menu">
+<div align="left" class="smallwhitetext"> <a href="../index.html" class="home"> </a> <a href="../downloads.html" class="download"></a> <a href="../documents.html" class="document"></a> <a href="../demo/index.html" class="sample"> </a> </div>
+</div>
+<div id="subcontent" align ="left">
+        <div align="left" class="titletext"> <span>
+		<a href="index.html">Simple Demos<a> > 
+		<a href="demo9.html">Demo 8: Create Analysis Report with Charts<a>
+	</span> 
+</div>
+<!---------------------------------------------------------------------------------------------------->	
+<div class="contenttitle">
+    <a name="overview">Overview</a>
+</div>
+<div class="bodytext">
+    <p>
	Simple ODF provides Chart API since version 0.6. Chart is a visualized way of data show in electronic document. For ODF document, text document, spreadsheet document and presentation document can embed charts to help describe content. This demo shows the power of chart support in Simple ODF.<br/><br/>
	In this demo, a web traffic analytics report will be generated in presentation document and text document format. The initial data is stored in a spreadsheet document, which includes visitors, traffic sources and page visit information. These data will be used in charts. Each chart chooses a cell range and uses the values of these cells to draw picture. It's easy and convenient.<br/><br/>
	No need predefined template, all of the document are generated by Simple ODF API. This demo not only tell you how to use Chart API, but also teach you ro use slide layout to improve presentation design.<br/><br/>
	This picture shows the generated presentation document.<br/><br/>
+	<img src="image/demo9p.png"></img><br/><br/>
	This picture shows the generated text document.<br/><br/>
	<img src="image/demo9t.png"></img><br/><br/>
	Besides, we also supply some codes to show how to create chart in a spreadsheet document. The following picture shows the generated document.<br/><br/> 
	<img src="image/demo9s.png"></img><br/>
+	</p>
+</div>
+<hr/>
+<div class="contenttitle">
+    <a name="codeintroduction">Code Introduction</a>
+</div>
+<div class="bodytext">
+    <p>
+	There code of this demo is very clear. First, we create a presentation document and load the data document. Second, we create cover page and set its content. Thirdly, we add charts to each slide. If you want to add chart to a slide, you must chose a layout which can hold chart. In Simple ODF 0.6, these layouts are "TITLE_PLUS_CHART", "TITLE_PLUS_2_CHART", "TITLE_LEFT_CHART_RIGHT_OUTLINE", "TITLE_PLUS_3_OBJECT", "TITLE_PLUS_4_OBJECT". Different layout can own different count of charts. Please be sure you know that, otherwise chart insert would be failed. For slide, you needn't set the chart size or position, Simple ODF will do it automatically. Finally, the data document is closed and the new created document is saved. <br/><br/>
+    <!--java code-->
+    <pre class="brush:java;">
+	private static void generatePresentationChart() {
		try {
			PresentationDocument presentationDoc = PresentationDocument.newPresentationDocument();
			SpreadsheetDocument spreadsheetDoc = SpreadsheetDocument.loadDocument("demo9_data.ods");

			// create cover page
			Slide slide = presentationDoc.newSlide(0, "Slide1",	SlideLayout.TITLE_SUBTITLE);
			setSlideTextContent(slide, "Simple Website Analytics Report", "2011-04-27~2011-05-27");

			// create visitors overview page 1
			slide = presentationDoc.newSlide(1, "Slide2", SlideLayout.TITLE_PLUS_3_OBJECT);
			setSlideTextContent(slide, "Visitors Overview");
			Table tableA = spreadsheetDoc.getTableByName("A");
			convertFromTableToList(tableA, slide.addList(), 4, 17, 5, 20);
			CellRangeAddressList cellRange = CellRangeAddressList.valueOf("A.A1:A.B3");
			Chart chart = slide.createChart("New Visitor VS. Returning Visitor", spreadsheetDoc, cellRange, true, true, false, null);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("A.A6:A.B37");
			chart = slide.createChart("Daily Visit", spreadsheetDoc, cellRange,	true, true, false, null);
			chart.setChartType(ChartType.LINE);

			// create visitors overview page 2
			slide = presentationDoc.newSlide(2, "Slide3", SlideLayout.TITLE_PLUS_2_CHART);
			setSlideTextContent(slide, "Visitors Overview");
			cellRange = CellRangeAddressList.valueOf("A.E1:A.G14");
			chart = slide.createChart("Count of Visits", spreadsheetDoc, cellRange, true, true, false, null);
			chart.setChartType(ChartType.BAR);
			cellRange = CellRangeAddressList.valueOf("A.I1:A.K8");
			chart = slide.createChart("Visit Duration", spreadsheetDoc,	cellRange, true, true, false, null);

			// create traffic sources overview page
			slide = presentationDoc.newSlide(3, "Slide4", SlideLayout.TITLE_PLUS_4_OBJECT);
			setSlideTextContent(slide, "Traffic Sources Overview");
			Table tableB = spreadsheetDoc.getTableByName("B");
			convertFromTableToList(tableB, slide.addList(), 0, 2, 1, 4);
			cellRange = CellRangeAddressList.valueOf("B.A2:B.C5");
			chart = slide.createChart("Traffic Sources Type", spreadsheetDoc, cellRange, true, true, false, null);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("B.A9:B.C19");
			chart = slide.createChart("Referral Traffic", spreadsheetDoc, cellRange, true, true, false, null);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("B.E2:B.G8");
			chart = slide.createChart("Search Keyword", spreadsheetDoc,	cellRange, true, true, false, null);
			chart.setChartType(ChartType.PIE);

			// create content overview page
			slide = presentationDoc.newSlide(4, "Slide5", SlideLayout.TITLE_PLUS_CHART);
			setSlideTextContent(slide, "Content Overview");
			cellRange = CellRangeAddressList.valueOf("C.A1:C.C8");
			chart = slide.createChart("Page Visit", spreadsheetDoc, cellRange, true, true, false, null);
			chart.setChartType(ChartType.BAR);

			spreadsheetDoc.close();
			presentationDoc.save("demo9p.odp");
			presentationDoc.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
+    </pre>
+</p>
<p>
	The following codes show how to generate the text document format report. Different from presentation, you need to set chart size before add it to the document.<br/><br/>
    <!--java code-->
    <pre class="brush:java;">
	private static void generateTextDocument() {
		try {
			TextDocument textDoc = TextDocument.newTextDocument();
			SpreadsheetDocument spreadsheetDoc = SpreadsheetDocument.loadDocument("demo9_data.ods");

			// create cover page
			textDoc.addParagraph("Simple Website Analytics Report(2011-04-27~2011-05-27)");
			textDoc.addParagraph("Visitors Overview");
			// create visitors overview page 1
			CellRangeAddressList cellRange = CellRangeAddressList.valueOf("A.A1:A.B3");
			Rectangle rect = new Rectangle();
			rect.width = 14000;
			rect.height = 8000;
			Chart chart = textDoc.createChart("New Visitor VS. Returning Visitor", spreadsheetDoc, cellRange, true, true, false, rect);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("A.A6:A.B37");
			chart = textDoc.createChart("Daily Visit", spreadsheetDoc,cellRange, true, true, false, rect);
			chart.setChartType(ChartType.LINE);
			cellRange = CellRangeAddressList.valueOf("A.E1:A.G14");
			chart = textDoc.createChart("Count of Visits", spreadsheetDoc, cellRange, true, true, false, rect);
			chart.setChartType(ChartType.BAR);
			cellRange = CellRangeAddressList.valueOf("A.I1:A.K8");
			chart = textDoc.createChart("Visit Duration", spreadsheetDoc, cellRange, true, true, false, rect);

			// create traffic sources overview page
			textDoc.addParagraph("Traffic Sources Overview");
			cellRange = CellRangeAddressList.valueOf("B.A2:B.C5");
			chart = textDoc.createChart("Traffic Sources Type", spreadsheetDoc,	cellRange, true, true, false, rect);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("B.A9:B.C19");
			chart = textDoc.createChart("Referral Traffic", spreadsheetDoc,	cellRange, true, true, false, rect);
			chart.setChartType(ChartType.PIE);
			cellRange = CellRangeAddressList.valueOf("B.E2:B.G8");
			chart = textDoc.createChart("Search Keyword", spreadsheetDoc, cellRange, true, true, false, rect);
			chart.setChartType(ChartType.PIE);

			// create content overview page
			textDoc.addParagraph("Content Overview");
			cellRange = CellRangeAddressList.valueOf("C.A1:C.C8");
			chart = textDoc.createChart("Page Visit", spreadsheetDoc, cellRange, true, true, false, rect);
			chart.setChartType(ChartType.BAR);
			
			spreadsheetDoc.close();
			textDoc.save("demo9t.odt");
			textDoc.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
    </pre>
</p>
<p>
	Lastly, let's have a look at how to add chart to spreadsheet document. It's similar with text and presentation documents. On the other hand, it also has a special feature. You can specify a cell as the position where the chart should be located.<br/><br/>
    <!--java code-->
    <pre class="brush:java;">
	private static void generateSpreadsheetDocument() {
		try {
			SpreadsheetDocument spreadsheetDoc = SpreadsheetDocument.loadDocument("demo9_data.ods");
			// create visitors overview page 1
			CellRangeAddressList cellRange = CellRangeAddressList.valueOf("A.A1:A.B3");
			Rectangle rect = new Rectangle();
			rect.width = 15000;
			rect.height = 8000;
			Cell positionCell = spreadsheetDoc.getTableByName("B").getCellByPosition("E1");
			spreadsheetDoc.createChart("Page Visit", spreadsheetDoc, cellRange,	true, true, false, rect, positionCell);
			spreadsheetDoc.save("demo9s.ods");
			spreadsheetDoc.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
    </pre>
</p>
+</div>
+<hr/>
+<div class="contenttitle">
+    <a name="download">Download</a>
+</div>
+<div class="bodytext">
+  <p>
+    Powered by the Simple Java API for ODF version  <a target="_new" href="../downloads.html"><img src="../images/link.png"></img>0.6</a>.
+  </p>
+  <p>
+    You can download the code of this demo from <a href="demo9.zip"><img src="../images/link.png"></img>here</a>.
+  </p>
</div>
+<!---------------------------------------------------------------------------------------------------->		
+</div>
+<div id="footer" class="smallgraytext"> <a href="#">Home</a> | <a href="#">About Us</a> | <a href="#">Contact Us</a> </div>
+</div>
+</div>
+
+
+  </div>
+
+  <div id="footera">
+    <div id="poweredby">
+      <p><img src="/odftoolkit/images/feather-small.gif"/><br/>Powered by the Apache CMS.</p>
+    </div>
+    <div id="copyrighta">
+      <p>
+	Apache "ODF Toolkit" is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator.
+	Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and
+	decision making process	have stabilized in a manner consistent with other successful ASF projects. While incubation status is
+	not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has
+	yet to be fully endorsed by the ASF.</p>
+      <p>
+	Copyright &copy; 2011 The Apache Software Foundation Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+	<a href="/openofficeorg/contact.html">Contact Us</a>
+	<br />Apache and the Apache feather logos are trademarks of The Apache Software Foundation.
+	<br />Other names appearing on the site may be trademarks of their respective owners.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.zip
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.zip
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/demo9.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ExtractedNotes.JPG
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ExtractedNotes.JPG
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ExtractedNotes.JPG
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT small.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT small.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT small.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Generated ODT.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ODT Templating.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ODT Templating.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/ODT Templating.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/PresCombine.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/PresCombine.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/PresCombine.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Thumbs.db
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Thumbs.db
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/Thumbs.db
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/candidate-data.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/candidate-data.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/candidate-data.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10_small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10_small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo10_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_list.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_list.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_list.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_table.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_table.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_code_table.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list_small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list_small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_list_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_table.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_table.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo4_organization_table.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc small.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc small.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc small.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc.jpg
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc.jpg
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo5_doc.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6-small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6-small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6-small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo6.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo7_small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo7_small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo7_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo8_small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo8_small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo8_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9_small.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9_small.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9p.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9p.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9p.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9s.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9s.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9s.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9t.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9t.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/demo9t.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/generated-offer-letter.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/generated-offer-letter.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/generated-offer-letter.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/offer-letter-sample.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/offer-letter-sample.png
------------------------------------------------------------------------------
    svn:executable = *

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/image/offer-letter-sample.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/index.html
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/index.html (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/index.html Tue Aug 30 07:36:37 2011
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<link href="/odftoolkit/css/odf.css" rel="stylesheet" type="text/css">
+
+
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<link rel="stylesheet" href="../images/style.css" type="text/css" />
	<title>Samples - SimpleODF</title>
    <style type="text/css">
<!--
.STYLE1 {
+	color: #FFFFFF;
+	font-size: 24px;
+}
.STYLE2 {font-size: 32px}
.STYLE3 {font-size: 16px}
.STYLE4 {font-size: 36px}
-->
    </style>
	<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-22366020-1']);
  _gaq.push(['_trackPageview']);
  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>
+
+</head>
+
+<body>
+  <div id="banner">
+   <!-- <div id="bannerleft"><a alt="Apache ODF Toolkit (incubating)" href="http://incubator.apache.org/odftoolkit/">
+      <img id="logo" alt="Apache ODF Toolkit (Incubating)" src="/odftoolkit/images/ooo-logo.png"/></a></div> -->
+    <div id="bannerright"><a alt="Apache Incubator" href="http://incubator.apache.org">
+      <img id="asf-logo" alt="Apache Incubator" src="/odftoolkit/images/apache-incubator-logo.png"/></a></div>
+   <div id="bannercenter"><br/>&nbsp;&nbsp;&nbsp;&nbsp;Apache ODF Toolkit (incubating)</div>
+  </div>
+  <div id="clear"></div>
+  
+  <div id="content">
+  
+    
+    
	<div id="page" align="center">
		<div id="content" style="width:920px" class="contentpanel">
			  <div id="topheader">
+				<div class="topright">
+				</div>	
+			</div>
+			<div id="menu">
+				<div align="left" class="smallwhitetext">
+					<a href="../index.html" class="home"> </a> 
+					<a href="../downloads.html" class="download"></a> 
+					<a href="../documents.html" class="document"></a> 
+					<a href="index.html" class="sample"> </a>
+					</div>
+			</div>
+		<div id="subcontent">
+				<div align="left" class="titletext">
+<span >
+<a href="index.html">Simple Demos</a>
+</span>
+			  	</div><br/>
				<div align="justify">
				 <div class="bodytext"><strong>The demos of simple java API for ODF project are shown here. Each demo contains the overview of the demo, the code introduction and the code downloading resource. </strong>
					</div><br/>
				  	<div class="bodytext">
<div id="mytable">
<ul>
+<li>
+<div id="demoth">9. Automatically Formatting a Document<a href="demo10.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo10_small.png"></img></div>
+<div>It's a commen scenario that we need apply some necessary styles for plain text to improve its appearance. In this demo, a text document is created using plain text from a text file. The new document looks orderly and beautiful than before. 
+</div>
+</div>
+<a href="demo10.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">8. Create Analysis Report with Charts<a href="demo9.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo9_small.png"></img></div>
+<div>In this demo, we will show how to create charts in presentation document, text document and spreadsheet document. Charts data is from a spreadsheet document. You can chose a cell range and using the values of these cells to generate a chart. It's easy and convenient. 
+</div>
+</div>
+<a href="demo9.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">7. Add 2D barcode image to a slide<a href="demo8.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo8_small.png"></img></div>
+<div>We get the author contact information from the metadata of a presentation document. With a RESTful web service, a 2D bar code image is generated based on these information. With image API, the bar code image will be added to the first slide of this presentation at last. 
+</div>
+</div>
+<a href="demo8.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">6. Offer Letter with Text Fields<a href="demo7.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo7_small.png"></img></div>
+<div>We have introduced several samples about how to use Simple ODF API to generate document from the predefined templete. But sounds like, we never talk about how to create a template document using Simple ODF API. Today, let's do it! 
+</div>
+</div>
+<a href="demo7.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">5. Booking Sheet with Text Box<a href="demo6.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo6-small.png"></img></div>
+<div>This demo is similar with Demo3: Navigation API in Hotel Receipt. The different is that text box is included in the document template, so that we can show the text box feature in Simple ODF. Besides, this demo also shows the collaboration method between spreadsheet and text document templete.
+</div>
+</div>
+<a href="demo6.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">4. Multiple Presentations Assembler<a href="demo5.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo5_doc small.jpg"></img></div>
+<div>If you make a lot of presentations in your daily work, you know that you don't always create a presentation from scratch. This demo shows how to assemble several different presentations together to make a new presentation using Simple ODF. 
+</div>
+</div>
+<a href="demo5.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">3. List and Table Conversion<a href="demo4.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/demo4_organization_list_small.png"></img></div>
+<div>Starting in version 0.4, we have added methods to support bullet, numbered and image lists. This includes frequently used features for processing lists and list item. This demo is designed to show the power of List API and help you learn how to use it. 
+</div>
+</div>
+<a href="demo4.html" class="smallgraytext">More...</a>
+</li>
+<li>
+<div id="demoth">2. Navigation API in Hotel Receipt<a href="demo3.html"><img src="../images/go.png" align="right"/></a></div>
+<div id="demotd"><div><img src="image/Generated ODT small.jpg"></img></div>
+<div>This demo is a simple template application about hotel receipt. By loading the configuration file and navigating the hotel receipt template, this demo could generate the ODF documents. 
+</div>
+</div>
+<a href="demo3.html" class="smallgraytext">More...</a>
+</li>
<li>
<div id="demoth">1. Persentation Extraction and Combination<a href="demo2.html"><img src="../images/go.png" align="right"/></a></div>
<div id="demotd"><div><img src="image/PresCombine.jpg"></img></div>
<div>To show the operation of Presentation in Simple API, the Presentation Codmbination demo is used which combine two independent presentation documents together and extract the notes of each slide out to a Text document.
</div>
</div> 
<a href="demo2.html" class="smallgraytext">More...</a>
</li>
</ul>
</div>
<br/>
<br/>		
</div>
</div>
		</div>
		<div id="footer" class="smallgraytext">
				<a href="index.html">Home</a> | <a href="#">About Us</a> | <a href="mailto:Devin@odftoolkit.org">Contact Us</a>
			</div>
	  </div>
	</div>
+
+  </div>
+
+  <div id="footera">
+    <div id="poweredby">
+      <p><img src="/odftoolkit/images/feather-small.gif"/><br/>Powered by the Apache CMS.</p>
+    </div>
+    <div id="copyrighta">
+      <p>
+	Apache "ODF Toolkit" is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator.
+	Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and
+	decision making process	have stabilized in a manner consistent with other successful ASF projects. While incubation status is
+	not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has
+	yet to be fully endorsed by the ASF.</p>
+      <p>
+	Copyright &copy; 2011 The Apache Software Foundation Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+	<a href="/openofficeorg/contact.html">Contact Us</a>
+	<br />Apache and the Apache feather logos are trademarks of The Apache Software Foundation.
+	<br />Other names appearing on the site may be trademarks of their respective owners.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shBrushJava.js
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shBrushJava.js (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shBrushJava.js Tue Aug 30 07:36:37 2011
@@ -0,0 +1,57 @@
+/**
+ * SyntaxHighlighter
+ * http://alexgorbatchev.com/SyntaxHighlighter
+ *
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
+ * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
+ *
+ * @version
+ * 3.0.83 (July 02 2010)
+ * 
+ * @copyright
+ * Copyright (C) 2004-2010 Alex Gorbatchev.
+ *
+ * @license
+ * Dual licensed under the MIT and GPL licenses.
+ */
+;(function()
+{
+	// CommonJS
+	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
+
+	function Brush()
+	{
+		var keywords =	'abstract assert boolean break byte case catch char class const ' +
+						'continue default do double else enum extends ' +
+						'false final finally float for goto if implements import ' +
+						'instanceof int interface long native new null ' +
+						'package private protected public return ' +
+						'short static strictfp super switch synchronized this throw throws true ' +
+						'transient try void volatile while';
+
+		this.regexList = [
+			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },		// one line comments
+			{ regex: /\/\*([^\*][\s\S]*)?\*\//gm,						css: 'comments' },	 	// multiline comments
+			{ regex: /\/\*(?!\*\/)\*[\s\S]*?\*\//gm,					css: 'preprocessor' },	// documentation comments
+			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },		// strings
+			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// strings
+			{ regex: /\b([\d]+(\.[\d]+)?|0x[a-f0-9]+)\b/gi,				css: 'value' },			// numbers
+			{ regex: /(?!\@interface\b)\@[\$\w]+\b/g,					css: 'color1' },		// annotation @anno
+			{ regex: /\@interface\b/g,									css: 'color2' },		// @interface keyword
+			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' }		// java keyword
+			];
+
+		this.forHtmlScript({
+			left	: /(&lt;|<)%[@!=]?/g, 
+			right	: /%(&gt;|>)/g 
+		});
+	};
+
+	Brush.prototype	= new SyntaxHighlighter.Highlighter();
+	Brush.aliases	= ['java'];
+
+	SyntaxHighlighter.brushes.Java = Brush;
+
+	// CommonJS
+	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
+})();

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shBrushJava.js
------------------------------------------------------------------------------
    svn:executable = *

Added: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shCore.js
==============================================================================
--- websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shCore.js (added)
+++ websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shCore.js Tue Aug 30 07:36:37 2011
@@ -0,0 +1,17 @@
+/**
+ * SyntaxHighlighter
+ * http://alexgorbatchev.com/SyntaxHighlighter
+ *
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
+ * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
+ *
+ * @version
+ * 3.0.83 (July 02 2010)
+ * 
+ * @copyright
+ * Copyright (C) 2004-2010 Alex Gorbatchev.
+ *
+ * @license
+ * Dual licensed under the MIT and GPL licenses.
+ */
+eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('K M;I(M)1S 2U("2a\'t 4k M 4K 2g 3l 4G 4H");(6(){6 r(f,e){I(!M.1R(f))1S 3m("3s 15 4R");K a=f.1w;f=M(f.1m,t(f)+(e||""));I(a)f.1w={1m:a.1m,19:a.19?a.19.1a(0):N};H f}6 t(f){H(f.1J?"g":"")+(f.4s?"i":"")+(f.4p?"m":"")+(f.4v?"x":"")+(f.3n?"y":"")}6 B(f,e,a,b){K c=u.L,d,h,g;v=R;5K{O(;c--;){g=u[c];I(a&g.3r&&(!g.2p||g.2p.W(b))){g.2q.12=e;I((h=g.2q.X(f))&&h.P===e){d={3k:g.2b.W(b,h,a),1C:h};1N}}}}5v(i){1S i}5q{v=11}H d}6 p(f,e,a){I(3b.Z.1i)H f.1i(e,a);O(a=a||0;a<f.L;a++)I(f[a]===e)H a;H-1}M=6(f,e){K a=[],b=M.1B,c=0,d,h;I(M.1R(f)){I(e!==1d)1S 3m("2a\'t 5r 5I 5F 5B 5C 15 5E 5p");H r(f)}I(v)1S 2U("2a\'t W 3l M 59 5m 5g 5x 5i");e=e||"";O(d={2N:11,19:[],2K:6(g){H e.1i
 (g)>-1},3d:6(g){e+=g}};c<f.L;)I(h=B(f,c,b,d)){a.U(h.3k);c+=h.1C[0].L||1}Y I(h=n.X.W(z[b],f.1a(c))){a.U(h[0]);c+=h[0].L}Y{h=f.3a(c);I(h==="[")b=M.2I;Y I(h==="]")b=M.1B;a.U(h);c++}a=15(a.1K(""),n.Q.W(e,w,""));a.1w={1m:f,19:d.2N?d.19:N};H a};M.3v="1.5.0";M.2I=1;M.1B=2;K C=/\\$(?:(\\d\\d?|[$&`\'])|{([$\\w]+)})/g,w=/[^5h]+|([\\s\\S])(?=[\\s\\S]*\\1)/g,A=/^(?:[?*+]|{\\d+(?:,\\d*)?})\\??/,v=11,u=[],n={X:15.Z.X,1A:15.Z.1A,1C:1r.Z.1C,Q:1r.Z.Q,1e:1r.Z.1e},x=n.X.W(/()??/,"")[1]===1d,D=6(){K f=/^/g;n.1A.W(f,"");H!f.12}(),y=6(){K f=/x/g;n.Q.W("x",f,"");H!f.12}(),E=15.Z.3n!==1d,z={};z[M.2I]=/^(?:\\\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\\29-26-f]{2}|u[\\29-26-f]{4}|c[A-3o-z]|[\\s\\S]))/;z[M.1B]=/^(?:\\\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\\d*|x[\\29-26-f]{2}|u[\\29-26-f]{4}|c[A-3o-z]|[\\s\\S])|\\(\\?[:=!]|[?*+]\\?|{\\d+(?:,\\d*)?}\\??)/;M.1h=6(f,e,a,b){u.U({2q:r(f,"g"+(E?"y":"")),2b:e,3r:a||M.1B,2p:b||N})};M.2n=6(f,e){K a=f+"/"+(e||"");H M.2n[a]||(M.2n[a]=M(f,e))};M.3c=6(f){H r(f,"g")}
 ;M.5l=6(f){H f.Q(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g,"\\\\$&")};M.5e=6(f,e,a,b){e=r(e,"g"+(b&&E?"y":""));e.12=a=a||0;f=e.X(f);H b?f&&f.P===a?f:N:f};M.3q=6(){M.1h=6(){1S 2U("2a\'t 55 1h 54 3q")}};M.1R=6(f){H 53.Z.1q.W(f)==="[2m 15]"};M.3p=6(f,e,a,b){O(K c=r(e,"g"),d=-1,h;h=c.X(f);){a.W(b,h,++d,f,c);c.12===h.P&&c.12++}I(e.1J)e.12=0};M.57=6(f,e){H 6 a(b,c){K d=e[c].1I?e[c]:{1I:e[c]},h=r(d.1I,"g"),g=[],i;O(i=0;i<b.L;i++)M.3p(b[i],h,6(k){g.U(d.3j?k[d.3j]||"":k[0])});H c===e.L-1||!g.L?g:a(g,c+1)}([f],0)};15.Z.1p=6(f,e){H J.X(e[0])};15.Z.W=6(f,e){H J.X(e)};15.Z.X=6(f){K e=n.X.1p(J,14),a;I(e){I(!x&&e.L>1&&p(e,"")>-1){a=15(J.1m,n.Q.W(t(J),"g",""));n.Q.W(f.1a(e.P),a,6(){O(K c=1;c<14.L-2;c++)I(14[c]===1d)e[c]=1d})}I(J.1w&&J.1w.19)O(K b=1;b<e.L;b++)I(a=J.1w.19[b-1])e[a]=e[b];!D&&J.1J&&!e[0].L&&J.12>e.P&&J.12--}H e};I(!D)15.Z.1A=6(f){(f=n.X.W(J,f))&&J.1J&&!f[0].L&&J.12>f.P&&J.12--;H!!f};1r.Z.1C=6(f){M.1R(f)||(f=15(f));I(f.1J){K e=n.1C.1p(J,14);f.12=0;H e}H f.X(J)};1r.Z.Q=6(f,e){K a=M.1R(f),b,
 c;I(a&&1j e.58()==="3f"&&e.1i("${")===-1&&y)H n.Q.1p(J,14);I(a){I(f.1w)b=f.1w.19}Y f+="";I(1j e==="6")c=n.Q.W(J,f,6(){I(b){14[0]=1f 1r(14[0]);O(K d=0;d<b.L;d++)I(b[d])14[0][b[d]]=14[d+1]}I(a&&f.1J)f.12=14[14.L-2]+14[0].L;H e.1p(N,14)});Y{c=J+"";c=n.Q.W(c,f,6(){K d=14;H n.Q.W(e,C,6(h,g,i){I(g)5b(g){24"$":H"$";24"&":H d[0];24"`":H d[d.L-1].1a(0,d[d.L-2]);24"\'":H d[d.L-1].1a(d[d.L-2]+d[0].L);5a:i="";g=+g;I(!g)H h;O(;g>d.L-3;){i=1r.Z.1a.W(g,-1)+i;g=1Q.3i(g/10)}H(g?d[g]||"":"$")+i}Y{g=+i;I(g<=d.L-3)H d[g];g=b?p(b,i):-1;H g>-1?d[g+1]:h}})})}I(a&&f.1J)f.12=0;H c};1r.Z.1e=6(f,e){I(!M.1R(f))H n.1e.1p(J,14);K a=J+"",b=[],c=0,d,h;I(e===1d||+e<0)e=5D;Y{e=1Q.3i(+e);I(!e)H[]}O(f=M.3c(f);d=f.X(a);){I(f.12>c){b.U(a.1a(c,d.P));d.L>1&&d.P<a.L&&3b.Z.U.1p(b,d.1a(1));h=d[0].L;c=f.12;I(b.L>=e)1N}f.12===d.P&&f.12++}I(c===a.L){I(!n.1A.W(f,"")||h)b.U("")}Y b.U(a.1a(c));H b.L>e?b.1a(0,e):b};M.1h(/\\(\\?#[^)]*\\)/,6(f){H n.1A.W(A,f.2S.1a(f.P+f[0].L))?"":"(?:)"});M.1h(/\\((?!\\?)/,6(){J.19.U(N);H"("})
 ;M.1h(/\\(\\?<([$\\w]+)>/,6(f){J.19.U(f[1]);J.2N=R;H"("});M.1h(/\\\\k<([\\w$]+)>/,6(f){K e=p(J.19,f[1]);H e>-1?"\\\\"+(e+1)+(3R(f.2S.3a(f.P+f[0].L))?"":"(?:)"):f[0]});M.1h(/\\[\\^?]/,6(f){H f[0]==="[]"?"\\\\b\\\\B":"[\\\\s\\\\S]"});M.1h(/^\\(\\?([5A]+)\\)/,6(f){J.3d(f[1]);H""});M.1h(/(?:\\s+|#.*)+/,6(f){H n.1A.W(A,f.2S.1a(f.P+f[0].L))?"":"(?:)"},M.1B,6(){H J.2K("x")});M.1h(/\\./,6(){H"[\\\\s\\\\S]"},M.1B,6(){H J.2K("s")})})();1j 2e!="1d"&&(2e.M=M);K 1v=6(){6 r(a,b){a.1l.1i(b)!=-1||(a.1l+=" "+b)}6 t(a){H a.1i("3e")==0?a:"3e"+a}6 B(a){H e.1Y.2A[t(a)]}6 p(a,b,c){I(a==N)H N;K d=c!=R?a.3G:[a.2G],h={"#":"1c",".":"1l"}[b.1o(0,1)]||"3h",g,i;g=h!="3h"?b.1o(1):b.5u();I((a[h]||"").1i(g)!=-1)H a;O(a=0;d&&a<d.L&&i==N;a++)i=p(d[a],b,c);H i}6 C(a,b){K c={},d;O(d 2g a)c[d]=a[d];O(d 2g b)c[d]=b[d];H c}6 w(a,b,c,d){6 h(g){g=g||1P.5y;I(!g.1F){g.1F=g.52;g.3N=6(){J.5w=11}}c.W(d||1P,g)}a.3g?a.3g("4U"+b,h):a.4y(b,h,11)}6 A(a,b){K c=e.1Y.2j,d=N;I(c==N){c={};O(K h 2g e.1U){K g=e.1U[h];d=g.4x;I(d!=N)
 {g.1V=h.4w();O(g=0;g<d.L;g++)c[d[g]]=h}}e.1Y.2j=c}d=e.1U[c[a]];d==N&&b!=11&&1P.1X(e.13.1x.1X+(e.13.1x.3E+a));H d}6 v(a,b){O(K c=a.1e("\\n"),d=0;d<c.L;d++)c[d]=b(c[d],d);H c.1K("\\n")}6 u(a,b){I(a==N||a.L==0||a=="\\n")H a;a=a.Q(/</g,"&1y;");a=a.Q(/ {2,}/g,6(c){O(K d="",h=0;h<c.L-1;h++)d+=e.13.1W;H d+" "});I(b!=N)a=v(a,6(c){I(c.L==0)H"";K d="";c=c.Q(/^(&2s;| )+/,6(h){d=h;H""});I(c.L==0)H d;H d+\'<17 1g="\'+b+\'">\'+c+"</17>"});H a}6 n(a,b){a.1e("\\n");O(K c="",d=0;d<50;d++)c+="                    ";H a=v(a,6(h){I(h.1i("\\t")==-1)H h;O(K g=0;(g=h.1i("\\t"))!=-1;)h=h.1o(0,g)+c.1o(0,b-g%b)+h.1o(g+1,h.L);H h})}6 x(a){H a.Q(/^\\s+|\\s+$/g,"")}6 D(a,b){I(a.P<b.P)H-1;Y I(a.P>b.P)H 1;Y I(a.L<b.L)H-1;Y I(a.L>b.L)H 1;H 0}6 y(a,b){6 c(k){H k[0]}O(K d=N,h=[],g=b.2D?b.2D:c;(d=b.1I.X(a))!=N;){K i=g(d,b);I(1j i=="3f")i=[1f e.2L(i,d.P,b.23)];h=h.1O(i)}H h}6 E(a){K b=/(.*)((&1G;|&1y;).*)/;H a.Q(e.3A.3M,6(c){K d="",h=N;I(h=b.X(c)){c=h[1];d=h[2]}H\'<a 2h="\'+c+\'">\'+c+"</a>"+d})}6 z(){O(K a=1E.
 36("1k"),b=[],c=0;c<a.L;c++)a[c].3s=="20"&&b.U(a[c]);H b}6 f(a){a=a.1F;K b=p(a,".20",R);a=p(a,".3O",R);K c=1E.4i("3t");I(!(!a||!b||p(a,"3t"))){B(b.1c);r(b,"1m");O(K d=a.3G,h=[],g=0;g<d.L;g++)h.U(d[g].4z||d[g].4A);h=h.1K("\\r");c.39(1E.4D(h));a.39(c);c.2C();c.4C();w(c,"4u",6(){c.2G.4E(c);b.1l=b.1l.Q("1m","")})}}I(1j 3F!="1d"&&1j M=="1d")M=3F("M").M;K e={2v:{"1g-27":"","2i-1s":1,"2z-1s-2t":11,1M:N,1t:N,"42-45":R,"43-22":4,1u:R,16:R,"3V-17":R,2l:11,"41-40":R,2k:11,"1z-1k":11},13:{1W:"&2s;",2M:R,46:11,44:11,34:"4n",1x:{21:"4o 1m",2P:"?",1X:"1v\\n\\n",3E:"4r\'t 4t 1D O: ",4g:"4m 4B\'t 51 O 1z-1k 4F: ",37:\'<!4T 1z 4S "-//4V//3H 4W 1.0 4Z//4Y" "1Z://2y.3L.3K/4X/3I/3H/3I-4P.4J"><1z 4I="1Z://2y.3L.3K/4L/5L"><3J><4N 1Z-4M="5G-5M" 6K="2O/1z; 6J=6I-8" /><1t>6L 1v</1t></3J><3B 1L="25-6M:6Q,6P,6O,6N-6F;6y-2f:#6x;2f:#6w;25-22:6v;2O-3D:3C;"><T 1L="2O-3D:3C;3w-32:1.6z;"><T 1L="25-22:6A-6E;">1v</T><T 1L="25-22:.6C;3w-6B:6R;"><T>3v 3.0.76 (72 73 3x)</T><T><a 2h="1Z://3u.2w/1v" 1F="38" 1L="2f:
 #3y">1Z://3u.2w/1v</a></T><T>70 17 6U 71.</T><T>6T 6X-3x 6Y 6D.</T></T><T>6t 61 60 J 1k, 5Z <a 2h="6u://2y.62.2w/63-66/65?64=5X-5W&5P=5O" 1L="2f:#3y">5R</a> 5V <2R/>5U 5T 5S!</T></T></3B></1z>\'}},1Y:{2j:N,2A:{}},1U:{},3A:{6n:/\\/\\*[\\s\\S]*?\\*\\//2c,6m:/\\/\\/.*$/2c,6l:/#.*$/2c,6k:/"([^\\\\"\\n]|\\\\.)*"/g,6o:/\'([^\\\\\'\\n]|\\\\.)*\'/g,6p:1f M(\'"([^\\\\\\\\"]|\\\\\\\\.)*"\',"3z"),6s:1f M("\'([^\\\\\\\\\']|\\\\\\\\.)*\'","3z"),6q:/(&1y;|<)!--[\\s\\S]*?--(&1G;|>)/2c,3M:/\\w+:\\/\\/[\\w-.\\/?%&=:@;]*/g,6a:{18:/(&1y;|<)\\?=?/g,1b:/\\?(&1G;|>)/g},69:{18:/(&1y;|<)%=?/g,1b:/%(&1G;|>)/g},6d:{18:/(&1y;|<)\\s*1k.*?(&1G;|>)/2T,1b:/(&1y;|<)\\/\\s*1k\\s*(&1G;|>)/2T}},16:{1H:6(a){6 b(i,k){H e.16.2o(i,k,e.13.1x[k])}O(K c=\'<T 1g="16">\',d=e.16.2x,h=d.2X,g=0;g<h.L;g++)c+=(d[h[g]].1H||b)(a,h[g]);c+="</T>";H c},2o:6(a,b,c){H\'<2W><a 2h="#" 1g="6e 6h\'+b+" "+b+\'">\'+c+"</a></2W>"},2b:6(a){K b=a.1F,c=b.1l||"";b=B(p(b,".20",R).1c);K d=6(h){H(h=15(h+"6f(\\\\w+)").X(c))?h[1]:N}("6g");b&&d&&
 e.16.2x[d].2B(b);a.3N()},2x:{2X:["21","2P"],21:{1H:6(a){I(a.V("2l")!=R)H"";K b=a.V("1t");H e.16.2o(a,"21",b?b:e.13.1x.21)},2B:6(a){a=1E.6j(t(a.1c));a.1l=a.1l.Q("47","")}},2P:{2B:6(){K a="68=0";a+=", 18="+(31.30-33)/2+", 32="+(31.2Z-2Y)/2+", 30=33, 2Z=2Y";a=a.Q(/^,/,"");a=1P.6Z("","38",a);a.2C();K b=a.1E;b.6W(e.13.1x.37);b.6V();a.2C()}}}},35:6(a,b){K c;I(b)c=[b];Y{c=1E.36(e.13.34);O(K d=[],h=0;h<c.L;h++)d.U(c[h]);c=d}c=c;d=[];I(e.13.2M)c=c.1O(z());I(c.L===0)H d;O(h=0;h<c.L;h++){O(K g=c[h],i=a,k=c[h].1l,j=3W 0,l={},m=1f M("^\\\\[(?<2V>(.*?))\\\\]$"),s=1f M("(?<27>[\\\\w-]+)\\\\s*:\\\\s*(?<1T>[\\\\w-%#]+|\\\\[.*?\\\\]|\\".*?\\"|\'.*?\')\\\\s*;?","g");(j=s.X(k))!=N;){K o=j.1T.Q(/^[\'"]|[\'"]$/g,"");I(o!=N&&m.1A(o)){o=m.X(o);o=o.2V.L>0?o.2V.1e(/\\s*,\\s*/):[]}l[j.27]=o}g={1F:g,1n:C(i,l)};g.1n.1D!=N&&d.U(g)}H d},1M:6(a,b){K c=J.35(a,b),d=N,h=e.13;I(c.L!==0)O(K g=0;g<c.L;g++){b=c[g];K i=b.1F,k=b.1n,j=k.1D,l;I(j!=N){I(k["1z-1k"]=="R"||e.2v["1z-1k"]==R){d=1f e.4l(j);j="4O"}Y I(d=A(j)
 )d=1f d;Y 6H;l=i.3X;I(h.2M){l=l;K m=x(l),s=11;I(m.1i("<![6G[")==0){m=m.4h(9);s=R}K o=m.L;I(m.1i("]]\\>")==o-3){m=m.4h(0,o-3);s=R}l=s?m:l}I((i.1t||"")!="")k.1t=i.1t;k.1D=j;d.2Q(k);b=d.2F(l);I((i.1c||"")!="")b.1c=i.1c;i.2G.74(b,i)}}},2E:6(a){w(1P,"4k",6(){e.1M(a)})}};e.2E=e.2E;e.1M=e.1M;e.2L=6(a,b,c){J.1T=a;J.P=b;J.L=a.L;J.23=c;J.1V=N};e.2L.Z.1q=6(){H J.1T};e.4l=6(a){6 b(j,l){O(K m=0;m<j.L;m++)j[m].P+=l}K c=A(a),d,h=1f e.1U.5Y,g=J,i="2F 1H 2Q".1e(" ");I(c!=N){d=1f c;O(K k=0;k<i.L;k++)(6(){K j=i[k];g[j]=6(){H h[j].1p(h,14)}})();d.28==N?1P.1X(e.13.1x.1X+(e.13.1x.4g+a)):h.2J.U({1I:d.28.17,2D:6(j){O(K l=j.17,m=[],s=d.2J,o=j.P+j.18.L,F=d.28,q,G=0;G<s.L;G++){q=y(l,s[G]);b(q,o);m=m.1O(q)}I(F.18!=N&&j.18!=N){q=y(j.18,F.18);b(q,j.P);m=m.1O(q)}I(F.1b!=N&&j.1b!=N){q=y(j.1b,F.1b);b(q,j.P+j[0].5Q(j.1b));m=m.1O(q)}O(j=0;j<m.L;j++)m[j].1V=c.1V;H m}})}};e.4j=6(){};e.4j.Z={V:6(a,b){K c=J.1n[a];c=c==N?b:c;K d={"R":R,"11":11}[c];H d==N?c:d},3Y:6(a){H 1E.4i(a)},4c:6(a,b){K c=[];I(a!=N)O(K d=0;d<a
 .L;d++)I(1j a[d]=="2m")c=c.1O(y(b,a[d]));H J.4e(c.6b(D))},4e:6(a){O(K b=0;b<a.L;b++)I(a[b]!==N)O(K c=a[b],d=c.P+c.L,h=b+1;h<a.L&&a[b]!==N;h++){K g=a[h];I(g!==N)I(g.P>d)1N;Y I(g.P==c.P&&g.L>c.L)a[b]=N;Y I(g.P>=c.P&&g.P<d)a[h]=N}H a},4d:6(a){K b=[],c=2u(J.V("2i-1s"));v(a,6(d,h){b.U(h+c)});H b},3U:6(a){K b=J.V("1M",[]);I(1j b!="2m"&&b.U==N)b=[b];a:{a=a.1q();K c=3W 0;O(c=c=1Q.6c(c||0,0);c<b.L;c++)I(b[c]==a){b=c;1N a}b=-1}H b!=-1},2r:6(a,b,c){a=["1s","6i"+b,"P"+a,"6r"+(b%2==0?1:2).1q()];J.3U(b)&&a.U("67");b==0&&a.U("1N");H\'<T 1g="\'+a.1K(" ")+\'">\'+c+"</T>"},3Q:6(a,b){K c="",d=a.1e("\\n").L,h=2u(J.V("2i-1s")),g=J.V("2z-1s-2t");I(g==R)g=(h+d-1).1q().L;Y I(3R(g)==R)g=0;O(K i=0;i<d;i++){K k=b?b[i]:h+i,j;I(k==0)j=e.13.1W;Y{j=g;O(K l=k.1q();l.L<j;)l="0"+l;j=l}a=j;c+=J.2r(i,k,a)}H c},49:6(a,b){a=x(a);K c=a.1e("\\n");J.V("2z-1s-2t");K d=2u(J.V("2i-1s"));a="";O(K h=J.V("1D"),g=0;g<c.L;g++){K i=c[g],k=/^(&2s;|\\s)+/.X(i),j=N,l=b?b[g]:d+g;I(k!=N){j=k[0].1q();i=i.1o(j.L);j=j.Q(" ",e.13.1W
 )}i=x(i);I(i.L==0)i=e.13.1W;a+=J.2r(g,l,(j!=N?\'<17 1g="\'+h+\' 5N">\'+j+"</17>":"")+i)}H a},4f:6(a){H a?"<4a>"+a+"</4a>":""},4b:6(a,b){6 c(l){H(l=l?l.1V||g:g)?l+" ":""}O(K d=0,h="",g=J.V("1D",""),i=0;i<b.L;i++){K k=b[i],j;I(!(k===N||k.L===0)){j=c(k);h+=u(a.1o(d,k.P-d),j+"48")+u(k.1T,j+k.23);d=k.P+k.L+(k.75||0)}}h+=u(a.1o(d),c()+"48");H h},1H:6(a){K b="",c=["20"],d;I(J.V("2k")==R)J.1n.16=J.1n.1u=11;1l="20";J.V("2l")==R&&c.U("47");I((1u=J.V("1u"))==11)c.U("6S");c.U(J.V("1g-27"));c.U(J.V("1D"));a=a.Q(/^[ ]*[\\n]+|[\\n]*[ ]*$/g,"").Q(/\\r/g," ");b=J.V("43-22");I(J.V("42-45")==R)a=n(a,b);Y{O(K h="",g=0;g<b;g++)h+=" ";a=a.Q(/\\t/g,h)}a=a;a:{b=a=a;h=/<2R\\s*\\/?>|&1y;2R\\s*\\/?&1G;/2T;I(e.13.46==R)b=b.Q(h,"\\n");I(e.13.44==R)b=b.Q(h,"");b=b.1e("\\n");h=/^\\s*/;g=4Q;O(K i=0;i<b.L&&g>0;i++){K k=b[i];I(x(k).L!=0){k=h.X(k);I(k==N){a=a;1N a}g=1Q.4q(k[0].L,g)}}I(g>0)O(i=0;i<b.L;i++)b[i]=b[i].1o(g);a=b.1K("\\n")}I(1u)d=J.4d(a);b=J.4c(J.2J,a);b=J.4b(a,b);b=J.49(b,d);I(J.V("41-40"))b=E(b);
 1j 2H!="1d"&&2H.3S&&2H.3S.1C(/5s/)&&c.U("5t");H b=\'<T 1c="\'+t(J.1c)+\'" 1g="\'+c.1K(" ")+\'">\'+(J.V("16")?e.16.1H(J):"")+\'<3Z 5z="0" 5H="0" 5J="0">\'+J.4f(J.V("1t"))+"<3T><3P>"+(1u?\'<2d 1g="1u">\'+J.3Q(a)+"</2d>":"")+\'<2d 1g="17"><T 1g="3O">\'+b+"</T></2d></3P></3T></3Z></T>"},2F:6(a){I(a===N)a="";J.17=a;K b=J.3Y("T");b.3X=J.1H(a);J.V("16")&&w(p(b,".16"),"5c",e.16.2b);J.V("3V-17")&&w(p(b,".17"),"56",f);H b},2Q:6(a){J.1c=""+1Q.5d(1Q.5n()*5k).1q();e.1Y.2A[t(J.1c)]=J;J.1n=C(e.2v,a||{});I(J.V("2k")==R)J.1n.16=J.1n.1u=11},5j:6(a){a=a.Q(/^\\s+|\\s+$/g,"").Q(/\\s+/g,"|");H"\\\\b(?:"+a+")\\\\b"},5f:6(a){J.28={18:{1I:a.18,23:"1k"},1b:{1I:a.1b,23:"1k"},17:1f M("(?<18>"+a.18.1m+")(?<17>.*?)(?<1b>"+a.1b.1m+")","5o")}}};H e}();1j 2e!="1d"&&(2e.1v=1v);',62,441,'||||||function|||||||||||||||||||||||||||||||||||||return|if|this|var|length|XRegExp|null|for|index|replace|true||div|push|getParam|call|exec|else|prototype||false|lastIndex|config|arguments|RegExp|toolbar|code|left|captureNa
 mes|slice|right|id|undefined|split|new|class|addToken|indexOf|typeof|script|className|source|params|substr|apply|toString|String|line|title|gutter|SyntaxHighlighter|_xregexp|strings|lt|html|test|OUTSIDE_CLASS|match|brush|document|target|gt|getHtml|regex|global|join|style|highlight|break|concat|window|Math|isRegExp|throw|value|brushes|brushName|space|alert|vars|http|syntaxhighlighter|expandSource|size|css|case|font|Fa|name|htmlScript|dA|can|handler|gm|td|exports|color|in|href|first|discoveredBrushes|light|collapse|object|cache|getButtonHtml|trigger|pattern|getLineHtml|nbsp|numbers|parseInt|defaults|com|items|www|pad|highlighters|execute|focus|func|all|getDiv|parentNode|navigator|INSIDE_CLASS|regexList|hasFlag|Match|useScriptTags|hasNamedCapture|text|help|init|br|input|gi|Error|values|span|list|250|height|width|screen|top|500|tagName|findElements|getElementsByTagName|aboutDialog|_blank|appendChild|charAt|Array|copyAsGlobal|setFlag|highlighter_|string|attachEvent|nodeName|floor
 |backref|output|the|TypeError|sticky|Za|iterate|freezeTokens|scope|type|textarea|alexgorbatchev|version|margin|2010|005896|gs|regexLib|body|center|align|noBrush|require|childNodes|DTD|xhtml1|head|org|w3|url|preventDefault|container|tr|getLineNumbersHtml|isNaN|userAgent|tbody|isLineHighlighted|quick|void|innerHTML|create|table|links|auto|smart|tab|stripBrs|tabs|bloggerMode|collapsed|plain|getCodeLinesHtml|caption|getMatchesHtml|findMatches|figureOutLineNumbers|removeNestedMatches|getTitleHtml|brushNotHtmlScript|substring|createElement|Highlighter|load|HtmlScript|Brush|pre|expand|multiline|min|Can|ignoreCase|find|blur|extended|toLowerCase|aliases|addEventListener|innerText|textContent|wasn|select|createTextNode|removeChild|option|same|frame|xmlns|dtd|twice|1999|equiv|meta|htmlscript|transitional|1E3|expected|PUBLIC|DOCTYPE|on|W3C|XHTML|TR|EN|Transitional||configured|srcElement|Object|after|run|dblclick|matchChain|valueOf|constructor|default|switch|click|round|execAt|forHtmlScr
 ipt|token|gimy|functions|getKeywords|1E6|escape|within|random|sgi|another|finally|supply|MSIE|ie|toUpperCase|catch|returnValue|definition|event|border|imsx|constructing|one|Infinity|from|when|Content|cellpadding|flags|cellspacing|try|xhtml|Type|spaces|2930402|hosted_button_id|lastIndexOf|donate|active|development|keep|to|xclick|_s|Xml|please|like|you|paypal|cgi|cmd|webscr|bin|highlighted|scrollbars|aspScriptTags|phpScriptTags|sort|max|scriptScriptTags|toolbar_item|_|command|command_|number|getElementById|doubleQuotedString|singleLinePerlComments|singleLineCComments|multiLineCComments|singleQuotedString|multiLineDoubleQuotedString|xmlComments|alt|multiLineSingleQuotedString|If|https|1em|000|fff|background|5em|xx|bottom|75em|Gorbatchev|large|serif|CDATA|continue|utf|charset|content|About|family|sans|Helvetica|Arial|Geneva|3em|nogutter|Copyright|syntax|close|write|2004|Alex|open|JavaScript|highlighter|July|02|replaceChild|offset|83'.split('|'),0,{}))

Propchange: websites/staging/odftoolkit/trunk/content/odftoolkit/simple/demo/scripts/shCore.js
------------------------------------------------------------------------------
    svn:executable = *



Mime
View raw message