Ignore:
Timestamp:
02/28/09 23:37:26 (3 years ago)
Author:
sys
Message:

textPrim editor : menu supplémentaire "Ouvrir cet item" pour uLink, objectLeaf, inlineImg, extBlock

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Xul_XedLib/chrome/content/scenarixedlib/libUiExtra/scRichText/textBase.xbl.xml

    r12915 r12916  
    36293629                                ]]></body> 
    36303630                        </method> 
     3631                        <!-- Recherche le noeud sélectionné pour calculer les actions actives des menus contextuels. --> 
     3632                        <method name="getSelectedNode"> 
     3633                                <body><![CDATA[ 
     3634                                        var vSel = this.fHTMLEditor.selection; 
     3635                                        if(vSel.rangeCount == 1) { 
     3636                                                var vRange = vSel.getRangeAt(0); 
     3637                                                if( vRange.startContainer.nodeType==1  
     3638                                                        && vRange.startContainer == vRange.endContainer  
     3639                                                        && Math.abs(vRange.endOffset - vRange.startOffset)==1 
     3640                                                        ) { 
     3641                                                        return vRange.startContainer.childNodes[vRange.startOffset]; 
     3642                                                } else { 
     3643                                                        return vRange.commonAncestorContainer; 
     3644                                                } 
     3645                                        } 
     3646                                        return null; 
     3647                                ]]></body> 
     3648                        </method> 
    36313649                        <!-- Popup menu des suppressions inline  
    36323650                        si pPopup est null ne fait que évaluer si il y a des balises à suppr et retourne le 1er noeud parent. 
     
    36353653                                <parameter name="pPopup"/> 
    36363654                                <body><![CDATA[ 
    3637                                         var vSel = this.fHTMLEditor.selection; 
    3638                                         if(vSel.rangeCount == 1) { 
    3639                                                 var vRange = vSel.getRangeAt(0); 
    3640                                                 var vParent; 
    3641                                                 if( vRange.startContainer.nodeType==1  
    3642                                                         && vRange.startContainer == vRange.endContainer  
    3643                                                         && Math.abs(vRange.endOffset - vRange.startOffset)==1 
    3644                                                         ) { 
    3645                                                         vParent = vRange.startContainer.childNodes[vRange.startOffset]; 
    3646                                                 } else { 
    3647                                                         vParent = vRange.commonAncestorContainer; 
    3648                                                 } 
    3649                                                  
    3650                                                 //Menu de suppression des parents 
    3651                                                 if(vParent && this.fClasses[vParent.nodeName].isInlineSibling) { 
    3652                                                         var vParentClass = this.fClasses[vParent.nodeName]; 
    3653                                                         while(vParent && vParentClass.isInlineSibling) { 
    3654                                                                 if("getStructuralNodes" in vParentClass) { 
    3655                                                                         if(!pPopup) return vParent; //Eval non null seulement. 
    3656                                                                         var vStrucNode = vParentClass.getStructuralNodes(vParent); 
    3657                                                                         var vItem = document.createElementNS(XULNS, "menuitem"); 
    3658                                                                         vItem.setAttribute("label", vStrucNode.title); 
    3659                                                                         vItem.setAttribute("value", "removeParent"); 
    3660                                                                         pPopup.appendChild(vItem); 
    3661                                                                         vItem.fHtmlNode = vParent; 
    3662                                                                         vItem.fStrucNode = vStrucNode; //Pour post-traitement menu contextuel 
    3663                                                                 } 
    3664                                                                 vParent = vParent.parentNode; 
    3665                                                                 vParentClass = this.fClasses[vParent.nodeName]; 
    3666                                                         } 
     3655                                        var vParent = this.getSelectedNode(); 
     3656                                        //Menu de suppression des parents 
     3657                                        if(vParent && this.fClasses[vParent.nodeName].isInlineSibling) { 
     3658                                                var vParentClass = this.fClasses[vParent.nodeName]; 
     3659                                                while(vParent && vParentClass.isInlineSibling) { 
     3660                                                        if("getStructuralNodes" in vParentClass) { 
     3661                                                                if(!pPopup) return vParent; //Eval non null seulement. 
     3662                                                                var vStrucNode = vParentClass.getStructuralNodes(vParent); 
     3663                                                                var vItem = document.createElementNS(XULNS, "menuitem"); 
     3664                                                                vItem.setAttribute("label", vStrucNode.title); 
     3665                                                                vItem.setAttribute("value", "removeParent"); 
     3666                                                                pPopup.appendChild(vItem); 
     3667                                                                vItem.fHtmlNode = vParent; 
     3668                                                                vItem.fStrucNode = vStrucNode; //Pour post-traitement menu contextuel 
     3669                                                        } 
     3670                                                        vParent = vParent.parentNode; 
     3671                                                        vParentClass = this.fClasses[vParent.nodeName]; 
    36673672                                                } 
    36683673                                        } 
Note: See TracChangeset for help on using the changeset viewer.