mirror of
https://github.com/google/blockly.git
synced 2026-01-16 05:17:09 +01:00
Using 123 as a better indicator to the user this block can represent any number, and the user should replace this value with their own desired number.
346 lines
12 KiB
HTML
346 lines
12 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Blockly Demo: Toolbox</title>
|
|
<script src="../../blockly_compressed.js"></script>
|
|
<script src="../../blocks_compressed.js"></script>
|
|
<script src="../../msg/js/en.js"></script>
|
|
<style>
|
|
body {
|
|
background-color: #fff;
|
|
font-family: sans-serif;
|
|
}
|
|
h1 {
|
|
font-weight: normal;
|
|
font-size: 140%;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<h1><a href="https://developers.google.com/blockly/">Blockly</a> >
|
|
<a href="../index.html">Demos</a> > Toolbox</h1>
|
|
|
|
<p>This is a demo of a complex category structure for the toolbox.</p>
|
|
|
|
<p>→ More info on the <a href="https://developers.google.com/blockly/guides/configure/web/toolbox">Toolbox</a>…</p>
|
|
|
|
<div id="blocklyDiv" style="height: 600px; width: 800px;"></div>
|
|
|
|
<xml id="toolbox" style="display: none">
|
|
<category name="Logic">
|
|
<category name="If">
|
|
<block type="controls_if"></block>
|
|
<block type="controls_if">
|
|
<mutation else="1"></mutation>
|
|
</block>
|
|
<block type="controls_if">
|
|
<mutation elseif="1" else="1"></mutation>
|
|
</block>
|
|
</category>
|
|
<category name="Boolean">
|
|
<block type="logic_compare"></block>
|
|
<block type="logic_operation"></block>
|
|
<block type="logic_negate"></block>
|
|
<block type="logic_boolean"></block>
|
|
<block type="logic_null"></block>
|
|
<block type="logic_ternary"></block>
|
|
</category>
|
|
</category>
|
|
<category name="Loops">
|
|
<block type="controls_repeat_ext">
|
|
<value name="TIMES">
|
|
<block type="math_number">
|
|
<field name="NUM">10</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
<block type="controls_whileUntil"></block>
|
|
<block type="controls_for">
|
|
<field name="VAR">i</field>
|
|
<value name="FROM">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="math_number">
|
|
<field name="NUM">10</field>
|
|
</block>
|
|
</value>
|
|
<value name="BY">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
<block type="controls_forEach"></block>
|
|
<block type="controls_flow_statements"></block>
|
|
</category>
|
|
<category name="Math">
|
|
<block type="math_number">
|
|
<field name="NUM">123</field>
|
|
</block>
|
|
<block type="math_arithmetic"></block>
|
|
<block type="math_single"></block>
|
|
<block type="math_trig"></block>
|
|
<block type="math_constant"></block>
|
|
<block type="math_number_property"></block>
|
|
<block type="math_round"></block>
|
|
<block type="math_on_list"></block>
|
|
<block type="math_modulo"></block>
|
|
<block type="math_constrain">
|
|
<value name="LOW">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<value name="HIGH">
|
|
<block type="math_number">
|
|
<field name="NUM">100</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
<block type="math_random_int">
|
|
<value name="FROM">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="math_number">
|
|
<field name="NUM">100</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
<block type="math_random_float"></block>
|
|
</category>
|
|
<category name="Lists">
|
|
<block type="lists_create_empty"></block>
|
|
<block type="lists_create_with"></block>
|
|
<block type="lists_repeat">
|
|
<value name="NUM">
|
|
<block type="math_number">
|
|
<field name="NUM">5</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
<block type="lists_length"></block>
|
|
<block type="lists_isEmpty"></block>
|
|
<block type="lists_indexOf"></block>
|
|
<block type="lists_getIndex"></block>
|
|
<block type="lists_setIndex"></block>
|
|
</category>
|
|
<category name="Variables" custom="VARIABLE"></category>
|
|
<category name="Functions" custom="PROCEDURE"></category>
|
|
<sep></sep>
|
|
<category name="Library" expanded="true">
|
|
<category name="Randomize">
|
|
<block type="procedures_defnoreturn">
|
|
<mutation>
|
|
<arg name="list"></arg>
|
|
</mutation>
|
|
<field name="NAME">randomize</field>
|
|
<statement name="STACK">
|
|
<block type="controls_for" inline="true">
|
|
<field name="VAR">x</field>
|
|
<value name="FROM">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="lists_length" inline="false">
|
|
<value name="VALUE">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</value>
|
|
<value name="BY">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<statement name="DO">
|
|
<block type="variables_set" inline="false">
|
|
<field name="VAR">y</field>
|
|
<value name="VALUE">
|
|
<block type="math_random_int" inline="true">
|
|
<value name="FROM">
|
|
<block type="math_number">
|
|
<field name="NUM">1</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="lists_length" inline="false">
|
|
<value name="VALUE">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="variables_set" inline="false">
|
|
<field name="VAR">temp</field>
|
|
<value name="VALUE">
|
|
<block type="lists_getIndex" inline="true">
|
|
<mutation statement="false" at="true"></mutation>
|
|
<field name="MODE">GET</field>
|
|
<field name="WHERE">FROM_START</field>
|
|
<value name="AT">
|
|
<block type="variables_get">
|
|
<field name="VAR">y</field>
|
|
</block>
|
|
</value>
|
|
<value name="VALUE">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="lists_setIndex" inline="false">
|
|
<value name="AT">
|
|
<block type="variables_get">
|
|
<field name="VAR">y</field>
|
|
</block>
|
|
</value>
|
|
<value name="LIST">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="lists_getIndex" inline="true">
|
|
<mutation statement="false" at="true"></mutation>
|
|
<field name="MODE">GET</field>
|
|
<field name="WHERE">FROM_START</field>
|
|
<value name="AT">
|
|
<block type="variables_get">
|
|
<field name="VAR">x</field>
|
|
</block>
|
|
</value>
|
|
<value name="VALUE">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="lists_setIndex" inline="false">
|
|
<value name="AT">
|
|
<block type="variables_get">
|
|
<field name="VAR">x</field>
|
|
</block>
|
|
</value>
|
|
<value name="LIST">
|
|
<block type="variables_get">
|
|
<field name="VAR">list</field>
|
|
</block>
|
|
</value>
|
|
<value name="TO">
|
|
<block type="variables_get">
|
|
<field name="VAR">temp</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</statement>
|
|
</block>
|
|
</statement>
|
|
</block>
|
|
</category>
|
|
<category name="Jabberwocky">
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT">'Twas brillig, and the slithy toves</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT"> Did gyre and gimble in the wabe:</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT">All mimsy were the borogroves,</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT"> And the mome raths outgrabe.</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT">"Beware the Jabberwock, my son!</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT"> The jaws that bite, the claws that catch!</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT">Beware the Jubjub bird, and shun</field>
|
|
</block>
|
|
</value>
|
|
<next>
|
|
<block type="text_print">
|
|
<value name="TEXT">
|
|
<block type="text">
|
|
<field name="TEXT"> The frumious Bandersnatch!"</field>
|
|
</block>
|
|
</value>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</next>
|
|
</block>
|
|
</category>
|
|
</category>
|
|
</xml>
|
|
|
|
<script>
|
|
var demoWorkspace = Blockly.inject('blocklyDiv',
|
|
{media: '../../media/',
|
|
toolbox: document.getElementById('toolbox')});
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|