mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-01-11 18:00:26 +00:00
Add th-saving-tiddler hook for autotagging etc.
@danielo515 this enhancement is intended to make it easier to implement things like the auto tag plugin. Does it meet your needs?
This commit is contained in:
parent
ecdae4ceff
commit
424b2fea32
@ -118,7 +118,7 @@ function openStartupTiddlers(options) {
|
|||||||
}
|
}
|
||||||
// Process the story filter to get the story list
|
// Process the story filter to get the story list
|
||||||
var storyList = $tw.wiki.filterTiddlers(storyFilter);
|
var storyList = $tw.wiki.filterTiddlers(storyFilter);
|
||||||
//invoke any hooks that might change the default story list
|
// Invoke any hooks that want to change the default story list
|
||||||
storyList = $tw.hooks.invokeHook("th-opening-default-tiddlers-list",storyList);
|
storyList = $tw.hooks.invokeHook("th-opening-default-tiddlers-list",storyList);
|
||||||
// If the target tiddler isn't included then splice it in at the top
|
// If the target tiddler isn't included then splice it in at the top
|
||||||
if(target && storyList.indexOf(target) === -1) {
|
if(target && storyList.indexOf(target) === -1) {
|
||||||
|
@ -341,12 +341,14 @@ NavigatorWidget.prototype.handleSaveTiddlerEvent = function(event) {
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
if(isConfirmed) {
|
if(isConfirmed) {
|
||||||
// Save the draft tiddler as the real tiddler
|
// Create the new tiddler and pass it through the th-saving-tiddler hook
|
||||||
this.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{
|
var newTiddler = new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{
|
||||||
title: draftTitle,
|
title: draftTitle,
|
||||||
"draft.title": undefined,
|
"draft.title": undefined,
|
||||||
"draft.of": undefined
|
"draft.of": undefined
|
||||||
},this.wiki.getModificationFields()));
|
},this.wiki.getModificationFields());
|
||||||
|
newTiddler = $tw.hooks.invokeHook("th-saving-tiddler",newTiddler);
|
||||||
|
this.wiki.addTiddler(newTiddler);
|
||||||
// Remove the draft tiddler
|
// Remove the draft tiddler
|
||||||
this.wiki.deleteTiddler(title);
|
this.wiki.deleteTiddler(title);
|
||||||
// Remove the original tiddler if we're renaming it
|
// Remove the original tiddler if we're renaming it
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
created: 20141122200310516
|
created: 20141122200310516
|
||||||
modified: 20141122200310516
|
modified: 20141122200310516
|
||||||
title: Hook: tc-opening-default-tiddlers-list
|
title: Hook: th-opening-default-tiddlers-list
|
||||||
type: text/vnd.tiddlywiki
|
type: text/vnd.tiddlywiki
|
||||||
|
|
||||||
This hook allows plugins to add to or remove from the list of tiddlers that are opened when the wiki is first loaded or the home button is clicked.
|
This hook allows plugins to add to or remove from the list of tiddlers that are opened when the wiki is first loaded or the home button is clicked.
|
22
editions/dev/tiddlers/new/th-saving-tiddler.tid
Normal file
22
editions/dev/tiddlers/new/th-saving-tiddler.tid
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
created: 20150908150314994
|
||||||
|
modified: 20150908150314994
|
||||||
|
title: Hook: th-saving-tiddler
|
||||||
|
type: text/vnd.tiddlywiki
|
||||||
|
|
||||||
|
This hook allows plugins to modify tiddlers before they are saved via the ''confirm'' toolbar button; the hook is not invoked for tiddlers that are saved through other means, such as state tiddlers created by the ActionSetFieldWidget.
|
||||||
|
|
||||||
|
Hook function parameters:
|
||||||
|
|
||||||
|
* ''tiddler'': tiddler object about to be saved
|
||||||
|
|
||||||
|
Return value:
|
||||||
|
|
||||||
|
* tiddler object to be saved
|
||||||
|
|
||||||
|
The original tiddler object can be returned unmodified by the hook. If the hook needs to modify the tiddler then it should return a new tiddler object, for example:
|
||||||
|
|
||||||
|
```
|
||||||
|
return new $tw.Tiddler(tiddler,{"my-field": value});
|
||||||
|
```
|
||||||
|
|
||||||
|
Hooks must not change the ''title'' field but can freely modify any other field of the tiddler.
|
Loading…
Reference in New Issue
Block a user