1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-06 18:16:18 +00:00
TiddlyWiki5/core/modules/widgets/fill.js

57 lines
1.3 KiB
JavaScript
Raw Normal View History

/*\
2022-05-29 09:55:15 +00:00
title: $:/core/modules/widgets/fill.js
type: application/javascript
module-type: widget
Sub-widget used by the transclude widget for specifying values for slots within transcluded content. It doesn't do anything by itself because the transclude widget only ever deals with the parse tree nodes, and doesn't instantiate the widget itself
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
var Widget = require("$:/core/modules/widgets/widget.js").widget;
2022-05-13 08:18:25 +00:00
var FillWidget = function(parseTreeNode,options) {
// Initialise
this.initialise(parseTreeNode,options);
};
/*
Inherit from the base widget class
*/
2022-05-13 08:18:25 +00:00
FillWidget.prototype = Object.create(Widget.prototype);
/*
Render this widget into the DOM
*/
2022-05-13 08:18:25 +00:00
FillWidget.prototype.render = function(parent,nextSibling) {
// Call the constructor
Widget.call(this);
this.parentDomNode = parent;
this.computeAttributes();
this.execute();
this.renderChildren(parent,nextSibling);
};
/*
Compute the internal state of the widget
*/
2022-05-13 08:18:25 +00:00
FillWidget.prototype.execute = function() {
// Construct the child widgets
this.makeChildWidgets();
};
/*
Refresh the widget by ensuring our attributes are up to date
*/
2022-05-13 08:18:25 +00:00
FillWidget.prototype.refresh = function(changedTiddlers) {
return this.refreshChildren(changedTiddlers);
};
2022-05-13 08:18:25 +00:00
exports.fill = FillWidget;
})();