fix setting for keybinding

This commit is contained in:
nightwing 2013-04-15 11:03:44 +04:00
commit 62a25b0ce6
2 changed files with 11 additions and 13 deletions

View file

@ -43,6 +43,10 @@
define(function(require, exports, module) { define(function(require, exports, module) {
'use strict'; 'use strict';
var egen = require('./element_generator');
var addEditorMenuOptions = require('./add_editor_menu_options').addEditorMenuOptions;
var getSetFunctions = require('./get_set_functions').getSetFunctions;
/** /**
* Generates an interactive menu with settings useful to end users. * Generates an interactive menu with settings useful to end users.
* @author <a href="mailto:matthewkastor@gmail.com"> * @author <a href="mailto:matthewkastor@gmail.com">
@ -51,8 +55,6 @@ define(function(require, exports, module) {
* @param {ace.Editor} editor An instance of the ace editor. * @param {ace.Editor} editor An instance of the ace editor.
*/ */
module.exports.generateSettingsMenu = function generateSettingsMenu (editor) { module.exports.generateSettingsMenu = function generateSettingsMenu (editor) {
var addEditorMenuOptions = require('./add_editor_menu_options').addEditorMenuOptions;
var getSetFunctions = require('./get_set_functions').getSetFunctions;
/** /**
* container for dom elements that will go in the menu. * container for dom elements that will go in the menu.
* @author <a href="mailto:matthewkastor@gmail.com"> * @author <a href="mailto:matthewkastor@gmail.com">
@ -109,7 +111,6 @@ module.exports.generateSettingsMenu = function generateSettingsMenu (editor) {
* the dom element's value, checked, or selected option accordingly. * the dom element's value, checked, or selected option accordingly.
*/ */
function createNewEntry(obj, clss, item, val) { function createNewEntry(obj, clss, item, val) {
var egen = require('./element_generator');
var el; var el;
var div = document.createElement('div'); var div = document.createElement('div');
div.setAttribute('contains', item); div.setAttribute('contains', item);
@ -130,7 +131,6 @@ module.exports.generateSettingsMenu = function generateSettingsMenu (editor) {
delete x.selected; delete x.selected;
} }
}); });
// editor.session['setMode']('ace/mode/javascript')
obj[e.target.id](e.target.value); obj[e.target.id](e.target.value);
} catch (err) { } catch (err) {
throw new Error(err); throw new Error(err);
@ -151,7 +151,7 @@ module.exports.generateSettingsMenu = function generateSettingsMenu (editor) {
// post and get requests. // post and get requests.
// /ace_editor.html?setMode=ace/mode/html&setOverwrite=true // /ace_editor.html?setMode=ace/mode/html&setOverwrite=true
el = egen.createInput(item, val, clss); el = egen.createInput(item, val, clss);
el.addEventListener('blur', function(e) { el.addEventListener('change', function(e) {
try{ try{
if(e.target.value === 'true') { if(e.target.value === 'true') {
obj[e.target.id](true); obj[e.target.id](true);
@ -185,14 +185,12 @@ module.exports.generateSettingsMenu = function generateSettingsMenu (editor) {
*/ */
function makeDropdown(item, esr, clss, fn) { function makeDropdown(item, esr, clss, fn) {
var val = editor.menuOptions[item]; var val = editor.menuOptions[item];
val = val.map(function(valuex) { var currentVal = esr[fn]();
if(valuex.value === esr[fn]()) { if (typeof currentVal == 'object')
currentVal = currentVal.$id;
val.forEach(function(valuex) {
if (valuex.value === currentVal)
valuex.selected = 'selected'; valuex.selected = 'selected';
} else if(valuex.value === esr.$modeId) {
// is mode
valuex.selected = 'selected';
}
return valuex;
}); });
return createNewEntry(esr, clss, item, val); return createNewEntry(esr, clss, item, val);
} }

View file

@ -31,7 +31,7 @@
border-radius: 50%; border-radius: 50%;
padding: 7px; padding: 7px;
position: absolute; position: absolute;
left: -8px; right: -8px;
top: -8px; top: -8px;
z-index: 1000; z-index: 1000;
} }