Skip to content

Commit

Permalink
Add a search button to the control panel tiddler fields tab (#8157)
Browse files Browse the repository at this point in the history
* add a search button to the control panel tiddler fields tab

* minor update

* use v5.3.x syntax

* use tf. prefix for the function

* make show-filter-count a global macro

* make table header translatable

* add documentation

* show-filter-count code cleanup

* remove the table-header

* remove erroneous caption field
  • Loading branch information
pmario authored Sep 10, 2024
1 parent d7b00a6 commit 4f4e055
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 24 deletions.
17 changes: 1 addition & 16 deletions core/ui/ControlPanel/Basics.tid
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,7 @@ title: $:/core/ui/ControlPanel/Basics
tags: $:/tags/ControlPanel/Info
caption: {{$:/language/ControlPanel/Basics/Caption}}

\define lingo-base() $:/language/ControlPanel/Basics/

\define show-filter-count(filter)
\whitespace trim
<$button class="tc-btn-invisible">
<$action-setfield $tiddler="$:/temp/advancedsearch" $value="""$filter$"""/>
<$action-setfield $tiddler="$:/temp/advancedsearch/input" $value="""$filter$"""/>
<$action-setfield $tiddler="$:/temp/advancedsearch/refresh" text="yes"/>
<$action-setfield $tiddler="$:/state/tab--1498284803" $value="$:/core/ui/AdvancedSearch/Filter"/>
<$action-navigate $to="$:/AdvancedSearch"/>
<$action-sendmessage $message="tm-focus-selector" $param=".tc-advanced-search input"/>
''<$count filter="""$filter$"""/>''
&#32;
{{$:/core/images/advanced-search-button}}
</$button>
\end
\procedure lingo-base() $:/language/ControlPanel/Basics/
\whitespace trim

|tc-max-width tc-edit-max-width|k
Expand Down
33 changes: 25 additions & 8 deletions core/wiki/allfields.tid
Original file line number Diff line number Diff line change
@@ -1,13 +1,30 @@
title: $:/snippets/allfields

\define renderfield(title)
<tr class="tc-view-field"><td class="tc-view-field-name">''<$text text=<<__title__>>/>'':</td><td class="tc-view-field-value">//{{$:/language/Docs/Fields/$title$}}//</td></tr>
\end
\whitespace trim

\procedure lingo-base() $:/language/Docs/Fields/

\function tf.getLingoText() [<lingo-base>] [<title>] +[join[]get[text]]

\procedure renderfield(title)
<tr class="tc-view-field">
<td class="tc-view-field-name">
''<$text text=<<title>>/>'':
</td>
<td class="tc-view-field-value">
//<<tf.getLingoText>>//
</td>
<td class="tc-view-field-list">
<$macrocall $name="show-filter-count" filter=`[has[$(title)$]sort[]]`>>
</td>
</tr>
\end

<table class="tc-view-field-table">
<tbody>
<$list filter="[fields[]sort[title]]" variable="listItem">
<$macrocall $name="renderfield" title=<<listItem>>/>
</$list>
</tbody>
<tbody>
<!-- <<renderfieldHeader>> -->
<$list filter="[fields[]sort[title]]" variable="listItem">
<$macrocall $name="renderfield" title=<<listItem>>/>
</$list>
</tbody>
</table>
17 changes: 17 additions & 0 deletions core/wiki/macros/show-filter-count.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
title: $:/core/macros/show-filter-count
tags: $:/tags/Macro $:/tags/Global

\whitespace trim

\procedure show-filter-count(filter)
<$button class="tc-btn-invisible">
<$action-setfield $tiddler="$:/temp/advancedsearch" $value=<<filter>>/>
<$action-setfield $tiddler="$:/temp/advancedsearch/input" $value=<<filter>>/>
<$action-setfield $tiddler="$:/temp/advancedsearch/refresh" text="yes"/>
<$action-setfield $tiddler="$:/state/tab--1498284803" $value="$:/core/ui/AdvancedSearch/Filter"/>
<$action-navigate $to="$:/AdvancedSearch"/>
<$action-sendmessage $message="tm-focus-selector" $param=".tc-advanced-search input"/>
<span class="tc-small-gap-right">''<$count filter=<<filter>>/>''</span>
{{$:/core/images/advanced-search-button}}
</$button>
\end
21 changes: 21 additions & 0 deletions editions/tw5.com/tiddlers/macros/show-filter-count.tid
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@

created: 20240804143842924
modified: 20240804150223291
tags: Macros [[Core Macros]]
title: show-filter-count Macro
type: text/vnd.tiddlywiki

<<.from-version "5.3.6">> -- The <<.def show-filter-count>> [[macro|Macros]] creates an element, that shows a counter and a button to open the provided filter string in $:/AdvancedSearch

!! Parameters

; filter
: Needs to be a valid [[filter run|Filters]]

!! Examples

<<wikitext-example-without-html src:"""<<show-filter-count filter:"[tag[HelloThere]]">> -- The number and the icon is click-able""">>

<<wikitext-example-without-html src:"""<<show-filter-count filter:"[has[author]sort[]]">> -- The number and the icon is click-able""">>

Also see: [[$:/core/ui/ControlPanel/TiddlerFields]]

0 comments on commit 4f4e055

Please sign in to comment.