--- /dev/null
+<html><head><title>../roojs1/Roo/form/HtmlEditor/ToolbarStandard.js</title><link rel="stylesheet" type="text/css" href="../../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">// <script type="text/javascript">
+/*
+ * Based on
+ * Ext JS Library 1.1.1
+ * Copyright(c) 2006-2007, Ext JS, LLC.
+ *
+
+ */
+
+/**
+ * @class Roo.form.HtmlEditorToolbar1
+ * Basic Toolbar
+ *
+ * Usage:
+ *
+ new Roo.form.HtmlEditor({
+ ....
+ toolbars : [
+ new Roo.form.HtmlEditorToolbar1({
+ disable : { fonts: 1 , format: 1, ..., ... , ...],
+ btns : [ .... ]
+ })
+ }
+
+ *
+ * @cfg {Object} disable List of elements to disable..
+ * @cfg {Array} btns List of additional buttons.
+ *
+ *
+ * NEEDS Extra CSS?
+ * .x-html-editor-tb .x-edit-none .x-btn-text { background: none; }
+ */
+
+</span><span class="jsdoc-var">Roo.form.HtmlEditor.ToolbarStandard </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">)
+{
+
+ </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
+
+ </span><span class="jsdoc-comment">// default disabled, based on 'good practice'..
+ </span><span class="jsdoc-var">this.disable </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.disable </span><span class="jsdoc-syntax">|| {};
+ </span><span class="jsdoc-var">Roo.applyIf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disable</span><span class="jsdoc-syntax">, {
+ </span><span class="jsdoc-var">fontSize </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">colors </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">specialElements </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
+ </span><span class="jsdoc-syntax">});
+
+
+ </span><span class="jsdoc-comment">//Roo.form.HtmlEditorToolbar1.superclass.constructor.call(this, editor.wrap.dom.firstChild, [], config);
+ // dont call parent... till later.
+</span><span class="jsdoc-syntax">}
+
+</span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.form.HtmlEditor.ToolbarStandard.prototype</span><span class="jsdoc-syntax">, {
+
+ </span><span class="jsdoc-var">tb</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">rendered</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">editor </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">editorcore </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-comment">/**
+ * @cfg {Object} disable List of toolbar elements to disable
+
+ */
+ </span><span class="jsdoc-var">disable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+
+
+ </span><span class="jsdoc-comment">/**
+ * @cfg {String} createLinkText The default text for the create link prompt
+ */
+ </span><span class="jsdoc-var">createLinkText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Please enter the URL for the link:'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-comment">/**
+ * @cfg {String} defaultLinkValue The default value for the create link prompt (defaults to http:/ /)
+ */
+ </span><span class="jsdoc-var">defaultLinkValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'http:/'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'/'</span><span class="jsdoc-syntax">,
+
+
+ </span><span class="jsdoc-comment">/**
+ * @cfg {Array} fontFamilies An array of available font families
+ */
+ </span><span class="jsdoc-var">fontFamilies </span><span class="jsdoc-syntax">: [
+ </span><span class="jsdoc-string">'Arial'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'Courier New'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'Tahoma'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'Times New Roman'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'Verdana'
+ </span><span class="jsdoc-syntax">],
+
+ </span><span class="jsdoc-var">specialChars </span><span class="jsdoc-syntax">: [
+ </span><span class="jsdoc-string">"&#169;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">"&#174;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">"&#8482;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">"&#163;" </span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-comment">// "&#8212;",
+ </span><span class="jsdoc-string">"&#8230;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">"&#247;" </span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-comment">// "&#225;" , ?? a acute?
+ </span><span class="jsdoc-string">"&#8364;" </span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//Euro
+ // "&#8220;" ,
+ // "&#8221;" ,
+ // "&#8226;" ,
+ </span><span class="jsdoc-string">"&#176;" </span><span class="jsdoc-comment">// , // degrees
+
+ // "&#233;" , // e ecute
+ // "&#250;" , // u ecute?
+ </span><span class="jsdoc-syntax">],
+
+ </span><span class="jsdoc-var">specialElements </span><span class="jsdoc-syntax">: [
+ {
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Insert Table"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'MenuItem'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.Menu</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">ihtml </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'<table><tr><td>Cell</td></tr></table>'
+
+ </span><span class="jsdoc-syntax">},
+ {
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Insert Image"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'MenuItem'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.Menu</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">ihtml </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'<img src="about:blank"/>'
+
+ </span><span class="jsdoc-syntax">}
+
+
+ ],
+
+
+ </span><span class="jsdoc-var">inputElements </span><span class="jsdoc-syntax">: [
+ </span><span class="jsdoc-string">"form"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:text"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:hidden"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:checkbox"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:radio"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:password"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">"input:submit"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"input:button"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"select"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"textarea"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"label" </span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-var">formats </span><span class="jsdoc-syntax">: [
+ [</span><span class="jsdoc-string">"p"</span><span class="jsdoc-syntax">] ,
+ [</span><span class="jsdoc-string">"h1"</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">"h2"</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">"h3"</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">"h4"</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">"h5"</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">"h6"</span><span class="jsdoc-syntax">],
+ [</span><span class="jsdoc-string">"pre"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"code"</span><span class="jsdoc-syntax">],
+ [</span><span class="jsdoc-string">"abbr"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"acronym"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"address"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"cite"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"samp"</span><span class="jsdoc-syntax">],[ </span><span class="jsdoc-string">"var"</span><span class="jsdoc-syntax">],
+ [</span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">],[</span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">]
+ ],
+
+ </span><span class="jsdoc-var">cleanStyles </span><span class="jsdoc-syntax">: [
+ </span><span class="jsdoc-string">"font-size"
+ </span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-comment">/**
+ * @cfg {String} defaultFont default font to use.
+ */
+ </span><span class="jsdoc-var">defaultFont</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tahoma'</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">fontSelect </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+
+
+ </span><span class="jsdoc-var">formatCombo </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">init </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">editor</span><span class="jsdoc-syntax">)
+ {
+ </span><span class="jsdoc-var">this.editor </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">editor</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-var">this.editorcore </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">editor.editorcore </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">editor.editorcore </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">editor</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">editorcore </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.editorcore</span><span class="jsdoc-syntax">;
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">fid </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">editorcore.frameId</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">etb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">function </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">toggle</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">xid </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">fid </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">id </span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">{
+ </span><span class="jsdoc-var">id </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">xid</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cmd </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-btn-icon x-edit-'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">enableToggle</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">toggle </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">_t</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">// was editor...
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">_t.relayBtnCmd</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">clickEvent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">etb.buttonTips</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">] || </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">///tips ???
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ };
+ }
+
+
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">tb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Toolbar</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">editor.wrap.dom.firstChild</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">this.tb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">tb</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-comment">// stop form submits
+ </span><span class="jsdoc-var">tb.el.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">(); </span><span class="jsdoc-comment">// what does this do?
+ </span><span class="jsdoc-syntax">});
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.font</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// && !Roo.isSafari){
+ /* why no safari for fonts
+ editor.fontSelect = tb.el.createChild({
+ tag:'select',
+ tabIndex: -1,
+ cls:'x-font-select',
+ html: this.createFontOptions()
+ });
+
+ editor.fontSelect.on('change', function(){
+ var font = editor.fontSelect.dom.value;
+ editor.relayCmd('fontname', font);
+ editor.deferFocus();
+ }, editor);
+
+ tb.add(
+ editor.fontSelect.dom,
+ '-'
+ );
+ */
+
+ </span><span class="jsdoc-syntax">};
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.formats</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">this.formatCombo </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.form.ComboBox</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">store</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.data.SimpleStore</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">id </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tag'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">fields</span><span class="jsdoc-syntax">: [</span><span class="jsdoc-string">'tag'</span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.formats </span><span class="jsdoc-comment">// from states.js
+ </span><span class="jsdoc-syntax">}),
+ </span><span class="jsdoc-var">blockFocus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-comment">//autoCreate : {tag: "div", size: "20"},
+ </span><span class="jsdoc-var">displayField</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'tag'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">typeAhead</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">mode</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'local'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">editable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">triggerAction</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">emptyText</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'Add tag'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">selectOnFocus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">width</span><span class="jsdoc-syntax">:135,
+ </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editorcore.insertTag</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tag'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">editor.focus</span><span class="jsdoc-syntax">();
+ }
+ }
+
+ });
+ </span><span class="jsdoc-var">tb.addField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.formatCombo</span><span class="jsdoc-syntax">);
+
+ }
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.format</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'bold'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'italic'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'underline'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'strikethrough'</span><span class="jsdoc-syntax">)
+ );
+ };
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.fontSize</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+
+
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'increasefontsize'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">editorcore.adjustFont</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'decreasefontsize'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">editorcore.adjustFont</span><span class="jsdoc-syntax">)
+ );
+ };
+
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.colors</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">, {
+ </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">editorcore.frameId </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'-forecolor'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'x-btn-icon x-edit-forecolor'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">clickEvent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.buttonTips</span><span class="jsdoc-syntax">[</span><span class="jsdoc-string">'forecolor'</span><span class="jsdoc-syntax">] || </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1,
+ </span><span class="jsdoc-var">menu </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.menu.ColorMenu</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">allowReselect</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">focus</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'000000'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">plain</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">selectHandler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cp</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">color</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">editorcore.execCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'forecolor'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.isSafari </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">Roo.isIE </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">color </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">color</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">editor.deferFocus</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">editorcore</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">clickEvent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'mousedown'
+ </span><span class="jsdoc-syntax">})
+ }, {
+ </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">editorcore.frameId </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'backcolor'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'x-btn-icon x-edit-backcolor'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">clickEvent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.buttonTips</span><span class="jsdoc-syntax">[</span><span class="jsdoc-string">'backcolor'</span><span class="jsdoc-syntax">] || </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1,
+ </span><span class="jsdoc-var">menu </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.menu.ColorMenu</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">focus</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'FFFFFF'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">plain</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">allowReselect</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">selectHandler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cp</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">color</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isGecko</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">editorcore.execCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'useCSS'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">editorcore.execCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'hilitecolor'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">color</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">editorcore.execCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'useCSS'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">editor.deferFocus</span><span class="jsdoc-syntax">();
+ }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+ </span><span class="jsdoc-var">editorcore.execCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isOpera </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'hilitecolor' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'backcolor'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">Roo.isSafari </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">Roo.isIE </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">color </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">color</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">editor.deferFocus</span><span class="jsdoc-syntax">();
+ }
+ },
+ </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">editorcore</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">clickEvent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'mousedown'
+ </span><span class="jsdoc-syntax">})
+ }
+ );
+ };
+ </span><span class="jsdoc-comment">// now add all the items...
+
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.alignments</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifyleft'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifycenter'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifyright'</span><span class="jsdoc-syntax">)
+ );
+ };
+
+ </span><span class="jsdoc-comment">//if(!Roo.isSafari){
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.links</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'createlink'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.createLink</span><span class="jsdoc-syntax">) </span><span class="jsdoc-comment">/// MOVE TO HERE?!!?!?!?!
+ </span><span class="jsdoc-syntax">);
+ };
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.lists</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'insertorderedlist'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'insertunorderedlist'</span><span class="jsdoc-syntax">)
+ );
+ }
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.sourceEdit</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'sourceedit'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">this.toggleSourceEdit</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn.pressed</span><span class="jsdoc-syntax">);
+ })
+ );
+ }
+ </span><span class="jsdoc-comment">//}
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">smenu </span><span class="jsdoc-syntax">= { };
+ </span><span class="jsdoc-comment">// special menu.. - needs to be tidied up..
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.special</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">smenu </span><span class="jsdoc-syntax">= {
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"&#169;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-edit-none'</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">menu </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: []
+ }
+ };
+ </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.specialChars.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
+ </span><span class="jsdoc-var">smenu.menu.items.push</span><span class="jsdoc-syntax">({
+
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.specialChars</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editorcore.insertAtCursor</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">String.fromCharCode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.html.replace</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'&#'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.replace</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">';'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">)));
+ </span><span class="jsdoc-comment">//editor.insertAtCursor(a.html);
+
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+ }
+
+
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">smenu</span><span class="jsdoc-syntax">);
+
+
+ }
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cmenu </span><span class="jsdoc-syntax">= { };
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.cleanStyles</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">cmenu </span><span class="jsdoc-syntax">= {
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-btn-icon x-btn-clear'</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">menu </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: []
+ }
+ };
+ </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.cleanStyles.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.cleanStyles</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Remove ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.cleanStyles</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+</span><span class="jsdoc-comment">// Roo.log(a);
+// Roo.log(b);
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">editorcore.doc.body</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">c.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'[style]'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">s.dom.style.removeProperty</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.actiontype</span><span class="jsdoc-syntax">);
+ });
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+ }
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tablewidths'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Remove Table Widths'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editorcore.cleanTableWidths</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'word'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Remove MS Word Formating'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editorcore.cleanWord</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Remove All Styles'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">editorcore.doc.body</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">c.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'[style]'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">s.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'style'</span><span class="jsdoc-syntax">);
+ });
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Remove All CSS Classes'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">editorcore.doc.body</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">c.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'[class]'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">s.dom.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
+ });
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+
+ </span><span class="jsdoc-var">cmenu.menu.items.push</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">actiontype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tidy'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Tidy HTML Source'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editorcore.doc.body.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">editorcore.domToHTML</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-var">editorcore.syncValue</span><span class="jsdoc-syntax">();
+ },
+ </span><span class="jsdoc-var">tabIndex</span><span class="jsdoc-syntax">:-1
+ });
+
+
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cmenu</span><span class="jsdoc-syntax">);
+ }
+
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.specialElements</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">semenu </span><span class="jsdoc-syntax">= {
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Other;"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-edit-none'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">menu </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: []
+ }
+ };
+ </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.specialElements.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
+ </span><span class="jsdoc-var">semenu.menu.items.push</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">({
+ </span><span class="jsdoc-var">handler</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">editor.insertAtCursor</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ihtml</span><span class="jsdoc-syntax">);
+ }
+ }, </span><span class="jsdoc-var">this.specialElements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">])
+ );
+
+ }
+
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">semenu</span><span class="jsdoc-syntax">);
+
+
+ }
+
+
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.btns</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.btns.length</span><span class="jsdoc-syntax">;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">b </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],</span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">b.cls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'x-edit-none'</span><span class="jsdoc-syntax">;
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.cls</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.cls.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-init-enable'</span><span class="jsdoc-syntax">) !== -1){
+ </span><span class="jsdoc-var">b.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' x-init-enable'</span><span class="jsdoc-syntax">;
+ }
+
+ </span><span class="jsdoc-var">b.scope </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">editorcore</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-var">tb.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">);
+ }
+
+ }
+
+
+
+ </span><span class="jsdoc-comment">// disable everything...
+
+ </span><span class="jsdoc-var">this.tb.items.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-var">item.id </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">editorcore.frameId</span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-sourceedit' </span><span class="jsdoc-syntax">&&
+ (</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.cls</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">item.cls.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-init-enable'</span><span class="jsdoc-syntax">) === -1)
+ ){
+
+ </span><span class="jsdoc-var">item.disable</span><span class="jsdoc-syntax">();
+ }
+ });
+ </span><span class="jsdoc-var">this.rendered </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+
+ </span><span class="jsdoc-comment">// the all the btns;
+ </span><span class="jsdoc-var">editor.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'editorevent'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.updateToolbar</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-comment">// other toolbars need to implement this..
+ //editor.on('editmodechange', this.updateToolbar, this);
+ </span><span class="jsdoc-syntax">},
+
+
+ </span><span class="jsdoc-var">relayBtnCmd </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">this.editorcore.relayCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn.cmd</span><span class="jsdoc-syntax">);
+ },
+ </span><span class="jsdoc-comment">// private used internally
+ </span><span class="jsdoc-var">createLink </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"create link?"</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">url </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">prompt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.createLinkText</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.defaultLinkValue</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">url </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">url </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">'http:/'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'/'</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">this.editorcore.relayCmd</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'createlink'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">);
+ }
+ },
+
+
+ </span><span class="jsdoc-comment">/**
+ * Protected method that will not generally be called directly. It triggers
+ * a toolbar update by reading the markup state of the current selection in the editor.
+ */
+ </span><span class="jsdoc-var">updateToolbar</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.editorcore.activated</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">this.editor.onFirstFocus</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+ }
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">btns </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.tb.items.map</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">doc </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.editorcore.doc</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.editorcore.frameId</span><span class="jsdoc-syntax">;
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.font </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">Roo.isSafari</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-comment">/*
+ var name = (doc.queryCommandValue('FontName')||this.editor.defaultFont).toLowerCase();
+ if(name != this.fontSelect.dom.value){
+ this.fontSelect.dom.value = name;
+ }
+ */
+ </span><span class="jsdoc-syntax">}
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.format</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-bold'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'bold'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-italic'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'italic'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-underline'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'underline'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-strikethrough'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'strikethrough'</span><span class="jsdoc-syntax">));
+ }
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disable.alignments</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-justifyleft'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifyleft'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-justifycenter'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifycenter'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-justifyright'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'justifyright'</span><span class="jsdoc-syntax">));
+ }
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">Roo.isSafari </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.disable.lists</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-insertorderedlist'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'insertorderedlist'</span><span class="jsdoc-syntax">));
+ </span><span class="jsdoc-var">btns</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">frameId </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-insertunorderedlist'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doc.queryCommandState</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'insertunorderedlist'</span><span class="jsdoc-syntax">));
+ }
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ans </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.editorcore.getAllAncestors</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.formatCombo</span><span class="jsdoc-syntax">) {
+
+
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">store </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.formatCombo.store</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-var">this.formatCombo.setValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">ans.length</span><span class="jsdoc-syntax">;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ans</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">] && </span><span class="jsdoc-var">store.query</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tag'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">ans</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.tagName.toLowerCase</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.length</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-comment">// select it..
+ </span><span class="jsdoc-var">this.formatCombo.setValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ans</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.tagName.toLowerCase</span><span class="jsdoc-syntax">());
+ </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
+ }
+ }
+ }
+
+
+
+ </span><span class="jsdoc-comment">// hides menus... - so this cant be on a menu...
+ </span><span class="jsdoc-var">Roo.menu.MenuMgr.hideAll</span><span class="jsdoc-syntax">();
+
+ </span><span class="jsdoc-comment">//this.editorsyncValue();
+ </span><span class="jsdoc-syntax">},
+
+
+ </span><span class="jsdoc-var">createFontOptions </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= [], </span><span class="jsdoc-var">fs </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.fontFamilies</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ff</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">lc</span><span class="jsdoc-syntax">;
+
+
+
+ </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">fs.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
+ </span><span class="jsdoc-var">ff </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">fs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">];
+ </span><span class="jsdoc-var">lc </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ff.toLowerCase</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-var">buf.push</span><span class="jsdoc-syntax">(
+ </span><span class="jsdoc-string">'<option value="'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">lc</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'" style="font-family:'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">ff</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">';"'</span><span class="jsdoc-syntax">,
+ (</span><span class="jsdoc-var">this.defaultFont </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">lc </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">' selected="true">' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'>'</span><span class="jsdoc-syntax">),
+ </span><span class="jsdoc-var">ff</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'</option>'
+ </span><span class="jsdoc-syntax">);
+ }
+ </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">buf.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">);
+ },
+
+ </span><span class="jsdoc-var">toggleSourceEdit </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sourceEditMode</span><span class="jsdoc-syntax">){
+
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"toolbar toogle"</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sourceEditMode </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">sourceEditMode </span><span class="jsdoc-syntax">= !</span><span class="jsdoc-var">this.sourceEditMode</span><span class="jsdoc-syntax">;
+ }
+ </span><span class="jsdoc-var">this.sourceEditMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sourceEditMode </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">btn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.tb.items.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editorcore.frameId </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'-sourceedit'</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-comment">// just toggle the button?
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn.pressed </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">this.sourceEditMode</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">btn.toggle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.sourceEditMode</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+ }
+
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sourceEditMode</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"disabling buttons"</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">this.tb.items.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.cmd </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">'sourceedit' </span><span class="jsdoc-syntax">&& (</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.cls</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">item.cls.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-init-enable'</span><span class="jsdoc-syntax">) === -1)){
+ </span><span class="jsdoc-var">item.disable</span><span class="jsdoc-syntax">();
+ }
+ });
+
+ }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"enabling buttons"</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editorcore.initialized</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">this.tb.items.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">item.enable</span><span class="jsdoc-syntax">();
+ });
+ }
+
+ }
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"calling toggole on editor"</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-comment">// tell the editor that it's been pressed..
+ </span><span class="jsdoc-var">this.editor.toggleSourceEdit</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sourceEditMode</span><span class="jsdoc-syntax">);
+
+ },
+ </span><span class="jsdoc-comment">/**
+ * Object collection of toolbar tooltips for the buttons in the editor. The key
+ * is the command id associated with that button and the value is a valid QuickTips object.
+ * For example:
+<pre><code>
+{
+ bold : {
+ title: 'Bold (Ctrl+B)',
+ text: 'Make the selected text bold.',
+ cls: 'x-html-editor-tip'
+ },
+ italic : {
+ title: 'Italic (Ctrl+I)',
+ text: 'Make the selected text italic.',
+ cls: 'x-html-editor-tip'
+ },
+ ...
+</code></pre>
+ * @type Object
+ */
+ </span><span class="jsdoc-var">buttonTips </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">bold </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Bold (Ctrl+B)'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Make the selected text bold.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">italic </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Italic (Ctrl+I)'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Make the selected text italic.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">underline </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Underline (Ctrl+U)'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Underline the selected text.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">strikethrough </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Strikethrough'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Strikethrough the selected text.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">increasefontsize </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Grow Text'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Increase the font size.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">decreasefontsize </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Shrink Text'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Decrease the font size.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">backcolor </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Text Highlight Color'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Change the background color of the selected text.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">forecolor </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Font Color'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Change the color of the selected text.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">justifyleft </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Align Text Left'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Align text to the left.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">justifycenter </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Center Text'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Center text in the editor.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">justifyright </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Align Text Right'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Align text to the right.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">insertunorderedlist </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Bullet List'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Start a bulleted list.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">insertorderedlist </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Numbered List'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Start a numbered list.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">createlink </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Hyperlink'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Make the selected text a hyperlink.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">},
+ </span><span class="jsdoc-var">sourceedit </span><span class="jsdoc-syntax">: {
+ </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Source Edit'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Switch to source editing mode.'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-html-editor-tip'
+ </span><span class="jsdoc-syntax">}
+ },
+ </span><span class="jsdoc-comment">// private
+ </span><span class="jsdoc-var">onDestroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+
+ </span><span class="jsdoc-var">this.tb.items.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.menu</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">item.menu.removeAll</span><span class="jsdoc-syntax">();
+ </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.menu.el</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">item.menu.el.destroy</span><span class="jsdoc-syntax">();
+ }
+ }
+ </span><span class="jsdoc-var">item.destroy</span><span class="jsdoc-syntax">();
+ });
+
+ }
+ },
+ </span><span class="jsdoc-var">onFirstFocus</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
+ </span><span class="jsdoc-var">this.tb.items.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">item.enable</span><span class="jsdoc-syntax">();
+ });
+ }
+});
+
+
+
+
+</span></code></body></html>
\ No newline at end of file