1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2025-10-31 07:32:59 +00:00

Refactored widgets not to use a base class

This commit is contained in:
Jeremy Ruston
2013-01-01 17:51:02 +00:00
parent f8340bc4dc
commit d96e0073ac
10 changed files with 100 additions and 79 deletions

View File

@@ -46,16 +46,14 @@ of the tiddler `Foo`.
/*global $tw: false */
"use strict";
exports.name = "transclude";
exports.init = function(renderer) {
var TranscludeWidget = function(renderer) {
// Save state
this.renderer = renderer;
// Generate child nodes
this.generateChildNodes();
};
exports.generateChildNodes = function() {
TranscludeWidget.prototype.generateChildNodes = function() {
var tr, templateParseTree, templateTiddler;
// Get the render target details
this.targetTitle = this.renderer.getAttribute("target",this.renderer.getContextTiddlerTitle());
@@ -109,7 +107,7 @@ exports.generateChildNodes = function() {
this.children = this.renderer.renderTree.createRenderers(newRenderContext,[node]);
};
exports.refreshInDom = function(changedAttributes,changedTiddlers) {
TranscludeWidget.prototype.refreshInDom = function(changedAttributes,changedTiddlers) {
// Set the class for missing tiddlers
if(this.targetTitle && changedTiddlers[this.targetTitle]) {
$tw.utils.toggleClass(this.children[0].domNode,"tw-tiddler-missing",!this.renderer.renderTree.wiki.tiddlerExists(this.targetTitle));
@@ -136,4 +134,6 @@ exports.refreshInDom = function(changedAttributes,changedTiddlers) {
}
};
exports.transclude = TranscludeWidget;
})();