blob: dc7b0c496a2bc4ecbdd544b6dcaa17a2ec3c6681 [file] [log] [blame]
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
cr.define('options', function() {
//////////////////////////////////////////////////////////////////////////////
// ContentSettingsRadio class:
// Define a constructor that uses an input element as its underlying element.
var ContentSettingsRadio = cr.ui.define('input');
ContentSettingsRadio.prototype = {
__proto__: HTMLInputElement.prototype,
/**
* Initialization function for the cr.ui framework.
*/
decorate: function() {
this.type = 'radio';
var self = this;
this.addEventListener('change',
function(e) {
chrome.send('setContentFilter', [this.name, this.value]);
});
},
};
/**
* Whether the content setting is controlled by something else than the user's
* settings (either 'policy' or 'extension').
* @type {string}
*/
cr.defineProperty(ContentSettingsRadio, 'controlledBy', cr.PropertyKind.ATTR);
//////////////////////////////////////////////////////////////////////////////
// HandlersEnabledRadio class:
// Define a constructor that uses an input element as its underlying element.
var HandlersEnabledRadio = cr.ui.define('input');
HandlersEnabledRadio.prototype = {
__proto__: HTMLInputElement.prototype,
/**
* Initialization function for the cr.ui framework.
*/
decorate: function() {
this.type = 'radio';
var self = this;
this.addEventListener('change',
function(e) {
chrome.send('setHandlersEnabled', [this.value == 'allow']);
});
},
};
// Export
return {
ContentSettingsRadio: ContentSettingsRadio,
HandlersEnabledRadio: HandlersEnabledRadio
};
});