diff options
author | Friendika <info@friendika.com> | 2011-06-28 21:11:52 -0700 |
---|---|---|
committer | Friendika <info@friendika.com> | 2011-06-28 21:11:52 -0700 |
commit | 0b221e8945ae785dc706d8ea9a9e8e25532c0096 (patch) | |
tree | 52d4978006b028c24ee1feb3cf6ba2907a48c88f /library/tinymce/jscripts/tiny_mce/utils/editable_selects.js | |
parent | 60caa0349416dad1a3a891e3c0e00d33d25d7a91 (diff) | |
download | volse-hubzilla-0b221e8945ae785dc706d8ea9a9e8e25532c0096.tar.gz volse-hubzilla-0b221e8945ae785dc706d8ea9a9e8e25532c0096.tar.bz2 volse-hubzilla-0b221e8945ae785dc706d8ea9a9e8e25532c0096.zip |
bug #96 move libraries to library - better alignment of like rotator
Diffstat (limited to 'library/tinymce/jscripts/tiny_mce/utils/editable_selects.js')
-rw-r--r-- | library/tinymce/jscripts/tiny_mce/utils/editable_selects.js | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/library/tinymce/jscripts/tiny_mce/utils/editable_selects.js b/library/tinymce/jscripts/tiny_mce/utils/editable_selects.js new file mode 100644 index 000000000..fd943c0f8 --- /dev/null +++ b/library/tinymce/jscripts/tiny_mce/utils/editable_selects.js @@ -0,0 +1,70 @@ +/**
+ * editable_selects.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+var TinyMCE_EditableSelects = {
+ editSelectElm : null,
+
+ init : function() {
+ var nl = document.getElementsByTagName("select"), i, d = document, o;
+
+ for (i=0; i<nl.length; i++) {
+ if (nl[i].className.indexOf('mceEditableSelect') != -1) {
+ o = new Option('(value)', '__mce_add_custom__');
+
+ o.className = 'mceAddSelectValue';
+
+ nl[i].options[nl[i].options.length] = o;
+ nl[i].onchange = TinyMCE_EditableSelects.onChangeEditableSelect;
+ }
+ }
+ },
+
+ onChangeEditableSelect : function(e) {
+ var d = document, ne, se = window.event ? window.event.srcElement : e.target;
+
+ if (se.options[se.selectedIndex].value == '__mce_add_custom__') {
+ ne = d.createElement("input");
+ ne.id = se.id + "_custom";
+ ne.name = se.name + "_custom";
+ ne.type = "text";
+
+ ne.style.width = se.offsetWidth + 'px';
+ se.parentNode.insertBefore(ne, se);
+ se.style.display = 'none';
+ ne.focus();
+ ne.onblur = TinyMCE_EditableSelects.onBlurEditableSelectInput;
+ ne.onkeydown = TinyMCE_EditableSelects.onKeyDown;
+ TinyMCE_EditableSelects.editSelectElm = se;
+ }
+ },
+
+ onBlurEditableSelectInput : function() {
+ var se = TinyMCE_EditableSelects.editSelectElm;
+
+ if (se) {
+ if (se.previousSibling.value != '') {
+ addSelectValue(document.forms[0], se.id, se.previousSibling.value, se.previousSibling.value);
+ selectByValue(document.forms[0], se.id, se.previousSibling.value);
+ } else
+ selectByValue(document.forms[0], se.id, '');
+
+ se.style.display = 'inline';
+ se.parentNode.removeChild(se.previousSibling);
+ TinyMCE_EditableSelects.editSelectElm = null;
+ }
+ },
+
+ onKeyDown : function(e) {
+ e = e || window.event;
+
+ if (e.keyCode == 13)
+ TinyMCE_EditableSelects.onBlurEditableSelectInput();
+ }
+};
|