kopia lustrzana https://github.com/miklobit/TiddlyWiki5
Fixed support for custom attributes, classes and tooltips on transclusions
rodzic
015145952d
commit
fa17eb1b96
|
@ -77,25 +77,36 @@ exports.generateChildNodes = function() {
|
||||||
templateParseTree = parser ? parser.tree : [];
|
templateParseTree = parser ? parser.tree : [];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Create the wrapper node
|
||||||
|
var node = {
|
||||||
|
type: "element",
|
||||||
|
tag: this.renderer.parseTreeNode.isBlock ? "div" : "span",
|
||||||
|
children: templateParseTree
|
||||||
|
};
|
||||||
// Set up the attributes for the wrapper element
|
// Set up the attributes for the wrapper element
|
||||||
var classes = [];
|
var classes = [];
|
||||||
|
if(this.renderer.hasAttribute("class")) {
|
||||||
|
$tw.utils.pushTop(classes,this.renderer.getAttribute("class").split(" "));
|
||||||
|
}
|
||||||
if(!this.renderer.renderTree.wiki.tiddlerExists(this.targetTitle)) {
|
if(!this.renderer.renderTree.wiki.tiddlerExists(this.targetTitle)) {
|
||||||
$tw.utils.pushTop(classes,"tw-tiddler-missing");
|
$tw.utils.pushTop(classes,"tw-tiddler-missing");
|
||||||
}
|
}
|
||||||
|
if(classes.length > 0) {
|
||||||
|
$tw.utils.addClassToParseTreeNode(node,classes.join(" "));
|
||||||
|
}
|
||||||
|
if(this.renderer.hasAttribute("style")) {
|
||||||
|
$tw.utils.addAttributeToParseTreeNode(node,"style",this.renderer.getAttribute("style"));
|
||||||
|
}
|
||||||
|
if(this.renderer.hasAttribute("tooltip")) {
|
||||||
|
$tw.utils.addAttributeToParseTreeNode(node,"title",this.renderer.getAttribute("tooltip"));
|
||||||
|
}
|
||||||
// Create the renderers for the wrapper and the children
|
// Create the renderers for the wrapper and the children
|
||||||
var newRenderContext = {
|
var newRenderContext = {
|
||||||
tiddlerTitle: this.targetTitle,
|
tiddlerTitle: this.targetTitle,
|
||||||
templateTitle: this.templateTitle,
|
templateTitle: this.templateTitle,
|
||||||
parentContext: this.renderer.renderContext
|
parentContext: this.renderer.renderContext
|
||||||
};
|
};
|
||||||
this.children = this.renderer.renderTree.createRenderers(newRenderContext,[{
|
this.children = this.renderer.renderTree.createRenderers(newRenderContext,[node]);
|
||||||
type: "element",
|
|
||||||
tag: this.renderer.parseTreeNode.isBlock ? "div" : "span",
|
|
||||||
attributes: {
|
|
||||||
"class": {type: "string", value: classes.join(" ")}
|
|
||||||
},
|
|
||||||
children: templateParseTree
|
|
||||||
}]);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.refreshInDom = function(changedAttributes,changedTiddlers) {
|
exports.refreshInDom = function(changedAttributes,changedTiddlers) {
|
||||||
|
|
|
@ -22,7 +22,7 @@ Inline macro call: <<me red green>>
|
||||||
| this | is | a | table |
|
| this | is | a | table |
|
||||||
| yes | indeed |>| it is |
|
| yes | indeed |>| it is |
|
||||||
|
|
||||||
{{Acknowledgements}width:40;height:50;}.one
|
{{Acknowledgements|with a tooltip}width:40;height:50;background-color:red;}.one
|
||||||
|
|
||||||
And this is an inline transclusion {{Acknowledgements}width:40;height:50;}.one
|
And this is an inline transclusion {{Acknowledgements}width:40;height:50;}.one
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue