aboutsummaryrefslogtreecommitdiff
path: root/node_modules/montage/ui/check-input.js
blob: 6338c42c877661b2ec91a007eb4178f98a390a54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/* <copyright>
 This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
 No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
 (c) Copyright 2011 Motorola Mobility, Inc.  All Rights Reserved.
 </copyright> */

var Montage = require("montage").Montage,
    Component = require("ui/component").Component,
    NativeControl = require("ui/native-control").NativeControl;

var CheckInput = exports.CheckInput =  Montage.create(NativeControl, {

    // Callbacks
    draw: {
        value: function() {
            // Call super
            Object.getPrototypeOf(CheckInput).draw.call(this);
            this._element.setAttribute("aria-checked", this._checked);
        }
    },

    /**
        Description TODO
        @function
    */
    prepareForDraw: {
        enumerable: false,
        value: function() {
            this.element.addEventListener('change', this);
        }
    },

/**
    Description TODO
    @function
    @param {Event Handler} event TODO
    */
    handleChange: {
        enumerable: false,
        value: function(event) {
            Object.getPropertyDescriptor(this, "checked").set.call(this,
                this.element.checked, true);
            this._dispatchActionEvent();
        }
    }
});