From b1a96d8bf5a2f633b8bbfb72e64c0dec300d3d75 Mon Sep 17 00:00:00 2001 From: Jeremy Ruston Date: Mon, 20 Feb 2012 18:04:50 +0000 Subject: [PATCH] Refactored renderTiddler() to create macro node directly This is so that we can get rid of the Renderer() wrapper class entirely --- js/WikiStore.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/js/WikiStore.js b/js/WikiStore.js index 1a0077697..672d8e0e2 100755 --- a/js/WikiStore.js +++ b/js/WikiStore.js @@ -14,6 +14,7 @@ WikiStore uses the .cache member of tiddlers to store the following information: var Tiddler = require("./Tiddler.js").Tiddler, Renderer = require("./Renderer.js").Renderer, + Dependencies = require("./Dependencies.js").Dependencies, utils = require("./Utils.js"); /* Creates a new WikiStore object @@ -271,9 +272,16 @@ Render a tiddler to a particular MIME type title: title of the tiddler to render template: optional title of the tiddler to use as a template */ -WikiStore.prototype.renderTiddler = function(targetType,title,templateTitle) { - var r = new Renderer(title,templateTitle,this); - return r.render(targetType); +WikiStore.prototype.renderTiddler = function(targetType,tiddlerTitle,templateTitle) { + // Construct the tiddler macro + var macro = Renderer.MacroNode( + "tiddler", + {target: tiddlerTitle, template: templateTitle}, + null, + new Dependencies([],[tiddlerTitle,templateTitle]), + this); + macro.execute(); + return macro.render(targetType); }; WikiStore.prototype.installMacro = function(macro) {