Changeset 288 for Dev/branches/rest-dojo-ui/client/rft/ui
- Timestamp:
- 02/24/12 16:09:22 (13 years ago)
- Location:
- Dev/branches/rest-dojo-ui/client/rft/ui
- Files:
-
- 3 added
- 5 edited
- 3 moved
Legend:
- Unmodified
- Added
- Removed
-
Dev/branches/rest-dojo-ui/client/rft/ui/LineWithActionsWidget.js
r275 r288 1 define(['dojo/_base/declare','dojo/_base/lang','dijit/form/Button','dijit/_WidgetBase','dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin','dojo/text!rft/ui/LineWithActionsWidget.html'], 1 define(['dojo/_base/declare','dojo/_base/lang','dijit/form/Button', 2 'dijit/_WidgetBase','dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin', 3 'dojo/text!./templates/LineWithActionsWidget.html'], 2 4 function(declare,lang,Button,_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin,templateString){ 3 5 return declare('rft.ui.LineWithActionsWidget',[_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin],{ -
Dev/branches/rest-dojo-ui/client/rft/ui/LoginDialog.js
r274 r288 1 1 define(['dojo/_base/declare','dojo/_base/lang','dojo/_base/event','dijit/Dialog', 2 'dijit/_WidgetsInTemplateMixin','../auth', 'dojo/text!./ LoginDialog.html',2 'dijit/_WidgetsInTemplateMixin','../auth', 'dojo/text!./templates/LoginDialog.html', 3 3 '../content','dijit/form/Form','dijit/form/Button','dijit/form/TextBox'], 4 4 function (declare, lang, event, Dialog, _WidgetsInTemplateMixin, auth, template, content) { -
Dev/branches/rest-dojo-ui/client/rft/ui/QuestionWidget.js
r281 r288 1 require(['dojo/_base/declare','dijit/_WidgetBase','dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin','dojo/text!rft/ui/QuestionWidget.html','dijit/form/TextBox'], 2 function(declare,_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin,templateString,TextBox){ 3 declare('rft.ui.QuestionWidget',[_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin],{ 1 define(['dojo/_base/declare','dojo/dom-construct','dijit/_WidgetBase', 2 'dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin', 3 'dojo/text!./templates/QuestionWidget.html','dijit/form/TextBox', 4 'dijit/form/Textarea','./MultipleChoiceWidget'], 5 function(declare,domConstruct,_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin,templateString,TextBox,Textarea,MultipleChoiceWidget){ 6 return declare('rft.ui.QuestionWidget',[_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin],{ 4 7 templateString: templateString, 5 8 mode: 'view', // view || edit 6 type: 'string', 7 _w: null, 9 name: '', 10 _type: null, 11 _widgetCache: null, 12 constructor: function() { 13 this.inherited(arguments); 14 this._widgetCache = {}; 15 }, 8 16 postCreate: function() { 9 this. _setType(this.type);17 this.typeSelector.set('disabled', this.mode == 'edit'); 10 18 }, 11 _setType: function(type) { 12 if ( !this._w || this.type != type ) { 13 if ( this._w ) { 14 this._w.destroy(); 15 this._w = null; 16 } 17 this.type = type; 18 switch(type) { 19 case 'string': 20 this._getStringWidget().placeAt(this.typeDetails); 21 break; 22 case 'text': 23 break; 24 case 'multipleChoice': 25 break; 26 } 27 } 28 }, 29 _getStringWidget: function() { 30 if ( !this._stringWidget ) { 31 this._stringWidget = new TextBox({ 32 name: 'answers', 33 disabled: this.mode == 'view' 34 }); 35 } 36 return this._stringWidget; 19 _setValueAttr: function(value) { 20 value.type && this._onTypeChange(value.type); 21 this.ourForm.set('value',value); 37 22 }, 38 23 _getValueAttr: function() { 39 24 return this.ourForm.get('value'); 40 25 }, 41 _setValueAttr: function(value) { 42 return this.ourForm.set('value',value); 26 _onTypeChange: function(type) { 27 if ( this._type == type ) return; 28 this._type = type; 29 domConstruct.empty(this.typeDetails); 30 var widget = this._getTypeWidget(type); 31 widget && widget.placeAt(this.typeDetails,'only'); 32 }, 33 _getTypeWidget: function(type) { 34 var widget = this._widgetCache[type]; 35 if (!widget) { 36 switch(type) { 37 case 'string': 38 widget = new TextBox({ 39 name: 'answers', 40 disabled: this.mode == 'view' 41 }); 42 break; 43 case 'text': 44 widget = new Textarea({ 45 name: 'answers', 46 disabled: this.mode == 'view', 47 style: 'min-height: 120px' 48 }); 49 break; 50 case 'singleChoice': 51 case 'multipleChoice': 52 widget = new MultipleChoiceWidget({ 53 name: 'answers', 54 mode: this.mode, 55 allowMultiple: type == 'multipleChoice' 56 }); 57 break; 58 } 59 this._widgetCache[type] = widget; 60 } 61 return widget; 43 62 } 44 63 }); -
Dev/branches/rest-dojo-ui/client/rft/ui/TitleGroup.js
r281 r288 1 require(['dojo/_base/declare','dojo/_base/query','dijit/registry','dojox/widget/TitleGroup'],function(declare,query,registry,TitleGroup){ 2 declare('rft.ui.TitleGroup',[TitleGroup],{ 3 getChildren: function() { 4 return query("> .dijitTitlePane", this.domNode) 5 .map(function(node){ 6 return registry.byNode(node); 7 }); 8 } 1 require(['dojo/_base/declare','dojo/_base/query','dijit/registry','dojox/widget/TitleGroup'], 2 function(declare,query,registry,TitleGroup){ 3 return declare('rft.ui.TitleGroup',[TitleGroup],{ 4 getChildren: function() { 5 return query("> .dijitTitlePane", this.domNode) 6 .map(function(node){ 7 return registry.byNode(node); 8 }); 9 } 10 }); 9 11 }); 10 }); -
Dev/branches/rest-dojo-ui/client/rft/ui/_Page.js
r274 r288 1 define(['dojo/_base/declare','dojo/_base/lang','dojo/_base/array','dojo/parser','dojo/query','dojo/dom-attr','dojo/_base/connect','dijit','dijit/_WidgetBase','dijit/_Container','dijit/_Contained'], 1 define(['dojo/_base/declare','dojo/_base/lang','dojo/_base/array','dojo/parser', 2 'dojo/query','dojo/dom-attr','dojo/_base/connect','dijit','dijit/_WidgetBase', 3 'dijit/_Container','dijit/_Contained'], 2 4 function(declare,lang,array,parser,query,attr,connect,dijit,_WidgetBase,_Container,_Contained){ 3 5 return declare('rft.ui._Page',[_WidgetBase],{ -
Dev/branches/rest-dojo-ui/client/rft/ui/templates/QuestionWidget.html
r281 r288 1 1 <div> 2 2 <form data-dojo-type="dijit.form.Form" data-dojo-attach-point="ourForm"> 3 <select data-dojo-type="dijit.form.Select" data-dojo-attach-point="typeSelector" name="type"> 4 <option value="string" selected>String</option> 5 <option value="text">Text</option> 6 <option value="multipleChoice">Multiple choice</option> 7 </select> 8 <div data-dojo-attach-point="typeDetails"> 9 </div> 3 <fieldset> 4 <input data-dojo-type="dijit.form.TextBox" name="uid" type="text" class="dijitHidden" /> 5 <label for="code" class="loginLabel">Code</label> 6 <input data-dojo-type="dijit.form.TextBox" name="code" type="text" class="loginInput" /> 7 <label for="question" class="loginLabel">Title</label> 8 <input data-dojo-type="dijit.form.TextBox" name="title" type="text" class="loginInput" /> 9 <label for="question" class="loginLabel">Description</label> 10 <input data-dojo-type="dijit.form.Textarea" name="description" type="text" class="loginInput"/> 11 <label for="category" class="loginLabel">Category</label> 12 <input data-dojo-type="dijit.form.TextBox" name="category" type="text" class="loginInput" /> 13 </fieldset> 14 <fieldset> 15 <select data-dojo-type="dijit.form.Select" data-dojo-attach-point="typeSelector" data-dojo-attach-event="onChange:_onTypeChange" name="type"> 16 <option value="string" selected>String</option> 17 <option value="text">Text</option> 18 <option value="singleChoice">Single choice</option> 19 <option value="multipleChoice">Multiple choice</option> 20 </select> 21 <div data-dojo-attach-point="typeDetails"></div> 22 </fieldset> 10 23 </form> 11 24 </div>
Note: See TracChangeset
for help on using the changeset viewer.