Does the "list-links-draggable" macro also work with nested lists?

so with

<<list-links-draggable tiddler:"TIDDLER-WITH-LIST">>

we can order a list of a Tiddler by drag and drop - very nice.

Is there also a way to do this with nested lists?

So if the “TIDDLER-WITH-LIST” does contain Tiddlers which have also a list - is there a way to show it all in one Tiddler with the option to order things by drag and drop ?

Thanks for Help!

You might look at the various Table-of-Contents Macros for demonstrating nested lists. But I don’t know much about how they might be made draggable. There would be a lot of complexity if this involved moving from one level to another.

1 Like

Streams — on TiddlyWiki 5.2.2 can handle drag and drop with nested lists. But it’s intended to be used in different usecases.

2 Likes

Keep in mind, list-links-draggable is a utility macro primarily provided for simple lists and defined in TiddlyWiki Script, see $:/core/macros/list, although they are somewhat complex you can gains some insight how this is done.

You can use the list widget to do the nesting and within each “level” use the list-links-draggable on the subset of tiddlers in each group.

1 Like

Thanks
still try to learn things… and don´t understand all… and can´t get it to work

so the list widget works like:


<$list filter="[list[TIDDLER-WITH-LIST]sort[list]]" join="<br>"/>

how do i get this nested draggable list ?

I think first you have to talk about concepts. For drag & drop there are 2 ways to create lists at the moment.

  1. using a field eg: list to define the tiddlers that should be shown
  2. using a tag to define the listed tiddlers

The $:/core/macros/list tiddler contains 2 different macros

  1. list-links-draggable … which has a field-parameter
  2. list-tagged-draggable … which uses tags to create the list

Those 2 macros work differently.

list-links-draggable uses the list-field by default. If the list-field is empty it does not show anything.

list-tagged-draggable uses the list-field indirectly. Since the [tag[tag-name]] filter function internally uses the sort order defined by the tag-tiddlers list-field, if there is a list field.

If there is no list-field it still shows a list. If the tag-tiddler does not have a list-field, it will be created, as soon as a user starts to drag & drop elements.

So my questions are:

  • What do you try to achieve?
  • How do you create your nested lists?
    • using tags?
    • using a list-like field?
  • How do you create your nested lists at the moment. Without any drag & drop?

Once you can answer those questions we may be able to point you in the right direction.
But DnD with nested lists is multiple times more complex than using “simple” lists. Especially if you want to drag elements between different levels.

thanks

Ok i do some try outs with the muuri kanban addon

https://burningtreec.github.io/tiddlywiki-muuri/#Kanban

it works with the list field

Now it would be nice to see the structure of the kanban also as a draggable lists because some work may be done best that way even so the presentation of this lists look great in the Kanban view

This is draggable lists, but do you mean outside the Kanban view?

  • I have done this previously and can do so again, perhaps with at least an hours effort.

N lists in there own columns

  • N list items for each column
  • Drag and drop between the columns and within the columns with option to move or copy listed items between lists.
  • Easier if they all use the list field of the tidler representing each column/list.

so right now i do it all with

<<list-links-draggable tiddler:"TIDDLER-WITH-LIST">>
  • N Columms in one list

  • and N items for each Column in separate lists for each Column…

Drag and drop works very nicely between this lists

  • Columns can be moved
  • Items can be moved in a Column and from one Column to an other
  • and even items can be tuned into a Column

all by drag and drop - this is great

it would be perfect if this could be done in ONE nested list

and can do so again, perhaps with at least an hours effort

I’m afraid but i have no budget for all this work, sorry …

if it is such a difficult task than it seams not the way to go here for me - thanks for your offer

I was not asking for a budget, but indicating the effort, it seems you are getting there, but if you want help, you get an idea of what you are asking for me to do :nerd_face:

Can you share your code?

What do you mean by;

Because you need at least two lists to call it nested.

  • That is only time, not difficult, but it takes time to do it in a way to share.
  • We are happy to help you more.

thanks… so it was a misunderstanding… but still i don´t want to ask for one hour of your time if it is not also in your sense and interested

my code is very simple

from a given KanBan i list all Columns by

<<list-links-draggable tiddler:"TIDDLER-WITH-LIST-OF COLUMNS">>

and each Column with its items with

<<list-links-draggable tiddler:"TIDDLER-WITH-LIST-OF-ITEMS-OF-EACH-COLUMN">>

in one tiddler.

if the Titles of Tiddlers are displayed as Links - new created Tiddlers can be also added into this lists by drag and drop very easy. So new Columns and new items can be managed as well - this is all really great so fare.

The only thing which has to be done “my hand” is to add a new line of code for every added column –
EDIT:
and the order of Columns in this Tildder is not adapted

so this is the only thing which is not perfect at the moment :slight_smile:

To assist you more easily, we need you to answer a number of questions I and @pmario have asked above? Perhaps even quote the question and provide your answer after it.