mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-08-07 14:23:53 +00:00
Get rid of the Renderer() wrapper and use the MacroNode directly
This commit is contained in:
parent
53f652bf2a
commit
5ca478d106
@ -100,14 +100,14 @@ var App = function() {
|
|||||||
// Set up navigation if we're in the browser
|
// Set up navigation if we're in the browser
|
||||||
if(this.isBrowser) {
|
if(this.isBrowser) {
|
||||||
// Open the PageTemplate
|
// Open the PageTemplate
|
||||||
var renderer = new Renderer("PageTemplate",null,this.store);
|
var renderer = this.store.renderMacro("tiddler",{target: "PageTemplate"});
|
||||||
renderer.renderInDom(document.body);
|
renderer.renderInDom(document.body);
|
||||||
// Register an event handler to handle refreshing the DOM
|
// Register an event handler to handle refreshing the DOM
|
||||||
this.store.addEventListener("",function(changes) {
|
this.store.addEventListener("",function(changes) {
|
||||||
renderer.refreshInDom(changes);
|
renderer.refreshInDom(changes);
|
||||||
});
|
});
|
||||||
// Set the page title and refresh it when needed
|
// Set the page title and refresh it when needed
|
||||||
var titleRenderer = new Renderer("WindowTitle",null,this.store);
|
var titleRenderer = this.store.renderMacro("tiddler",{target: "WindowTitle"});
|
||||||
document.title = titleRenderer.render("text/plain");
|
document.title = titleRenderer.render("text/plain");
|
||||||
this.store.addEventListener("",function(changes) {
|
this.store.addEventListener("",function(changes) {
|
||||||
titleRenderer.refresh(changes);
|
titleRenderer.refresh(changes);
|
||||||
|
@ -427,44 +427,16 @@ var SliderNode = function(type,label,tooltip,isOpen,children) {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
var Renderer = {
|
||||||
Construct a renderer object to render a tiddler, optionally specifying a template it should be rendered through
|
MacroNode: MacroNode,
|
||||||
*/
|
ElementNode: ElementNode,
|
||||||
var Renderer = function(tiddlerTitle,templateTitle,store) {
|
TextNode: TextNode,
|
||||||
this.store = store;
|
EntityNode: EntityNode,
|
||||||
// Start the renderer with the tiddler macro
|
LabelNode: LabelNode,
|
||||||
this.macro = new MacroNode(
|
SplitLabelNode: SplitLabelNode,
|
||||||
"tiddler",
|
SliderNode: SliderNode
|
||||||
{target: tiddlerTitle, template: templateTitle},
|
|
||||||
null,
|
|
||||||
store);
|
|
||||||
this.macro.execute();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Renderer.prototype.render = function(type) {
|
|
||||||
return this.macro.render(type);
|
|
||||||
};
|
|
||||||
|
|
||||||
Renderer.prototype.renderInDom = function(domNode,type) {
|
|
||||||
this.macro.renderInDom(domNode,type);
|
|
||||||
};
|
|
||||||
|
|
||||||
Renderer.prototype.refresh = function(changes) {
|
|
||||||
this.macro.refresh(changes);
|
|
||||||
};
|
|
||||||
|
|
||||||
Renderer.prototype.refreshInDom = function(changes) {
|
|
||||||
this.macro.refreshInDom(changes);
|
|
||||||
};
|
|
||||||
|
|
||||||
Renderer.MacroNode = MacroNode;
|
|
||||||
Renderer.ElementNode = ElementNode;
|
|
||||||
Renderer.TextNode = TextNode;
|
|
||||||
Renderer.EntityNode = EntityNode;
|
|
||||||
Renderer.LabelNode = LabelNode;
|
|
||||||
Renderer.SplitLabelNode = SplitLabelNode;
|
|
||||||
Renderer.SliderNode = SliderNode;
|
|
||||||
|
|
||||||
exports.Renderer = Renderer;
|
exports.Renderer = Renderer;
|
||||||
|
|
||||||
})();
|
})();
|
||||||
|
@ -287,6 +287,12 @@ WikiStore.prototype.installMacro = function(macro) {
|
|||||||
this.macros[macro.name] = macro;
|
this.macros[macro.name] = macro;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
WikiStore.prototype.renderMacro = function(macroName,params,children,tiddler) {
|
||||||
|
var macro = Renderer.MacroNode(macroName,params,children,this);
|
||||||
|
macro.execute([],tiddler);
|
||||||
|
return macro;
|
||||||
|
};
|
||||||
|
|
||||||
exports.WikiStore = WikiStore;
|
exports.WikiStore = WikiStore;
|
||||||
|
|
||||||
})();
|
})();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user