define(["sugar-web/graphics/palette"], function (palette) { 'use strict'; var abacuspalette = {}; abacuspalette.AbacusPalette = function (game, invoker, primaryText, menuData) { console.log(game); console.log(invoker); palette.Palette.call(this, invoker, primaryText); var div = document.createElement('div'); var decimalbutton = document.createElement('button'); decimalbutton.className = 'toolbutton'; decimalbutton.setAttribute('id','decimal-button'); decimalbutton.setAttribute('title','Decimal'); decimalbutton.onclick = function() { that.setAbacus(0); } var sorobanbutton = document.createElement('button'); sorobanbutton.className = 'toolbutton'; sorobanbutton.setAttribute('id','soroban-button'); sorobanbutton.setAttribute('title','Soroban'); sorobanbutton.onclick = function() { that.setAbacus(1); } var suanpanbutton = document.createElement('button'); suanpanbutton.className = 'toolbutton'; suanpanbutton.setAttribute('id','suanpan-button'); suanpanbutton.setAttribute('title','Suanpan'); suanpanbutton.onclick = function() { that.setAbacus(2); } var nepobutton = document.createElement('button'); nepobutton.className = 'toolbutton'; nepobutton.setAttribute('id','nepo-button'); nepobutton.setAttribute('title','Nepohualtzintzin'); nepobutton.onclick = function() { that.setAbacus(3); } var hexbutton = document.createElement('button'); hexbutton.className = 'toolbutton'; hexbutton.setAttribute('id','hex-button'); hexbutton.setAttribute('title','Hexadecimal'); hexbutton.onclick = function() { that.setAbacus(4); } var binarybutton = document.createElement('button'); binarybutton.className = 'toolbutton'; binarybutton.setAttribute('id','binary-button'); binarybutton.setAttribute('title','Binary'); binarybutton.onclick = function() { that.setAbacus(5); } var schetybutton = document.createElement('button'); schetybutton.className = 'toolbutton'; schetybutton.setAttribute('id','schety-button'); schetybutton.setAttribute('title','Schety'); schetybutton.onclick = function() { that.setAbacus(6); } var fractionsbutton = document.createElement('button'); fractionsbutton.className = 'toolbutton'; fractionsbutton.setAttribute('id','fractions-button'); fractionsbutton.setAttribute('title','Fractions'); fractionsbutton.onclick = function() { that.setAbacus(7); } var caacupebutton = document.createElement('button'); caacupebutton.className = 'toolbutton'; caacupebutton.setAttribute('id','caacupe-button'); caacupebutton.setAttribute('title','Caacupé'); caacupebutton.onclick = function() { that.setAbacus(8); } var rodsbutton = document.createElement('button'); rodsbutton.className = 'toolbutton'; rodsbutton.setAttribute('id','rods-button'); rodsbutton.setAttribute('title','Rods'); rodsbutton.onclick = function() { that.setAbacus(9); } var custombutton = document.createElement('button'); custombutton.className = 'toolbutton'; custombutton.setAttribute('id','custom-button'); custombutton.setAttribute('title','Custom'); custombutton.onclick = function() { that.setAbacus(10); } this.setAbacus = function(state) { that.popDown(); g.initAbacus(state); that.setUsed(); } this.resetBackgroundCols = function(){ decimalbutton.style.backgroundColor = "#C0C0C0"; sorobanbutton.style.backgroundColor = "#C0C0C0"; suanpanbutton.style.backgroundColor = "#C0C0C0"; nepobutton.style.backgroundColor = "#C0C0C0"; hexbutton.style.backgroundColor = "#C0C0C0"; binarybutton.style.backgroundColor = "#C0C0C0"; schetybutton.style.backgroundColor = "#C0C0C0"; fractionsbutton.style.backgroundColor = "#C0C0C0"; caacupebutton.style.backgroundColor = "#C0C0C0"; rodsbutton.style.backgroundColor = "#C0C0C0"; custombutton.style.backgroundColor = "#C0C0C0"; } this.setUsed = function(){ this.resetBackgroundCols(); switch(game.abacustype) { case 0: decimalbutton.style.backgroundColor = "#808080"; break; case 1: sorobanbutton.style.backgroundColor = "#808080"; break; case 2: suanpanbutton.style.backgroundColor = "#808080"; break; case 3: nepobutton.style.backgroundColor = "#808080"; break; case 4: hexbutton.style.backgroundColor = "#808080"; break; case 5: binarybutton.style.backgroundColor = "#808080"; break; case 6: schetybutton.style.backgroundColor = "#808080"; break; case 7: fractionsbutton.style.backgroundColor = "#808080"; break; case 8: caacupebutton.style.backgroundColor = "#808080"; break; case 9: rodsbutton.style.backgroundColor = "#808080"; break; case 10: custombutton.style.backgroundColor = "#808080"; break; } } div.appendChild(decimalbutton); div.appendChild(sorobanbutton); div.appendChild(suanpanbutton); div.appendChild(nepobutton); div.appendChild(hexbutton); div.appendChild(binarybutton); div.appendChild(schetybutton); div.appendChild(fractionsbutton); div.appendChild(caacupebutton); div.appendChild(rodsbutton); div.appendChild(custombutton); this.setContent([div]); var that = this; var g = game; }; var addEventListener = function (type, listener, useCapture) { return this.getPalette().addEventListener(type, listener, useCapture); }; abacuspalette.AbacusPalette.prototype = Object.create(palette.Palette.prototype, { addEventListener: { value: addEventListener, enumerable: true, configurable: true, writable: true } }); abacuspalette.AbacusPalette.prototype.setShared = function(state) { this.setShared(state); } return abacuspalette; });