not really known
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

118 lines
3.7 KiB

define(["sugar-web/graphics/palette"], function (palette) {
'use strict';
var sizepalette = {};
sizepalette.SizePalette = function (game, invoker, primaryText, menuData) {
console.log(game);
console.log(invoker);
palette.Palette.call(this, invoker, primaryText);
var div = document.createElement('div');
var fourbutton = document.createElement('button');
fourbutton.className = 'toolbutton';
fourbutton.setAttribute('id','four-button');
fourbutton.setAttribute('data-l10n-id','four-button');
fourbutton.setAttribute('title','4x4 grid');
fourbutton.onclick = function() {
that.setSize(4);
}
var fivebutton = document.createElement('button');
fivebutton.className = 'toolbutton';
fivebutton.setAttribute('id','five-button');
fivebutton.setAttribute('data-l10n-id','five-button');
fivebutton.setAttribute('title','5x5 grid');
fivebutton.onclick = function() {
that.setSize(5);
}
var sixbutton = document.createElement('button');
sixbutton.className = 'toolbutton';
sixbutton.setAttribute('id','six-button');
sixbutton.setAttribute('data-l10n-id','six-button');
sixbutton.setAttribute('title','6x6 grid');
sixbutton.onclick = function() {
that.setSize(6);
}
var sevenbutton = document.createElement('button');
sevenbutton.className = 'toolbutton';
sevenbutton.setAttribute('id','seven-button');
sevenbutton.setAttribute('data-l10n-id','seven-button');
sevenbutton.setAttribute('title','7x7 grid');
sevenbutton.onclick = function() {
that.setSize(7);
}
this.setSize = function(state) {
that.popDown();
g.setSize(state);
that.setUsed();
}
this.resetBackgroundCols = function(){
fourbutton.style.backgroundColor = "#C0C0C0";
fivebutton.style.backgroundColor = "#C0C0C0";
sixbutton.style.backgroundColor = "#C0C0C0";
sevenbutton.style.backgroundColor = "#C0C0C0";
}
this.setUsed = function(){
this.resetBackgroundCols();
var sizebutton = document.getElementById("size-button");
//TODO: This is a hack - more palettes will break it.
var sizepalettebutton = document.getElementsByClassName("palette-invoker")[1];
switch(game.startgridwidth) {
case 4:
sizebutton.style.backgroundImage = "url(icons/4x4.svg)";
sizepalettebutton.style.backgroundImage = "url(icons/4x4.svg)";
fourbutton.style.backgroundColor = "#808080";
break;
case 5:
sizebutton.style.backgroundImage = "url(icons/5x5.svg)";
sizepalettebutton.style.backgroundImage = "url(icons/5x5.svg)";
fivebutton.style.backgroundColor = "#808080";
break;
case 6:
sizebutton.style.backgroundImage = "url(icons/6x6.svg)";
sizepalettebutton.style.backgroundImage = "url(icons/6x6.svg)";
sixbutton.style.backgroundColor = "#808080";
break;
case 7:
sizebutton.style.backgroundImage = "url(icons/7x7.svg)";
sizepalettebutton.style.backgroundImage = "url(icons/7x7.svg)";
sevenbutton.style.backgroundColor = "#808080";
break;
}
}
div.appendChild(fourbutton);
div.appendChild(fivebutton);
div.appendChild(sixbutton);
div.appendChild(sevenbutton);
this.setContent([div]);
var that = this;
var g = game;
};
var addEventListener = function (type, listener, useCapture) {
return this.getPalette().addEventListener(type, listener, useCapture);
};
sizepalette.SizePalette.prototype =
Object.create(palette.Palette.prototype, {
addEventListener: {
value: addEventListener,
enumerable: true,
configurable: true,
writable: true
}
});
sizepalette.SizePalette.prototype.setShared = function(state) {
this.setShared(state);
}
return sizepalette;
});