Changeset 436
- Timestamp:
- 04/24/13 20:28:45 (12 years ago)
- Location:
- Dev/trunk/client/qed
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
Dev/trunk/client/qed/css/dijit/overrides.less
r432 r436 107 107 border: none; 108 108 } 109 110 .claro .dojoDndItemAnchor { 111 background-color: #000000; 112 } 113 114 .claro .dojoDndItemOver { 115 background-color: #333333; 116 } -
Dev/trunk/client/qed/css/qed.css
r434 r436 339 339 border: none; 340 340 } 341 /* line 110, /home/hendrik/gamelab/qed.svn/Dev/trunk/client/qed/css/dijit/overrides.less */ 342 @media -sass-debug-info{filename{font-family:file\:\/\/\/home\/hendrik\/gamelab\/qed\.svn\/Dev\/trunk\/client\/qed\/css\/dijit\/overrides\.less}line{font-family:\00003110}} 343 .claro .dojoDndItemAnchor { 344 background-color: #000000; 345 } 346 /* line 114, /home/hendrik/gamelab/qed.svn/Dev/trunk/client/qed/css/dijit/overrides.less */ 347 @media -sass-debug-info{filename{font-family:file\:\/\/\/home\/hendrik\/gamelab\/qed\.svn\/Dev\/trunk\/client\/qed\/css\/dijit\/overrides\.less}line{font-family:\00003114}} 348 .claro .dojoDndItemOver { 349 background-color: #333333; 350 } 341 351 /* line 3, /home/hendrik/gamelab/qed.svn/Dev/trunk/client/qed/css/dijit/ContentPane.less */ 342 352 @media -sass-debug-info{filename{font-family:file\:\/\/\/home\/hendrik\/gamelab\/qed\.svn\/Dev\/trunk\/client\/qed\/css\/dijit\/ContentPane\.less}line{font-family:\000033}} -
Dev/trunk/client/qed/model/widgets/QuestionEditorPreview.js
r417 r436 20 20 _createListNode: function(item) { 21 21 var previewItem = new QuestionEditorPreviewItem({ 22 item: item22 value: item 23 23 }); 24 previewItem.on('close',lang.hitch(this,'removeItem',item)); 24 this.own(previewItem.on('close', 25 lang.hitch(this,'removeItem',item))); 25 26 previewItem.startup(); 26 27 return previewItem.domNode; -
Dev/trunk/client/qed/model/widgets/QuestionEditorPreviewItem.js
r417 r436 1 1 define([ 2 'dojo/_base/declare', 3 'dojo/_base/fx', 4 'dojo/_base/lang', 5 'dojo/dom-class', 6 'dojo/dom-geometry', 7 'dojo/on', 8 'dijit/_Container', 9 'dijit/_TemplatedMixin', 10 'dijit/_WidgetBase', 11 'dijit/_WidgetsInTemplateMixin', 12 './QuestionWidgetFactory', 13 'dojo/text!./templates/QuestionEditorPreviewItem.html' 14 ], function( 15 declare, 16 fx, 17 lang, 18 domClass, 19 domGeom, 20 on, 21 _Container, 22 _TemplatedMixin, 23 _WidgetBase, 24 _WidgetsInTemplateMixin, 25 QuestionWidgetFactory, 26 template 27 ){ 2 "./QuestionWidgetFactory", 3 "dijit/_Container", 4 "dijit/_TemplatedMixin", 5 "dijit/_WidgetBase", 6 "dijit/_WidgetsInTemplateMixin", 7 "dojo/_base/declare", 8 "dojo/_base/fx", 9 "dojo/_base/lang", 10 "dojo/dom-class", 11 "dojo/dom-geometry", 12 "dojo/on", 13 "dojo/text!./templates/QuestionEditorPreviewItem.html" 14 ], function(QuestionWidgetFactory, _Container, _TemplatedMixin, _WidgetBase, _WidgetsInTemplateMixin, declare, fx, lang, domClass, domGeom, on, template) { 28 15 return declare([_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin, _Container], { 29 version: "full",30 16 templateString: template, 31 17 baseClass: "surveyEditorPreviewItem", 32 18 previousContentHeight: 200, 33 item: null,19 value: null, 34 20 innerWidget: null, 35 21 foldDuration: [250, 250], 36 22 animation: null, 37 23 _editing: false, 24 _factory: new QuestionWidgetFactory(), 38 25 39 26 startup: function() { 40 27 if ( this._started ){ return; } 41 28 this.inherited(arguments); 42 this.foldButtonNode.onClick = lang.hitch(this, this.toggleFold); 43 this.removeButtonNode.onClick = lang.hitch(this, "onClose"); 44 this.editButtonNode.onClick = lang.hitch(this, this.toggleEdit); 45 if (this.item) { 46 this._showViewWidget(); 29 this.own(on(this.foldButtonNode,'click', 30 lang.hitch(this, 'onToggleFold'))); 31 this.own(on(this.removeButtonNode,'click', 32 lang.hitch(this, 'onClose'))); 33 this.own(on(this.editButtonNode,'click', 34 lang.hitch(this, 'onToggleEdit'))); 35 if (this.value) { 36 this._showEditWidget(); 47 37 } else { 48 38 throw "No data supplied to create an innerWidget!"; 49 39 } 50 40 }, 51 _destroyInnerWidget: function() {52 if ( this.innerWidget !== null ) {53 this.innerWidget.destroyRecursive();54 }55 },56 _showViewWidget: function() {57 var factory = new QuestionWidgetFactory();58 this.innerWidget = factory.createViewWidget( this.item );59 if ( this.innerWidget !== null ) {60 this.innerWidget.placeAt(this.containerNode);61 this.innerWidget.startup();62 this.innerWidget.set('readOnly',true);63 }64 this.titleNode.innerHTML = this.item.type+" [preview]";65 },66 _showEditWidget: function() {67 var factory = new QuestionWidgetFactory();68 this.innerWidget = factory.createEditWidget( this.item );69 if ( this.innerWidget !== null ) {70 this.innerWidget.placeAt(this.containerNode);71 this.innerWidget.startup();72 }73 this.titleNode.innerHTML = this.item.type+" [editing]";74 },75 41 onClose: function() {}, 76 42 _getValueAttr: function(value) { 77 return this. item;43 return this.value; 78 44 }, 79 45 _setValueAttr: function(value) { 80 this. item= value;46 this.value = value; 81 47 this._destroyInnerWidget(); 82 48 if ( this._editing ) { … … 86 52 } 87 53 }, 88 toggleEdit: function() {89 if (this._editing) {54 onToggleEdit: function() { 55 if (this._editing) { 90 56 if ( this.innerWidget !== null ) { 91 this.item = this.innerWidget.get('value'); 57 if (!this.innerWidget.validate || 58 this.innerWidget.validate() ) { 59 this.value = this.innerWidget.get('value'); 60 this._showViewWidget(); 61 } 62 } else { 63 this._showViewWidget(); 92 64 } 93 this._destroyInnerWidget();94 this._showViewWidget();95 this.editButtonNode.iconNode.className = this.editButtonNode.iconNode.className.replace("rftIconAccept", "rftIconEdit");96 this.editButtonNode.set("label", "Edit");97 65 } else { 98 this._destroyInnerWidget();99 66 this._showEditWidget(); 100 this.editButtonNode.iconNode.className = this.editButtonNode.iconNode.className.replace("rftIconEdit", "rftIconAccept");101 this.editButtonNode.set("label", "Done");102 67 } 103 this._editing = !this._editing;104 68 }, 105 toggleFold: function() { 69 _showViewWidget: function() { 70 this._destroyInnerWidget(); 71 this.innerWidget = this._factory.createViewWidget( this.value ); 72 if ( this.innerWidget !== null ) { 73 this.innerWidget.placeAt(this.containerNode); 74 this.innerWidget.startup(); 75 this.innerWidget.set('readOnly',true); 76 } 77 this.titleNode.innerHTML = this.value.type+" [preview]"; 78 this.editButtonNode.iconNode.className = this.editButtonNode.iconNode.className.replace("rftIconAccept", "rftIconEdit"); 79 this.editButtonNode.set("label", "Edit"); 80 this._editing = false; 81 }, 82 _showEditWidget: function() { 83 this._destroyInnerWidget(); 84 this.innerWidget = this._factory.createEditWidget( this.value ); 85 if ( this.innerWidget !== null ) { 86 this.innerWidget.placeAt(this.containerNode); 87 this.innerWidget.startup(); 88 } 89 this.titleNode.innerHTML = this.value.type+" [editing]"; 90 this.editButtonNode.iconNode.className = this.editButtonNode.iconNode.className.replace("rftIconEdit", "rftIconAccept"); 91 this.editButtonNode.set("label", "Done"); 92 this._editing = true; 93 }, 94 _destroyInnerWidget: function() { 95 if ( this.innerWidget !== null ) { 96 this.innerWidget.destroyRecursive(); 97 } 98 }, 99 onToggleFold: function() { 106 100 if (!this.animation) { 107 101 if (!domClass.contains(this.domNode, "fold")) {
Note: See TracChangeset
for help on using the changeset viewer.