X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/412e60ded1457ec0f408e2234c9dd60122929bac..efe36f4f1b5df351eeb4d40a54c3900cf9a7079b:/src/editor/modules/nodePane/metaWidget/metaWidget.js diff --git a/src/editor/modules/nodePane/metaWidget/metaWidget.js b/src/editor/modules/nodePane/metaWidget/metaWidget.js new file mode 100644 index 0000000..14ba7b6 --- /dev/null +++ b/src/editor/modules/nodePane/metaWidget/metaWidget.js @@ -0,0 +1,43 @@ +define([ +'libs/jquery', +'libs/underscore', +'libs/backbone', +'libs/text!./stringField.html' +], function($, _, Backbone, stringFieldTpl) { + +'use strict'; + +var templates = { + string: _.template(stringFieldTpl) +}; + +var getAttrElement = function(attr) { + var toret = $('
'); + toret.append(templates.string({name: attr.name, value: attr.value})); + return toret; +}; + +var MetaWidget = Backbone.View.extend({ + events: { + 'change [metaField-name]': 'onMetaFieldChange' + }, + initialize: function() { + var view = this; + this.options.attrs.forEach(function(attr) { + view.$el.append(getAttrElement(attr)); + }); + }, + onMetaFieldChange: function(e) { + var target = $(e.target); + this.trigger('valueChanged', target.attr('metaField-name'), target.val()); + } +}); + + +return { + create: function(options) { + return new MetaWidget(options); + } +}; + +}); \ No newline at end of file