JSPM

  • Created
  • Published
  • Downloads 1333
  • Score
    100M100P100Q127337F
  • License Apache 2.0

A Blockly dropdown field with grid layout.

Package Exports

  • @blockly/field-grid-dropdown
  • @blockly/field-grid-dropdown/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@blockly/field-grid-dropdown) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@blockly/field-grid-dropdown Built on Blockly

A Blockly dropdown field with grid layout.

Installation

Yarn

yarn add @blockly/field-grid-dropdown

npm

npm install @blockly/field-grid-dropdown --save

Usage

This field accepts the same parameters as the Blockly.FieldDropdown in Blockly core. The config object bag passed into this field accepts additional optional parameters:

  • "columns" to specify the number of columns in the dropdown field (must be an integer greater than 0). If not provided, the default is 3 columns.
  • "primaryColour" to specify the colour of the dropdown (must be a string CSS colour). If not provided, the dropdown color will match the primary colour of the parent block.
  • "borderColour" to specify the colour of the border of the dropdown (must be a string CSS colour). If not provided, the border colour will match the tertiary colour of the parent block.

JavaScript

import * as Blockly from 'blockly';
import {FieldGridDropdown} from '@blockly/field-grid-dropdown';
Blockly.Blocks["test_field_grid_dropdown"] = {
  init: function () {
    this.appendDummyInput()
      .appendField("grid dropdown: ")
      .appendField(new FieldGridDropdown([
          ["A", "A"],["B", "B"], ["C", "C"],["D", "D"], ["E", "E"], ["F", "F"],
          ["G", "G"], ["H", "H"]]), "FIELDNAME");
  }
};

JSON

import * as Blockly from 'blockly';
import '@blockly/field-grid-dropdown';
Blockly.defineBlocksWithJsonArray([
    {
        "type": "test_field_grid_dropdown",
        "message0": "template: %1",
        "args0": [
            {
                "type": "field_grid_dropdown",
                "name": "FIELDNAME",
                "options": [
                        ["A", "A"],["B", "B"], ["C", "C"],["D", "D"],
                        ["E", "E"], ["F", "F"], ["G", "G"], ["H", "H"]
                ]
            }
        ]
    }]);

License

Apache 2.0