My goodness! I just found this, and I'm very happy I did! Thank you Carsten!!!!
Dropdown; Lewcid has http://tw.lewcid.org/#TaggerPluginDocumentation ...for dropdown lists with checkboxes for each item, for setting tags. Maybe this can be used? /Mat On 13 Jan, 07:53, "Stephanie Smith" <[email protected]> wrote: > I'm using it. It's fabulous. > > I like the idea of including a drop down so that dependencies can be set > without editing the tiddler manually. You'd want a multi-select list box, > if such a thing exists in MonkeyGTD, because some actions depend on more > than one prior action. > > On Mon, Jan 12, 2009 at 8:12 PM, Simon Baird <[email protected]> wrote: > > Carsten, > > > I'm excited about this. Nice work. As for Jim's comments, I think this > > seems lightweight enough so you can just ignore it if you don't want to use > > it. > > > When I get a chance I will have a play with this and hopefully include it > > in MGTD. I have some ideas about the UI also, something similar to the > > contact drop down but for other actions. > > > Thanks for the contribution. Now that some time has passed, is anyone out > > there using this in production? > > > Best wishes, > > > Simon > > > On Sat, Dec 20, 2008 at 11:33 PM, Carsten Thiele < > > [email protected]> wrote: > > >> Hello, > > >> i converted my "Hack" to a complete plugin. I Uploaded a Demo into > >> this group as file: monkeygtd-SequencedActionsPlugin-demo.zip ( > > >>http://gtd-tiddlywiki.googlegroups.com/web/monkeygtd-SequencedActions... > >> ) The html-Upload did not work, so i added the zip-File, that can be > >> downloaded from the files area. > > >> When you unzip it, and open the file with this added to the filename: > > >> #[[SequencedActions%20Demo]]%20Action1%20Action2%20Action3%20Action4%20 > >> [[Do%20Something]]%20Action5 > > >> or just open the "SequencedActions Demo" Tidder for instructions. > > >> Maybe this helps, > >> Carsten > > >> On 17 Dez., 22:22, Carsten Thiele <[email protected]> > >> wrote: > >> > Hello, > > >> > i modified my monkeygtd to support "sequenced"-Actions. I use the > >> > normal Tag-Feature to Control the sequence of the actions. When i > >> > create an action that depends on another action i just "Tag" it with > >> > the name of the first one, and set it to "Future". When the first > >> > Action is marked as "Done" or, if it is a Ticker, is marked as > >> > "Actioned" (only works for one-time-Ticklers). the second action is > >> > modified from "Future" to "Next". There is no GUI-Support for this, i > >> > have to edit the Actions and type in manualy the name of the Actions > >> > in the Tags-Field. > > >> > Maybe with an Example its more clear to understand: > > >> > First > >> > Action: > >> > "Action 1" > > >> > Can be done when Action 1 is finished: "Action > >> > 2" "Action3" > > >> > Can be done when A2 and A3 are finished: "Action > >> > 4" > > >> > I create the actions like this > > >> > Action 1, a normal "Next" Action > > >> > Action 2 and Action 3 "Future" Actions Tagged with "[Action 1]" > > >> > Action 4 "Future" action Tagged with "[Action 2] [Action 3]" > > >> > - Now, when i finish "Action 1", the code searches for Actions with > >> > the Tag "Action 1", and finds "Action 2" and "Action 3". > >> > - For each Action the code searches if all required Actions (only > >> > "Action 1" in this case) are done. If this is true, the Action (here > >> > Action 2 and 3) are moved from "Future" to "Next" > >> > - If i "undo" Action 1, Action 2 and Action 3 are moved from "Next" to > >> > "Future" > > >> > - When "Action 2" is finished, again all Actions with the Tag "Action > >> > 2" are searched, in this case just "Action 4". > >> > - The Code starts searching all Actions and Ticklers that are > >> > referenced in the Tag-field of Action 4. It finds "Action 2" as done, > >> > but "Action 3" as not done, so the "Action 4"-Action is NOT moved from > >> > "Future" to "Next" > >> > - Now "Action 3" is done, too. > >> > - The Code again searches for all Actions and Tickers that are > >> > referenced in the Tag-field of Action 4. Now it finds both Actions > >> > (Action 2 and Action 3) as "Done" so "Action 4" is moved from > >> > "Future" to Next". > > >> > The visualisation in the GUI for this solution is not very good. In > >> > the Project-Dashboard the Actions are not ordered in the right way, > >> > and you can not see that there are dependencies between the actions. > >> > But for me this is ok, its just for "auto-nexting" one of the future > >> > actions, so that i dont have to do a check of the "Projects with no > >> > next action"-View. Or Project Dashboard every time i finish an Action > >> > that is part of a Project. > > >> > Maybe someone else can add some UI-Support to this solution. > > >> > Until now i did not test it with MonkeyGTDs with many Actions, so > >> > maybe there is still a performance problem with this, but for my (at > >> > the moment) small test environment it works good. Next step will be > >> > more tests and the integration in my "production"-monkeygtd. > > >> > Please do not integrate this without good testing in your production- > >> > Monkey-GTDs. Maybe there is still something wrong that can cause your > >> > data to be damaged! > > >> > So here is what i have done. > > >> > I modified the function "TiddlyWiki.prototype.setTiddlerTag". now it > >> > contains this code: > > >> > TiddlyWiki.prototype.setTiddlerTag = function(title,status,tag) > >> > { > >> > var tiddler = this.fetchTiddler(title); > >> > if(tiddler) { > >> > var t = tiddler.tags.indexOf(tag); > >> > if(t != -1) > >> > tiddler.tags.splice(t,1); > >> > if(status) > >> > tiddler.tags.push(tag); > >> > tiddler.changed(); > >> > this.incChangeCount(title); > >> > this.notify(title,true); > >> > this.setDirty(true); > > >> > // here starts my modification > >> > if (tag == "Done" || tag == "Actioned") { > >> > var dependend = this.getTaggedTiddlers(title); > >> > var tiddlersWithTag = ""; > >> > for(var m = 0; m < dependend.length; m++) { > >> > var currentTiddler = dependend[m]; > >> > if (status) { > >> > if > >> (this.allPreviousActionsAreDone(currentTiddler)) { > > >> this.setTiddlerTag(currentTiddler.title, !status, "Future"); > > >> this.setTiddlerTag(currentTiddler.title, status, "Next"); > >> > } > >> > } else { > > >> this.setTiddlerTag(currentTiddler.title, !status, "Future"); > > >> this.setTiddlerTag(currentTiddler.title, status, "Next"); > >> > } > >> > } > >> > story.refreshAllTiddlers(); > >> > } > >> > } > > >> > }; > > >> > and i added this new function: > > >> > TiddlyWiki.prototype.allPreviousActionsAreDone = function > >> > (tiddlerToCheck) { > >> > var tagsToIgnore = ["Future", "Done", "Tickler", "Action", > >> "Realm", > >> > "Project", "[(Waiting For)]"]; > >> > var tags = tiddlerToCheck.tags; > >> > var allPreviousDone = true; > >> > for (var m = 0; m < tags.length; m++) { > >> > var currentTag = tags[m]; > >> > if (!tagsToIgnore.contains(currentTag)) { > >> > var tiddlerToCheck = > >> this.fetchTiddler(currentTag); > >> > if((tiddlerToCheck.tags.contains("Action") && ! > >> > tiddlerToCheck.tags.contains("Done")) || (tiddlerToCheck.tags.contains > >> > ("Tickler") && !tiddlerToCheck.tags.contains("Actioned"))) { > >> > allPreviousDone = false; > >> > } > >> > } > >> > } > >> > return allPreviousDone; > > >> > } > > >> > Maybe this is usefull for someone, comments are welcome. > > >> > Carsten > > > -- > > [email protected] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "GTD TiddlyWiki" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/GTD-TiddlyWiki?hl=en -~----------~----~----~----~------~----~------~--~---

