Mercurial > hg > forks > multipaint-js
changeset 208:c6c1dd769566
Some work towards user-selectable alternate palettes in the launcher.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 29 Aug 2018 15:17:55 +0300 |
parents | 3b0864bf7436 |
children | edc628a79dd3 |
files | files.pde mpui.js style.css |
diffstat | 3 files changed, 46 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/files.pde Wed Aug 29 15:16:54 2018 +0300 +++ b/files.pde Wed Aug 29 15:17:55 2018 +0300 @@ -230,6 +230,7 @@ } +// XXX TODO: Make this support other platforms than C64 boolean mpLoadPalette(String fname) { if (g_map[13] != C64)
--- a/mpui.js Wed Aug 29 15:16:54 2018 +0300 +++ b/mpui.js Wed Aug 29 15:17:55 2018 +0300 @@ -5,28 +5,37 @@ var mpMachine = 0, mpUIScale, mpUIForcedWidth, mpUIForcedHeight; var mpURL; +// Machine ID, Name/desc, Alt.palette array index (-1 if none) var mpMachines = [ - [ 0, "C64 hires" , ], - [ 10, "C64 multicolor" , ], - [ 6, "ZX Spectrum" , ], - [ 5, "MSX1 mode 2" , ], - [ 9, "Plus4 hires" , ], - [ 19, "Plus4 multicolor" , ], - [ 2, "Amstrad CPC mode 0" , ], + [ 0, "C64 hires" , 0 ], + [ 10, "C64 multicolor" , 0 ], + [ 6, "ZX Spectrum" , -1 ], + [ 5, "MSX1 mode 2" , -1 ], + [ 9, "Plus4 hires" , -1 ], + [ 19, "Plus4 multicolor" , -1 ], + [ 2, "Amstrad CPC mode 0" , -1 ], - [ -1, "Experimental/unsupported modes below" , ], + [ -1, "Experimental/unsupported modes below" , -1 ], - [ 32, "C64 no limit (buggy)" , ], - [ 20, "C64 FLI hires" , ], - [ 21, "C64 FLI multicolor" , ], - [ 7, "Timex" , ], - [ 8, "JR200" , ], - [ 99, "BK-0010" , ], -// [ , "" , false ], + [ 32, "C64 no limit (buggy)", 0 ], + [ 20, "C64 FLI hires" , 0 ], + [ 21, "C64 FLI multicolor" , 0 ], + [ 7, "Timex" , -1 ], + [ 8, "JR200" , -1 ], + [ 99, "BK-0010" , -1 ], +// [ , "" , -1 ], ]; +// Alternative palettes array +var mpPalettes = +[ + [ "pepto.act", "colodore.act", ], +]; + + +// UI dimensions list (first is always "default") var mpUIDimensions = [ [ -1, -1 ], @@ -36,11 +45,13 @@ ]; +// UI scaling factors, 2 is default and thus first var mpUIScales = [ 2, 3, 1 ]; + var mpSources = [ "buffers.pde", @@ -103,6 +114,13 @@ } +function stGetSelIndex(vname) +{ + var velem = stGE(vname); + return velem ? velem.selectedIndex : 0; +} + + function stGetSelValue(velem, vdef) { if (velem) @@ -142,20 +160,23 @@ mpUI.appendChild(mdiv); mobj = stCE("p"); - mobj.textContent = "Target platform / mode:"; + mobj.textContent = "Target machine / mode:"; mdiv.appendChild(mobj); - mdiv.appendChild(stCreateSelect("machineID", mpMachines, - function (vn, vopt, val) { + mobj = stCreateSelect("machineID", mpMachines, + function (vn, vopt, val) + { if (val[0] < 0) vopt.disabled = true; else vopt.value = val[0]; vopt.textContent = val[1]; - })); + }); + stAddEventOb(mobj.name, mobj, "change", mpMachineChanged); + mdiv.appendChild(mobj); mobj = stCE("button", "selectID"); mobj.textContent = "RUN"; stAddEventOb(mobj.name, mobj, "click", mpLauncherDone);