Add non-working menu buttons
This commit is contained in:
parent
435b24cb6a
commit
6223b35536
6 changed files with 43 additions and 9 deletions
|
@ -1,10 +1,11 @@
|
|||
import {canvas, context} from './index.mjs';
|
||||
|
||||
export function text(string, x, y,
|
||||
{font = '52pt Arial', align = 'left', valign = 'top'}) {
|
||||
{font = '52pt Arial', align = 'left', valign = 'top', color = null}) {
|
||||
context.textAlign = align;
|
||||
context.textBaseline = valign;
|
||||
context.fillStyle = color === null ? context.fillStyle : color;
|
||||
context.font = font;
|
||||
|
||||
|
||||
context.fillText(string, x, y);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
import {canvas, context} from './index.mjs';
|
||||
import * as gui from '../gui/index.mjs';
|
||||
import * as draw from './draw.mjs';
|
||||
|
||||
export function render() {
|
||||
renderElement(gui.root);
|
||||
|
@ -10,6 +11,7 @@ function renderElement(element) {
|
|||
if (element.options.draw) {
|
||||
if (element.type == 'frame') renderFrame(element);
|
||||
if (element.type == 'image') renderImage(element);
|
||||
if (element.type == 'button') renderButton(element);
|
||||
}
|
||||
element.children.forEach(renderElement);
|
||||
}
|
||||
|
@ -22,3 +24,16 @@ function renderFrame(element) {
|
|||
function renderImage(element) {
|
||||
context.drawImage(element.image, ...element.shape);
|
||||
}
|
||||
|
||||
function renderButton(element) {
|
||||
context.fillStyle = '#983';
|
||||
context.fillRect(...element.shape);
|
||||
context.strokeStyle = '#541';
|
||||
context.strokeWidth = 4;
|
||||
context.strokeRect(...element.shape);
|
||||
context.textAlign = 'center';
|
||||
context.textBaseline = 'middle';
|
||||
context.fillStyle = '#fff';
|
||||
context.font = '12pt Consolas';
|
||||
context.fillText(element.text, ...element.center);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue