Changeset 581 for trunk/plugins


Ignore:
Timestamp:
09/20/06 00:10:37 (13 years ago)
Author:
ray
Message:

Linker:

  • use fixRelativeLinks()
  • fixed buggy handling of anchor links

DoubleClick?:

  • with links: use button function instead of calling _createLink() directly (for Linker)
  • removed nonsensical toggling of bold, underline, etc.
Location:
trunk/plugins
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/plugins/DoubleClick/double-click.js

    r419 r581  
    3737        //                                                      - target is the selected object 
    3838        this.editor.dblClickList = { 
    39                 u: [ function(e) {e.execCommand("underline");} ], 
    40                 strike: [ function(e) {e.execCommand("strikethrough");} ], 
    41                 sub: [ function(e) {e.execCommand("subscript");} ], 
    42                 sup: [ function(e) {e.execCommand("superscript");} ], 
    4339                // Edit Link dialog 
    44                 a: [ function(e) {e.execCommand("createlink");} ], 
     40                a: [ function(e) {e.config.btnList['createlink'][3](e); } ], 
    4541                // Follow link 
    4642                //a: [ function(editor, target) { window.location = target.href; properties(target); } ], 
  • trunk/plugins/Linker/linker.js

    r565 r581  
    6868    to:       'alice@example.com', 
    6969    subject:  '', 
    70     body:     '' 
     70    body:     '', 
     71    anchor:   '' 
    7172  }; 
    7273 
    7374  if(a && a.tagName.toLowerCase() == 'a') 
    7475  { 
    75     var m = a.href.match(/^mailto:(.*@[^?&]*)(\?(.*))?$/); 
    76     var anchor = a.href.match(/^#(.*)$/); 
     76    var href =this.editor.fixRelativeLinks(a.href); 
     77    var m = href.match(/^mailto:(.*@[^?&]*)(\?(.*))?$/); 
     78    var anchor = href.match(/^#(.*)$/); 
     79 
    7780    if(m) 
    7881    { 
     
    97100      //Anchor-Link 
    98101      inputs.type = 'anchor'; 
    99       inputs.anchor = m[1]; 
     102      inputs.anchor = anchor[1]; 
     103       
    100104    } 
    101105    else 
     
    108112 
    109113        // Popup Window 
    110         inputs.href   = a.href ? a.href : ''; 
     114        inputs.href   = href ? href : ''; 
    111115        inputs.target = 'popup'; 
    112116        inputs.p_name = m[1]; 
     
    131135      { 
    132136        // Normal 
    133         inputs.href   = a.href; 
     137        inputs.href   = href; 
    134138        inputs.target = a.target; 
    135139      } 
     
    481485    this.dialog.getElementById('popuptable').style.display = 'none'; 
    482486  } 
    483  
     487   
    484488  var anchor = this.dialog.getElementById('anchor'); 
    485   for(var i=0;i<anchor.childNodes.length;i++) { 
    486     anchor.removeChild(anchor.childNodes[i]); 
     489  for(var i=anchor.length;i>=0;i--) { 
     490    anchor[i] = null; 
    487491  } 
    488492 
     
    511515  for(i=0;i<anchors.length;i++) 
    512516  { 
    513     var opt = document.createElement('option'); 
    514     opt.value = '#'+anchors[i]; 
    515     opt.innerHTML = anchors[i]; 
    516     anchor.appendChild(opt); 
     517    var opt = new Option(anchors[i],'#'+anchors[i],false,(inputs.anchor == anchors[i])); 
     518    anchor[anchor.length] = opt; 
    517519  } 
    518520 
Note: See TracChangeset for help on using the changeset viewer.