Changeset 942 for trunk/plugins


Ignore:
Timestamp:
01/26/08 00:07:41 (12 years ago)
Author:
ray
Message:
  • #1137 [Equation] FF3 fixes & improved way of avoiding formula changes in editor
  • #1136 FF3 Linux select boxes in toolbar are too small
Location:
trunk/plugins/Equation
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/plugins/Equation/equation.js

    r879 r942  
    7474Equation._pluginInfo = { 
    7575        name          : "ASCIIMathML Formula Editor", 
    76         version       : "2.2 (2007-08-17)", 
     76        version       : "2.3 (2008-01-26)", 
    7777        developer     : "Raimund Meyer", 
    78         developer_url : "http://rheinaufCMS.de", 
     78        developer_url : "http://xinha.raimundmeyer.de", 
    7979        c_owner       : "", 
    80         sponsor       : "Rheinauf", 
    81         sponsor_url   : "http://rheinaufCMS.de", 
     80        sponsor       : "", 
     81        sponsor_url   : "", 
    8282        license       : "GNU/LGPL" 
    8383}; 
     
    9999                this.reParse = false; 
    100100        } 
     101}; 
     102// avoid changing the formula in the editor 
     103Equation.prototype.onKeyPress = function(ev) 
     104{ 
    101105        if (!Xinha.is_ie) 
    102106        { 
     107                e = this.editor; 
    103108                var span = e._getFirstAncestor(e.getSelection(),['span']); 
    104109                if ( span && span.className == "AM" ) 
    105110                { 
    106                         e.selectNodeContents(span); 
    107                 } 
    108         } 
    109 }; 
    110  
     111                        if ( 
     112                                ev.keyCode == 8 || // delete 
     113                                ev.keyCode == 46 ||// backspace 
     114                                ev.charCode            // all character keys 
     115                        )  
     116                        { // stop event 
     117                                Xinha._stopEvent(ev); 
     118                                return true;  
     119                        } 
     120                } 
     121        } 
     122        return false; 
     123} 
    111124Equation.prototype.onModeChange = function( args ) 
    112125{ 
     
    133146                        var node = spans[i]; 
    134147                        if (node.className != 'AM') continue; 
     148                        if (node.innerHTML.indexOf(this.editor.cc) != -1) // avoid problems with source code position auxiliary character 
     149                        { 
     150                                node.innerHTML = node.innerHTML.replace(this.editor.cc,''); 
     151                                node.parentNode.insertBefore(doc.createTextNode(this.editor.cc), node); 
     152                        } 
    135153                        node.title = node.innerHTML; 
    136                         AMprocessNode(node, false); 
     154                        // FF3 strict source document policy:  
     155                        // the span is taken from the editor document, processed in the plugin document, and put back in the editor 
     156                        var clone = node.cloneNode(true); 
     157                        try { 
     158                                document.adoptNode(clone); 
     159                        } catch (e) {} 
     160                        AMprocessNode(clone, false); 
     161                        try { 
     162                                doc.adoptNode(clone); 
     163                        } catch (e) {} 
     164                        node.parentNode.replaceChild(clone, node); 
    137165                } 
    138166        } 
     
    167195                args["editedNode"] = parent; 
    168196        } 
    169         editor._popupDialog("plugin://Equation/dialog", function(params) { 
     197        Dialog(_editor_url + "plugins/Equation/popups/dialog.html", function(params) { 
    170198                                self.insert(params); 
    171199                        }, args); 
     
    207235                        } 
    208236                } 
    209                 if (!Xinha.is_ie) AMprocessNode(this.editor._doc.body, false); 
    210         } 
    211 } 
     237 
     238                if (!Xinha.is_ie) this.parse();//AMprocessNode(this.editor._doc.body, false); 
     239        } 
     240} 
  • trunk/plugins/Equation/popups/dialog.html

    r879 r942  
    8080        mathfontfamily = cfg.Equation.mathfontfamily; 
    8181         
     82        translate(); 
    8283        var inputField = document.getElementById("inputText");  
    8384         
  • trunk/plugins/Equation/readme.txt

    r677 r942  
    99Usage 
    1010 The formmulae are stored in their ASCII representation, so you have to include the  
    11  ASCIIMathML library which can be found in the plugin folder in order render the MathML output in your pages.  
     11 ASCIIMathML library which can be found in the plugin folder in order to render the MathML output in your pages.  
    1212  
    1313 Example (also see example.html): 
     
    1717  <script type="text/javascript" src="/xinha/plugins/AsciiMath/ASCIIMathML.js"></script> 
    1818 
    19    
    2019 The recommended browser for using this plugin is Mozilla/Firefox. At the moment showing the MathML output 
    2120 inside the editor is not supported in Internet Explorer. 
Note: See TracChangeset for help on using the changeset viewer.