Refactor out label class

This commit is contained in:
Daniel Perrett 2016-11-17 08:35:30 +00:00
parent 61bf6bb11f
commit 6421872572
4 changed files with 30 additions and 9 deletions

View File

@ -6,6 +6,7 @@ var util = require('slap-util');
var BaseWidget = require('base-widget'); var BaseWidget = require('base-widget');
var Slap = require('./Slap'); var Slap = require('./Slap');
var BaseFindForm = require('./BaseFindForm'); var BaseFindForm = require('./BaseFindForm');
var Label = require('./Label');
FindForm._label = " find (/.*/ for regex): "; FindForm._label = " find (/.*/ for regex): ";
FindForm._regExpRegExp = /^\/(.+)\/(\w*)$/i; FindForm._regExpRegExp = /^\/(.+)\/(\w*)$/i;
@ -19,15 +20,13 @@ function FindForm (opts) {
findField: {left: FindForm._label.length} findField: {left: FindForm._label.length}
}, Slap.global.options.form.find, opts)); }, Slap.global.options.form.find, opts));
self.findLabel = new BaseWidget(_.merge({ self.findLabel = new Label(_.merge({
parent: self, parent: self,
tags: true, tags: true,
content: FindForm._label, content: FindForm._label,
top: 0, top: 0,
height: 1,
left: 0, left: 0,
width: FindForm._label.length, width: FindForm._label.length,
style: self.options.style
}, self.options.findLabel)); }, self.options.findLabel));
} }
FindForm.prototype.__proto__ = BaseFindForm.prototype; FindForm.prototype.__proto__ = BaseFindForm.prototype;

View File

@ -4,6 +4,7 @@ var BaseWidget = require('base-widget');
var Slap = require('./Slap'); var Slap = require('./Slap');
var BaseFindForm = require('./BaseFindForm'); var BaseFindForm = require('./BaseFindForm');
var Label = require('./Label');
GoLineForm._label = " line number: "; GoLineForm._label = " line number: ";
function GoLineForm (opts) { function GoLineForm (opts) {
@ -15,15 +16,13 @@ function GoLineForm (opts) {
findField: {left: GoLineForm._label.length} findField: {left: GoLineForm._label.length}
}, Slap.global.options.form.goLine, opts)); }, Slap.global.options.form.goLine, opts));
self.goLineLabel = new BaseWidget(_.merge({ self.goLineLabel = new Label(_.merge({
parent: self, parent: self,
tags: true, tags: true,
content: GoLineForm._label, content: GoLineForm._label,
top: 0, top: 0,
height: 1,
left: 0, left: 0,
width: GoLineForm._label.length, width: GoLineForm._label.length,
style: self.options.style
}, self.options.goLineLabel)); }, self.options.goLineLabel));
} }
GoLineForm.prototype.__proto__ = BaseFindForm.prototype; GoLineForm.prototype.__proto__ = BaseFindForm.prototype;

24
lib/ui/Label.js Normal file
View File

@ -0,0 +1,24 @@
var blessed = require('blessed');
var _ = require('lodash');
var util = require('slap-util');
var BaseWidget = require('base-widget');
var Slap = require('./Slap');
function Label (opts) {
var self = this;
if (!(self instanceof Label)) return new Label(opts);
opts = _.merge({
height: 1
}, Slap.global.options.label, opts);
BaseWidget.blessed.Text.call(self, opts);
BaseWidget.call(self, opts);
}
Label.prototype.__proto__ = BaseWidget.blessed.Text.prototype;
module.exports = Label;

View File

@ -4,6 +4,7 @@ var BaseWidget = require('base-widget');
var Field = require('editor-widget').Field; var Field = require('editor-widget').Field;
var Slap = require('./Slap'); var Slap = require('./Slap');
var BaseForm = require('./BaseForm'); var BaseForm = require('./BaseForm');
var Label = require('./Label');
SaveAsForm._label = " save as: "; SaveAsForm._label = " save as: ";
function SaveAsForm (opts) { function SaveAsForm (opts) {
@ -15,15 +16,13 @@ function SaveAsForm (opts) {
field: {left: SaveAsForm._label.length} field: {left: SaveAsForm._label.length}
}, Slap.global.options.form.saveAs, opts)); }, Slap.global.options.form.saveAs, opts));
self.saveAsLabel = new BaseWidget(_.merge({ self.saveAsLabel = new Label(_.merge({
parent: self, parent: self,
tags: true, tags: true,
content: SaveAsForm._label, content: SaveAsForm._label,
top: 0, top: 0,
height: 1,
left: 0, left: 0,
width: SaveAsForm._label.length, width: SaveAsForm._label.length,
style: self.options.style
}, self.options.saveAsLabel)); }, self.options.saveAsLabel));
self.pathField = new Field(_.merge({ self.pathField = new Field(_.merge({