Ignore:
Timestamp:
02/21/12 13:03:21 (13 years ago)
Author:
hendrikvanantwerpen
Message:
  • [Server] Added PUT support to API.
  • [Client] Extended questions page with Accordion and list with actions on each row.
File:
1 moved

Legend:

Unmodified
Added
Removed
  • Dev/branches/rest-dojo-ui/client/rft/ui/LineWithActionsWidget.js

    r274 r275  
    1 define(['dojo/_base/declare','dijit/_WidgetBase','dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin','dojo/text!rft/ui/QuestionWidget.html'],
    2     function(declare,_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin,templateString){
    3         return declare('rft.ui.QuestionWidget',[_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin],{
     1define(['dojo/_base/declare','dojo/_base/lang','dijit/form/Button','dijit/_WidgetBase','dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin','dojo/text!rft/ui/LineWithActionsWidget.html'],
     2    function(declare,lang,Button,_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin,templateString){
     3        return declare('rft.ui.LineWithActionsWidget',[_WidgetBase,_TemplatedMixin,_WidgetsInTemplateMixin],{
    44            templateString: templateString,
    5             question: null,
     5            title: '',
     6            userObject: null,
     7            actions: {},
    68            startup: function() {
    7                 if ( this.question ) {
    8                     this.codeField.innerHTML = this.question.code;
    9                     this.titleField.innerHTML = this.question.title;
    10                     this.descriptionField.innerHTML = this.question.description;
     9                this.inherited(arguments);
     10                this._setupActions();
     11                this.refresh();
     12            },
     13            _setupActions: function() {
     14                for (var action in this.actions) {
     15                    new Button({
     16                        label: action,
     17                        onClick: lang.hitch(this,function(){
     18                            this.actions[action](this.userObject);
     19                        })
     20                    }).placeAt(this.actionBar);
    1121                }
     22            },
     23            refresh: function() {
     24                this.titleNode.innerHTML = this.title;
    1225            }
    1326        });
Note: See TracChangeset for help on using the changeset viewer.