-qwebirc.config.CHECK_BOX = 1;
-qwebirc.config.TEXT_BOX = 2;
-qwebirc.config.RADIO_BUTTONS = 3;
-
qwebirc.ui.supportsFocus = function() {
var ua = navigator.userAgent;
if(!$defined(ua))
enabled: qwebirc.ui.supportsFocus
}],
[9, "NICK_COLOURS", "Automatically colour nicknames", false],
- [10, "HIDE_JOINPARTS", "Hide JOINS/PARTS/QUITS", false]
+ [10, "HIDE_JOINPARTS", "Hide JOINS/PARTS/QUITS", false],
+ [11, "STYLE_HUE", "Adjust user interface hue", function() {
+ return {class_: qwebirc.config.HueOption, default_: 210};
+ }, {
+ get: function(value, ui) {
+ ui.setModifiableStylesheetValues(value, 0, 0);
+ }
+ }]
];
qwebirc.config.DefaultOptions = null;
return;
t.pass(x, this)();
+ },
+ cancel: function() {
}
});
}
});
+qwebirc.config.HueInput = new Class({
+ Extends: qwebirc.config.Input,
+ render: function() {
+ var i = new Element("div");
+ i.addClass("qwebirc-optionspane");
+ i.addClass("hue-slider");
+
+ this.parentElement.appendChild(i);
+
+ var k = new Element("div");
+ k.addClass("knob");
+ i.appendChild(k);
+
+ var slider = new Slider(i, k, {steps: 36, range: [0, 369], wheel: true});
+ slider.set(this.value);
+ this.startValue = this.value;
+
+ slider.addEvent("change", function(step) {
+ this.value = step;
+ this.get();
+ }.bind(this));
+ this.mainElement = i;
+
+ if(!this.enabled)
+ slider.detach();
+
+ this.parent();
+ },
+ get: function() {
+ return this.parent(this.value);
+ },
+ cancel: function() {
+ this.value = this.startValue;
+ this.get();
+ }
+});
+
qwebirc.config.CheckInput = new Class({
Extends: qwebirc.config.Input,
render: function() {
setSavedValue: function(x) {
if(this.enabled)
this.value = x;
- }
+ },
});
qwebirc.config.RadioOption = new Class({
Element: qwebirc.config.CheckInput
});
+qwebirc.config.HueOption = new Class({
+ Extends: qwebirc.config.Option,
+ Element: qwebirc.config.HueInput
+});
+
qwebirc.ui.Options = new Class({
initialize: function(ui) {
if(!$defined(qwebirc.config.DefaultOptions))
var type;
if(stype == "boolean") {
type = qwebirc.config.CheckOption;
+ } else if(stype == "function") {
+ var options = default_();
+ type = options.class_;
+ default_ = options.default_;
} else {
type = qwebirc.config.TextOption;
}
var cancel = qwebirc.util.createInput("submit", cellb);
cancel.value = "Cancel";
cancel.addEvent("click", function() {
+ this.cancel();
this.fireEvent("close");
}.bind(this));
},
this.optionObject.setValue(option, box.get());
}.bind(this));
this.optionObject.flush();
+ },
+ cancel: function() {
+ this.boxList.forEach(function(x) {
+ x[1].cancel();
+ }.bind(this));
}
});