ContextMenu getContextMenu() { if (null != ctxMenu) { return ctxMenu; } ctxMenu = new ContextMenu(); Msg.getList(this, "item.shape") .forEach( item -> { MenuItem menuItem = new MenuItem(item.trim()); menuItem.setOnAction( e -> { GraphicsContext gc = canvas.getGraphicsContext2D(); gc.clearRect(0, 0, CIRCLE_RADIUS, CIRCLE_RADIUS); gc.setFill(Color.TAN); ShapeType.valueOf(menuItem.getText().toUpperCase()).drawWith(gc); }); ctxMenu.getItems().add(menuItem); }); return ctxMenu; }