TiddlyWiki.org

Changeset 376

Show
Ignore:
Timestamp:
17/07/06 11:16:13 (2 years ago)
Author:
JeremyRuston
Message:

Improvements to newTiddler and newJournal macros

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • Branches/2.1/core/js/Macros.js

    r364 r376  
    369369} 
    370370 
    371 config.macros.newTiddler.onClick = function() 
     371 
     372 
     373config.macros.newTiddler.createNewTiddlerButton = function(place,title,params,label,prompt,accessKey,newFocus) 
     374
     375        var tags = []; 
     376        for(var t=1; t<params.length; t++) 
     377                if((params[t].name == "anon" && t != 1) || (params[t].name == "tag")) 
     378                        tags.push(params[t].value); 
     379        if(params[0]["label"]) 
     380                label = params[0]["label"][0]; 
     381        if(params[0]["prompt"]) 
     382                prompt = params[0]["prompt"][0]; 
     383        if(params[0]["accessKey"]) 
     384                accessKey = params[0]["accessKey"][0]; 
     385        var btn = createTiddlyButton(place,label,prompt,this.onClickNewTiddler,null,null,accessKey); 
     386        btn.setAttribute("newTitle",title); 
     387        btn.setAttribute("params",tags.join("|")); 
     388        btn.setAttribute("newFocus",newFocus); 
     389        return btn; 
     390
     391 
     392config.macros.newTiddler.onClickNewTiddler = function() 
    372393{ 
    373394        var title = this.getAttribute("newTitle"); 
     
    375396        var focus = this.getAttribute("newFocus"); 
    376397        story.displayTiddler(null,title,DEFAULT_EDIT_TEMPLATE); 
    377         for(var t=1;t<params.length;t++) 
     398        for(var t=0;t<params.length;t++) 
    378399                story.setTiddlerTag(title,params[t],+1); 
    379400        story.focusTiddler(title,focus); 
     
    381402} 
    382403 
    383 config.macros.newTiddler.handler = function(place,macroName,params
     404config.macros.newTiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler
    384405{ 
    385406        if(!readOnly) 
    386407                { 
     408                var params = paramString.parseParams("anon",null,true,false,false); 
    387409                var title = this.title; 
    388                 if(params[0]) 
    389                         title = params[0]; 
    390                 var btn = createTiddlyButton(place,this.label,this.prompt,this.onClick,null,null,this.accessKey); 
    391                 btn.setAttribute("newTitle",title); 
    392                 btn.setAttribute("params",params.join("|")); 
    393                 btn.setAttribute("newFocus","title"); 
    394                 } 
    395 
    396  
    397 config.macros.newJournal.handler = function(place,macroName,params) 
     410                if(params[1] && params[1].name == "anon") 
     411                        title = params[1].value; 
     412                if(params[0]["title"]) 
     413                        title = params[0]["title"][0]; 
     414                this.createNewTiddlerButton(place,title,params,this.label,this.prompt,this.accessKey,"title"); 
     415                } 
     416
     417 
     418config.macros.newJournal.handler = function(place,macroName,params,wikifier,paramString,tiddler) 
    398419{ 
    399420        if(!readOnly) 
    400421                { 
     422                var params = paramString.parseParams("anon",null,true,false,false); 
    401423                var now = new Date(); 
    402                 var title = now.formatString(params[0].trim()); 
    403                 var btn = createTiddlyButton(place,this.label,this.prompt,config.macros.newTiddler.onClick,null,null,this.accessKey); 
    404                 btn.setAttribute("newTitle",title); 
    405                 btn.setAttribute("params",params.join("|")); 
    406                 btn.setAttribute("newFocus","text"); 
     424                var title = ""; 
     425                if(params[1].name = "anon") 
     426                        title = params[1].value; 
     427                if(params[0]["title"]) 
     428                        title = params[0]["title"][0]; 
     429                title = now.formatString(title.trim()); 
     430                config.macros.newTiddler.createNewTiddlerButton(place,title,params,this.label,this.prompt,this.accessKey,"text"); 
    407431                } 
    408432}