X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=roojs-ui-debug.js;h=67936282b1662c248c1add1d02515cbe6268593c;hb=51a4628361ca177ca768f406b4d2a1eda3a7cf8b;hp=0319ea54e91536bee15c8fccbc6f0b6ad0267968;hpb=c05727229978bee1969beecbeb87a70bbbaa0c6b;p=roojs1 diff --git a/roojs-ui-debug.js b/roojs-ui-debug.js index 0319ea54e9..67936282b1 100644 --- a/roojs-ui-debug.js +++ b/roojs-ui-debug.js @@ -10302,6 +10302,7 @@ Roo.extend(Roo.LayoutDialog, Roo.BasicDialog, { /** * @class Roo.MessageBox + * @static * Utility class for generating different styles of message boxes. The alias Roo.Msg can also be used. * Example usage: *

@@ -22241,6 +22242,9 @@ Roo.extend(Roo.htmleditor.BlockFigure, Roo.htmleditor.Block, {
     caption : '',
     caption_display : 'block',
     width : '100%',
+    cls : '',
+    href: '',
+    video_url : '',
     
     // margin: '2%', not used
     
@@ -22405,6 +22409,56 @@ Roo.extend(Roo.htmleditor.BlockFigure, Roo.htmleditor.Block, {
         var d = document.createElement('div');
         d.innerHTML = this.caption;
         
+        var m = this.width == '50%' && this.align == 'center' ? '0 auto' : 0; 
+        
+        var img =   {
+            tag : 'img',
+            contenteditable : 'false',
+            src : this.image_src,
+            alt : d.innerText.replace(/\n/g, " "), // removeHTML..
+            style: {
+                width : 'auto',
+                'max-width': '100%',
+                margin : '0px' 
+                
+                
+            }
+        };
+        /*
+        '
' + + '' + + '' + + '' + + '
', + */ + + if (this.href.length > 0) { + img = { + tag : 'a', + href: this.href, + contenteditable : 'true', + cn : [ + img + ] + }; + } + + + if (this.video_url.length > 0) { + img = { + tag : 'div', + cls : this.cls, + frameborder : 0, + allowfullscreen : true, + width : 420, // these are for video tricks - that we replace the outer + height : 315, + src : this.video_url, + cn : [ + img + ] + }; + } + return { tag: 'figure', 'data-block' : 'Figure', @@ -22414,24 +22468,16 @@ Roo.extend(Roo.htmleditor.BlockFigure, Roo.htmleditor.Block, { float : this.align , 'max-width': this.width, width : 'auto', - margin: 0, + margin: m, padding: '10px' }, + + align : this.align, cn : [ - { - tag : 'img', - src : this.image_src, - alt : d.innerText.replace(/\n/g, " "), // removeHTML.. - style: { - width : 'auto', - 'max-width': '100%', - margin : '0px' - - - } - }, + img, + { tag: 'figcaption', contenteditable : true, @@ -22443,6 +22489,7 @@ Roo.extend(Roo.htmleditor.BlockFigure, Roo.htmleditor.Block, { 'font-style': 'italic', display : this.caption_display }, + cls : this.cls.length > 0 ? (this.cls + '-thumbnail' ) : '', html : this.caption } @@ -22453,7 +22500,13 @@ Roo.extend(Roo.htmleditor.BlockFigure, Roo.htmleditor.Block, { readElement : function(node) { + // this should not really come from the link... + this.video_url = this.getVal(node, 'div', 'src'); + this.cls = this.getVal(node, 'div', 'class'); + this.href = this.getVal(node, 'a', 'href'); + this.image_src = this.getVal(node, 'img', 'src'); + this.align = this.getVal(node, 'figure', 'align'); this.caption = this.getVal(node, 'figcaption', 'html'); //this.text_align = this.getVal(node, 'figcaption', 'style','text-align'); @@ -24153,6 +24206,7 @@ Roo.extend(Roo.HtmlEditorCore, Roo.Component, { } Roo.htmleditor.Block.initAll(this.doc.body); + this.updateLanguage(); var lc = this.doc.body.lastChild; if (lc && lc.nodeType == 1 && lc.getAttribute("contenteditable") == "false") { @@ -24224,7 +24278,7 @@ Roo.extend(Roo.HtmlEditorCore, Roo.Component, { dbody.bgProperties = 'fixed'; // ie //Roo.DomHelper.applyStyles(dbody, ss); Roo.EventManager.on(this.doc, { - //'mousedown': this.onEditorEvent, + 'mouseup': this.onEditorEvent, 'dblclick': this.onEditorEvent, 'click': this.onEditorEvent, @@ -24255,7 +24309,8 @@ Roo.extend(Roo.HtmlEditorCore, Roo.Component, { this.owner.fireEvent('initialize', this); this.pushValue(); }, - + // this is to prevent a href clicks resulting in a redirect? + onPasteEvent : function(e,v) { // I think we better assume paste is going to be a dirty load of rubish from word.. @@ -24414,6 +24469,7 @@ Roo.extend(Roo.HtmlEditorCore, Roo.Component, { onEditorEvent : function(e) { + if (e && (e.ctrlKey || e.metaKey) && e.keyCode === 90) { return; // we do not handle this.. (undo manager does..) @@ -25148,7 +25204,10 @@ Roo.extend(Roo.HtmlEditorCore, Roo.Component, { updateLanguage : function() { - Roo.get(_this.ifream.content.body).attr("lang", this.language); + if (!this.iframe || !this.iframe.contentDocument) { + return; + } + Roo.get(this.iframe.contentDocument.body).attr("lang", this.language); }, @@ -25393,8 +25452,7 @@ Roo.extend(Roo.form.HtmlEditor, Roo.form.Field, { */ language: 'en', - - + // id of frame.. frameId: false, @@ -25838,7 +25896,17 @@ Roo.extend(Roo.form.HtmlEditor, Roo.form.Field, { this.editorcore.pushValue(); }, + /** + * update the language in the body - really done by core + * @param {String} language - eg. en / ar / zh-CN etc.. + */ + updateLanguage : function(lang) + { + this.language = lang; + this.editorcore.language = lang; + this.editorcore.updateLanguage(); + }, // private deferFocus : function(){ this.focus.defer(10, this); @@ -26471,10 +26539,13 @@ Roo.apply(Roo.form.HtmlEditor.ToolbarStandard.prototype, { // private used internally createLink : function(){ Roo.log("create link?"); - var url = prompt(this.createLinkText, this.defaultLinkValue); - if(url && url != 'http:/'+'/'){ - this.editorcore.relayCmd('createlink', url); - } + var ec = this.editorcore; + Roo.MessageBox.prompt("Add Link URL",this.createLinkText, function(url) { + if(url && url != 'http:/'+'/'){ + ec.relayCmd('createlink', url); + } + }); + },