tzk/tzk/editions/tzk/plugins/TiddlyStretch/$__plugins_sobjornstad_Tidd...

107 lines
4.9 KiB
Plaintext

created: 20210304002537855
modified: 20210304014023505
tags: $:/tags/Macro
title: $:/plugins/sobjornstad/TiddlyStretch/macros/stretch
type: text/vnd.tiddlywiki
\define stretchtext-tools(tiddler)
<$button class="tc-btn-invisible tc-tiddlylink" to=<<__tiddler__>>>
<i class="fa fa-expand"/>
</$button>
<$button class="tc-btn-invisible tc-tiddlylink" message="tm-edit-tiddler" param=<<__tiddler__>>>
<i class="fa fa-pen"/>
</$button>
\end
\define stretchtext-missing-tiddler(tiddler, descr: "tiddler")
<$list filter="[<__tiddler__>!is[tiddler]!is[shadow]]" variable=_>
//Missing $descr$ <$link to=<<__tiddler__>>/>//
</$list>
\end
\define stretchtext-missing(tiddler, field)
<$macrocall $name="stretchtext-missing-tiddler" tiddler=<<__tiddler__>>/>
<$list filter="[<__tiddler__>is[tiddler]!is[shadow]!has<__field__>]" variable=_>
//Missing field '$field$' on existing tiddler <$link to=<<__tiddler__>>/>//
</$list>
\end
\define stretch(tiddler, smallField: "description", largeField: "text")
<$set name="stateTiddler" value=<<qualify """$:/state/stretchtext/$tiddler$""">>>
<$reveal stateTitle=<<stateTiddler>> stateIndex=<<__tiddler__>> type="match" text="hide" default="hide">
<div class="st-closed">
<$button setTitle=<<stateTiddler>> setIndex=<<__tiddler__>> setTo="show" class="tc-btn-invisible tc-tiddlylink">
<i class="fa fa-search-plus"/>
</$button>
<$macrocall $name="stretchtext-tools" tiddler=<<__tiddler__>>/>
<$macrocall $name="stretchtext-missing" tiddler=<<__tiddler__>> field=<<__smallField__>>/>
<$tiddler tiddler=<<__tiddler__>>>
<$transclude tiddler=<<__tiddler__>> field=<<__smallField__>> />
</$tiddler>
</div>
</$reveal>
<$reveal stateTitle=<<stateTiddler>> stateIndex=<<__tiddler__>> type="match" text="show" default="hide">
<div class="st-open">
<$button setTitle=<<stateTiddler>> setIndex=<<__tiddler__>> setTo="hide" class="tc-btn-invisible tc-tiddlylink">
<i class="fa fa-search-minus st-expanded-colorize"/>
</$button>
<$macrocall $name="stretchtext-tools" tiddler=<<__tiddler__>>/>
[<$link to=<<__tiddler__>>/>]
<$macrocall $name="stretchtext-missing" tiddler=<<__tiddler__>> field=<<__largeField__>>/>
<$tiddler tiddler=<<__tiddler__>>>
<$transclude mode="block" field=<<__largeField__>> tiddler=<<__tiddler__>>/>
</$tiddler>
</div>
</$reveal>
</$set>
\end
\define stretch-template(tiddler, smallTemplate, largeTemplate, smallMode: "inline", largeMode: "block")
<$set name="stateTiddler" value=<<qualify """$:/state/stretchtext/$tiddler$""">>>
<$reveal stateTitle=<<stateTiddler>> stateIndex=<<__tiddler__>> type="match" text="hide" default="hide">
<div class="st-closed">
<$button setTitle=<<stateTiddler>> setIndex=<<__tiddler__>> setTo="show" class="tc-btn-invisible tc-tiddlylink">
<i class="fa fa-search-plus"/>
</$button>
<$macrocall $name="stretchtext-tools" tiddler=<<__tiddler__>>/>
<$macrocall $name="stretchtext-missing-tiddler" tiddler=<<__smallTemplate__>> descr="template"/>
<$tiddler tiddler=<<__tiddler__>>>
<$transclude mode=<<__smallMode__>> tiddler=<<__smallTemplate__>>/>
</$tiddler>
</div>
</$reveal>
<$reveal stateTitle=<<stateTiddler>> stateIndex=<<__tiddler__>> type="match" text="show" default="hide">
<div class="st-open">
<$button setTitle=<<stateTiddler>> setIndex=<<__tiddler__>> setTo="hide" class="tc-btn-invisible tc-tiddlylink">
<i class="fa fa-search-minus st-expanded-colorize"/>
</$button>
<$macrocall $name="stretchtext-tools" tiddler=<<__tiddler__>>/>
[<$link to=<<__tiddler__>>/>]
<$macrocall $name="stretchtext-missing-tiddler" tiddler=<<__tiddler__>>/>
<$macrocall $name="stretchtext-missing-tiddler" tiddler=<<__largeTemplate__>> descr="template"/>
<$tiddler tiddler=<<__tiddler__>>>
<$transclude mode=<<__largeMode__>> tiddler=<<__largeTemplate__>>/>
</$tiddler>
</div>
</$reveal>
</$set>
\end
\define stretch-links(filter, smallField: "description", largeField: "text", emptyMessage: "")
<ul>
<$list filter=<<__filter__>> emptyMessage=<<__emptyMessage__>>>
<li><$macrocall $name="stretch" tiddler=<<currentTiddler>> smallField=<<__smallField__>> largeField=<<__largeField__>>/></li>
</$list>
</ul>
\end
\define stretch-template-links(filter, smallTemplate, largeTemplate, smallMode: "inline", largeMode: "block", emptyMessage: "")
<ul>
<$list filter=<<__filter__>> emptyMessage=<<__emptyMessage__>>>
<li><$macrocall $name="stretch-template" tiddler=<<currentTiddler>> smallTemplate=<<__smallTemplate__>> largeTemplate=<<__largeTemplate__>> smallMode=<<__smallMode__>> largeMode=<<__largeMode__>>/></li>
</$list>
</ul>
\end