Thanks for your explanations. Now I see that something as

function displayTiddler(title,pos){
    var story=$tw.wiki.getTiddler("$:/StoryList");
    var text=story.fields["text"].split("\n");
    if(text.indexOf(title)===-1) {
        text.splice(pos,0,title);
        $tw.wiki.addTiddler({title:"$:/StoryList",text:text.join("\n")})
    }
}

seems to work quite well. I doubt it's the best solution for my initial 
question but
I'm not a javascript guru and a real understanding of TW5 internals is not 
so easy for me.

vineri, 2 august 2013, 13:24:22 UTC+3, Jeremy Ruston a scris:
>
> Hi Andy
>
> (This kind of thing is probably best discussed over in the dev group 
> https://groups.google.com/forum/#!forum/TiddlyWikiDev)
>
> The mechanism by which clicking on a link causes a new tiddler to open is 
> very different in TW5, and hopefully much more flexible. It allows for 
> multiple story rivers and a high degree of control over what happens when a 
> link is clicked.
>
> I'll explain it briefly with reference to the code.
>
> We start with the link widget, which contains the click event handler for 
> hyperlinks:
>
>
> https://github.com/Jermolene/TiddlyWiki5/blob/master/core/modules/widgets/link.js#L93
>
> The click handler sends a custom DOM event called "tw-navigate" containing 
> information about the target of the link and the screen location of the 
> link text.
>
> The custom event is sent to the <a> element of the link, and it then 
> travels back up the DOM tree looking for a handler. Ordinarily, the handler 
> is provided by the <$navigator> widget:
>
>
> https://github.com/Jermolene/TiddlyWiki5/blob/master/core/modules/widgets/navigator.js#L79
>
> It's job is the capture the "tw-navigate" events and modify a story list 
> in response. The story list is a system tiddler containing the titles of 
> each of the tiddlers displayed in the main story river (by default it's 
> called `$:/StoryList`). So, the navigator widget adds the title of the 
> tiddler that is to be displayed to the story list at the appropriate point.
>
> That navigator widget is the outermost widget in the page template:
>
>
> https://github.com/Jermolene/TiddlyWiki5/blob/master/core/ui/PageTemplate.tid#L4
>
> That modification to the story list then triggers an asynchronous refresh 
> of the display, in which the <$list> widget that displays the main story 
> column notices that the story list has changed and then intelligently adds 
> and removes DOM elements so that the display matches the story list.
>
> In fact, there are two <$list> widgets displaying the main story list: one 
> is the main story river, and the other is the "open" tab in the sidebar:
>
>
> https://github.com/Jermolene/TiddlyWiki5/blob/master/core/ui/PageTemplate.tid#L31
>
> https://github.com/Jermolene/TiddlyWiki5/blob/master/core/ui/SideBar.tid#L31
>
> So, the upshot of all of this is that there are two basic ways to display 
> a new tiddler:
>
> * Modify the story list directly to add the tiddler title
> * Send a tw-navigate event into the DOM
>
> I hope that brief summary makes sense, let me know if I can clarify 
> anything,
>
> Best wishes
>
> Jeremy
>
>
>
>
> On Thu, Aug 1, 2013 at 3:27 PM, AndyB <[email protected] <javascript:>>wrote:
>
>> A newbee question: is there in Tiddlywiki5 an equivalent for 
>> displayTiddler function as found in Tiddlywiki classic? 
>> For example, executing window.story.displayTiddler(null,'myTitle') in 
>> web console,  the tiddler "myTitle" is displayed in Tiddlywiki classic, but 
>> I  don't know nothing similar in Tiddlywiki5.
>>  
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "TiddlyWiki" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected]<javascript:>
>> .
>> Visit this group at http://groups.google.com/group/tiddlywiki.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>  
>>  
>>
>
>
>
> -- 
> Jeremy Ruston
> mailto:[email protected] <javascript:>
>  

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/tiddlywiki.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to