feat: 초기 프로젝트 설정 및 룰.md 파일 추가
This commit is contained in:
62
api.hyungi.net/node_modules/blessed/lib/widgets/button.js
generated
vendored
Normal file
62
api.hyungi.net/node_modules/blessed/lib/widgets/button.js
generated
vendored
Normal file
@@ -0,0 +1,62 @@
|
||||
/**
|
||||
* button.js - button element for blessed
|
||||
* Copyright (c) 2013-2015, Christopher Jeffrey and contributors (MIT License).
|
||||
* https://github.com/chjj/blessed
|
||||
*/
|
||||
|
||||
/**
|
||||
* Modules
|
||||
*/
|
||||
|
||||
var Node = require('./node');
|
||||
var Input = require('./input');
|
||||
|
||||
/**
|
||||
* Button
|
||||
*/
|
||||
|
||||
function Button(options) {
|
||||
var self = this;
|
||||
|
||||
if (!(this instanceof Node)) {
|
||||
return new Button(options);
|
||||
}
|
||||
|
||||
options = options || {};
|
||||
|
||||
if (options.autoFocus == null) {
|
||||
options.autoFocus = false;
|
||||
}
|
||||
|
||||
Input.call(this, options);
|
||||
|
||||
this.on('keypress', function(ch, key) {
|
||||
if (key.name === 'enter' || key.name === 'space') {
|
||||
return self.press();
|
||||
}
|
||||
});
|
||||
|
||||
if (this.options.mouse) {
|
||||
this.on('click', function() {
|
||||
return self.press();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Button.prototype.__proto__ = Input.prototype;
|
||||
|
||||
Button.prototype.type = 'button';
|
||||
|
||||
Button.prototype.press = function() {
|
||||
this.focus();
|
||||
this.value = true;
|
||||
var result = this.emit('press');
|
||||
delete this.value;
|
||||
return result;
|
||||
};
|
||||
|
||||
/**
|
||||
* Expose
|
||||
*/
|
||||
|
||||
module.exports = Button;
|
||||
Reference in New Issue
Block a user