},
reset: function() {
return this.set({
- buffer: "0"
+ buffer: "0",
+ mode: "quantity"
});
},
updateTarget: function() {
this.state = options.state;
},
start: function() {
+ this.state.bind('change:mode', this.changedMode, this);
+ this.changedMode();
this.$element.find('button#numpad-backspace').click(_.bind(this.clickDeleteLastChar, this));
this.$element.find('button#numpad-minus').click(_.bind(this.clickSwitchSign, this));
this.$element.find('button.number-char').click(_.bind(this.clickAppendNewChar, this));
return this.state.appendNewChar(newChar);
},
clickChangeMode: function(event) {
- var newMode;
- $('.selected-mode').removeClass('selected-mode');
- $(event.currentTarget).addClass('selected-mode');
- newMode = event.currentTarget.attributes['data-mode'].nodeValue;
+ var newMode = event.currentTarget.attributes['data-mode'].nodeValue;
return this.state.changeMode(newMode);
- }
+ },
+ changedMode: function() {
+ var mode = this.state.get('mode');
+ $('.selected-mode').removeClass('selected-mode');
+ $(_.str.sprintf('.mode-button[data-mode="%s"]', mode), this.$element).addClass('selected-mode');
+ },
});
/*
Gives access to the payment methods (aka. 'cash registers')
<button class="input-button number-char">1</button>
<button class="input-button number-char">2</button>
<button class="input-button number-char">3</button>
- <button class="mode-button selected-mode" data-mode='quantity'>Qty</button>
+ <button class="mode-button" data-mode='quantity'>Qty</button>
<br />
<button class="input-button number-char">4</button>
<button class="input-button number-char">5</button>