mirror of
https://github.com/google/blockly.git
synced 2026-01-09 10:00:09 +01:00
Manual commit
This commit is contained in:
@@ -30,7 +30,7 @@ goog.require('Blockly.JavaScript');
|
||||
|
||||
Blockly.JavaScript['colour_picker'] = function(block) {
|
||||
// Colour picker.
|
||||
var code = '\'' + block.getTitleValue('COLOUR') + '\'';
|
||||
var code = '\'' + block.getFieldValue('COLOUR') + '\'';
|
||||
return [code, Blockly.JavaScript.ORDER_ATOMIC];
|
||||
};
|
||||
|
||||
|
||||
@@ -86,7 +86,7 @@ Blockly.JavaScript['lists_isEmpty'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['lists_indexOf'] = function(block) {
|
||||
// Find an item in the list.
|
||||
var operator = block.getTitleValue('END') == 'FIRST' ?
|
||||
var operator = block.getFieldValue('END') == 'FIRST' ?
|
||||
'indexOf' : 'lastIndexOf';
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'FIND',
|
||||
Blockly.JavaScript.ORDER_NONE) || '\'\'';
|
||||
@@ -99,8 +99,8 @@ Blockly.JavaScript['lists_indexOf'] = function(block) {
|
||||
Blockly.JavaScript['lists_getIndex'] = function(block) {
|
||||
// Get element at index.
|
||||
// Note: Until January 2013 this block did not have MODE or WHERE inputs.
|
||||
var mode = block.getTitleValue('MODE') || 'GET';
|
||||
var where = block.getTitleValue('WHERE') || 'FROM_START';
|
||||
var mode = block.getFieldValue('MODE') || 'GET';
|
||||
var where = block.getFieldValue('WHERE') || 'FROM_START';
|
||||
var at = Blockly.JavaScript.valueToCode(block, 'AT',
|
||||
Blockly.JavaScript.ORDER_UNARY_NEGATION) || '1';
|
||||
var list = Blockly.JavaScript.valueToCode(block, 'VALUE',
|
||||
@@ -202,8 +202,8 @@ Blockly.JavaScript['lists_setIndex'] = function(block) {
|
||||
// Note: Until February 2013 this block did not have MODE or WHERE inputs.
|
||||
var list = Blockly.JavaScript.valueToCode(block, 'LIST',
|
||||
Blockly.JavaScript.ORDER_MEMBER) || '[]';
|
||||
var mode = block.getTitleValue('MODE') || 'GET';
|
||||
var where = block.getTitleValue('WHERE') || 'FROM_START';
|
||||
var mode = block.getFieldValue('MODE') || 'GET';
|
||||
var where = block.getFieldValue('WHERE') || 'FROM_START';
|
||||
var at = Blockly.JavaScript.valueToCode(block, 'AT',
|
||||
Blockly.JavaScript.ORDER_NONE) || '1';
|
||||
var value = Blockly.JavaScript.valueToCode(block, 'TO',
|
||||
@@ -279,8 +279,8 @@ Blockly.JavaScript['lists_getSublist'] = function(block) {
|
||||
// Get sublist.
|
||||
var list = Blockly.JavaScript.valueToCode(block, 'LIST',
|
||||
Blockly.JavaScript.ORDER_MEMBER) || '[]';
|
||||
var where1 = block.getTitleValue('WHERE1');
|
||||
var where2 = block.getTitleValue('WHERE2');
|
||||
var where1 = block.getFieldValue('WHERE1');
|
||||
var where2 = block.getFieldValue('WHERE2');
|
||||
var at1 = Blockly.JavaScript.valueToCode(block, 'AT1',
|
||||
Blockly.JavaScript.ORDER_NONE) || '1';
|
||||
var at2 = Blockly.JavaScript.valueToCode(block, 'AT2',
|
||||
|
||||
@@ -58,7 +58,7 @@ Blockly.JavaScript['logic_compare'] = function(block) {
|
||||
GT: '>',
|
||||
GTE: '>='
|
||||
};
|
||||
var operator = OPERATORS[block.getTitleValue('OP')];
|
||||
var operator = OPERATORS[block.getFieldValue('OP')];
|
||||
var order = (operator == '==' || operator == '!=') ?
|
||||
Blockly.JavaScript.ORDER_EQUALITY : Blockly.JavaScript.ORDER_RELATIONAL;
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'A', order) || '0';
|
||||
@@ -69,7 +69,7 @@ Blockly.JavaScript['logic_compare'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['logic_operation'] = function(block) {
|
||||
// Operations 'and', 'or'.
|
||||
var operator = (block.getTitleValue('OP') == 'AND') ? '&&' : '||';
|
||||
var operator = (block.getFieldValue('OP') == 'AND') ? '&&' : '||';
|
||||
var order = (operator == '&&') ? Blockly.JavaScript.ORDER_LOGICAL_AND :
|
||||
Blockly.JavaScript.ORDER_LOGICAL_OR;
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'A', order);
|
||||
@@ -103,7 +103,7 @@ Blockly.JavaScript['logic_negate'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['logic_boolean'] = function(block) {
|
||||
// Boolean values true and false.
|
||||
var code = (block.getTitleValue('BOOL') == 'TRUE') ? 'true' : 'false';
|
||||
var code = (block.getFieldValue('BOOL') == 'TRUE') ? 'true' : 'false';
|
||||
return [code, Blockly.JavaScript.ORDER_ATOMIC];
|
||||
};
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ goog.require('Blockly.JavaScript');
|
||||
|
||||
Blockly.JavaScript['controls_repeat'] = function(block) {
|
||||
// Repeat n times (internal number).
|
||||
var repeats = Number(block.getTitleValue('TIMES'));
|
||||
var repeats = Number(block.getFieldValue('TIMES'));
|
||||
var branch = Blockly.JavaScript.statementToCode(block, 'DO');
|
||||
if (Blockly.JavaScript.INFINITE_LOOP_TRAP) {
|
||||
branch = Blockly.JavaScript.INFINITE_LOOP_TRAP.replace(/%1/g,
|
||||
@@ -72,7 +72,7 @@ Blockly.JavaScript['controls_repeat_ext'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['controls_whileUntil'] = function(block) {
|
||||
// Do while/until loop.
|
||||
var until = block.getTitleValue('MODE') == 'UNTIL';
|
||||
var until = block.getFieldValue('MODE') == 'UNTIL';
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'BOOL',
|
||||
until ? Blockly.JavaScript.ORDER_LOGICAL_NOT :
|
||||
Blockly.JavaScript.ORDER_NONE) || 'false';
|
||||
@@ -90,7 +90,7 @@ Blockly.JavaScript['controls_whileUntil'] = function(block) {
|
||||
Blockly.JavaScript['controls_for'] = function(block) {
|
||||
// For loop.
|
||||
var variable0 = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
block.getFieldValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'FROM',
|
||||
Blockly.JavaScript.ORDER_ASSIGNMENT) || '0';
|
||||
var argument1 = Blockly.JavaScript.valueToCode(block, 'TO',
|
||||
@@ -158,7 +158,7 @@ Blockly.JavaScript['controls_for'] = function(block) {
|
||||
Blockly.JavaScript['controls_forEach'] = function(block) {
|
||||
// For each loop.
|
||||
var variable0 = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
block.getFieldValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'LIST',
|
||||
Blockly.JavaScript.ORDER_ASSIGNMENT) || '[]';
|
||||
var branch = Blockly.JavaScript.statementToCode(block, 'DO');
|
||||
@@ -190,7 +190,7 @@ Blockly.JavaScript['controls_forEach'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['controls_flow_statements'] = function(block) {
|
||||
// Flow statements: continue, break.
|
||||
switch (block.getTitleValue('FLOW')) {
|
||||
switch (block.getFieldValue('FLOW')) {
|
||||
case 'BREAK':
|
||||
return 'break;\n';
|
||||
case 'CONTINUE':
|
||||
|
||||
@@ -30,7 +30,7 @@ goog.require('Blockly.JavaScript');
|
||||
|
||||
Blockly.JavaScript['math_number'] = function(block) {
|
||||
// Numeric value.
|
||||
var code = parseFloat(block.getTitleValue('NUM'));
|
||||
var code = parseFloat(block.getFieldValue('NUM'));
|
||||
return [code, Blockly.JavaScript.ORDER_ATOMIC];
|
||||
};
|
||||
|
||||
@@ -43,7 +43,7 @@ Blockly.JavaScript['math_arithmetic'] = function(block) {
|
||||
DIVIDE: [' / ', Blockly.JavaScript.ORDER_DIVISION],
|
||||
POWER: [null, Blockly.JavaScript.ORDER_COMMA] // Handle power separately.
|
||||
};
|
||||
var tuple = OPERATORS[block.getTitleValue('OP')];
|
||||
var tuple = OPERATORS[block.getFieldValue('OP')];
|
||||
var operator = tuple[0];
|
||||
var order = tuple[1];
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'A', order) || '0';
|
||||
@@ -60,7 +60,7 @@ Blockly.JavaScript['math_arithmetic'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['math_single'] = function(block) {
|
||||
// Math operators with single operand.
|
||||
var operator = block.getTitleValue('OP');
|
||||
var operator = block.getFieldValue('OP');
|
||||
var code;
|
||||
var arg;
|
||||
if (operator == 'NEG') {
|
||||
@@ -152,7 +152,7 @@ Blockly.JavaScript['math_constant'] = function(block) {
|
||||
SQRT1_2: ['Math.SQRT1_2', Blockly.JavaScript.ORDER_MEMBER],
|
||||
INFINITY: ['Infinity', Blockly.JavaScript.ORDER_ATOMIC]
|
||||
};
|
||||
return CONSTANTS[block.getTitleValue('CONSTANT')];
|
||||
return CONSTANTS[block.getFieldValue('CONSTANT')];
|
||||
};
|
||||
|
||||
Blockly.JavaScript['math_number_property'] = function(block) {
|
||||
@@ -160,7 +160,7 @@ Blockly.JavaScript['math_number_property'] = function(block) {
|
||||
// or if it is divisible by certain number. Returns true or false.
|
||||
var number_to_check = Blockly.JavaScript.valueToCode(block, 'NUMBER_TO_CHECK',
|
||||
Blockly.JavaScript.ORDER_MODULUS) || '0';
|
||||
var dropdown_property = block.getTitleValue('PROPERTY');
|
||||
var dropdown_property = block.getFieldValue('PROPERTY');
|
||||
var code;
|
||||
if (dropdown_property == 'PRIME') {
|
||||
// Prime is a special case as it is not a one-liner test.
|
||||
@@ -223,7 +223,7 @@ Blockly.JavaScript['math_change'] = function(block) {
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'DELTA',
|
||||
Blockly.JavaScript.ORDER_ADDITION) || '0';
|
||||
var varName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
block.getFieldValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
return varName + ' = (typeof ' + varName + ' == \'number\' ? ' + varName +
|
||||
' : 0) + ' + argument0 + ';\n';
|
||||
};
|
||||
@@ -235,7 +235,7 @@ Blockly.JavaScript['math_trig'] = Blockly.JavaScript['math_single'];
|
||||
|
||||
Blockly.JavaScript['math_on_list'] = function(block) {
|
||||
// Math functions for lists.
|
||||
var func = block.getTitleValue('OP');
|
||||
var func = block.getFieldValue('OP');
|
||||
var list, code;
|
||||
switch (func) {
|
||||
case 'SUM':
|
||||
|
||||
@@ -31,7 +31,7 @@ goog.require('Blockly.JavaScript');
|
||||
Blockly.JavaScript['procedures_defreturn'] = function(block) {
|
||||
// Define a procedure with a return value.
|
||||
var funcName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
block.getFieldValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
var branch = Blockly.JavaScript.statementToCode(block, 'STACK');
|
||||
if (Blockly.JavaScript.INFINITE_LOOP_TRAP) {
|
||||
branch = Blockly.JavaScript.INFINITE_LOOP_TRAP.replace(/%1/g,
|
||||
@@ -62,7 +62,7 @@ Blockly.JavaScript['procedures_defnoreturn'] =
|
||||
Blockly.JavaScript['procedures_callreturn'] = function(block) {
|
||||
// Call a procedure with a return value.
|
||||
var funcName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
block.getFieldValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
var args = [];
|
||||
for (var x = 0; x < block.arguments_.length; x++) {
|
||||
args[x] = Blockly.JavaScript.valueToCode(block, 'ARG' + x,
|
||||
@@ -75,7 +75,7 @@ Blockly.JavaScript['procedures_callreturn'] = function(block) {
|
||||
Blockly.JavaScript['procedures_callnoreturn'] = function(block) {
|
||||
// Call a procedure with no return value.
|
||||
var funcName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
block.getFieldValue('NAME'), Blockly.Procedures.NAME_TYPE);
|
||||
var args = [];
|
||||
for (var x = 0; x < block.arguments_.length; x++) {
|
||||
args[x] = Blockly.JavaScript.valueToCode(block, 'ARG' + x,
|
||||
|
||||
@@ -30,7 +30,7 @@ goog.require('Blockly.JavaScript');
|
||||
|
||||
Blockly.JavaScript['text'] = function(block) {
|
||||
// Text value.
|
||||
var code = Blockly.JavaScript.quote_(block.getTitleValue('TEXT'));
|
||||
var code = Blockly.JavaScript.quote_(block.getFieldValue('TEXT'));
|
||||
return [code, Blockly.JavaScript.ORDER_ATOMIC];
|
||||
};
|
||||
|
||||
@@ -65,7 +65,7 @@ Blockly.JavaScript['text_join'] = function(block) {
|
||||
Blockly.JavaScript['text_append'] = function(block) {
|
||||
// Append to a variable in place.
|
||||
var varName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
block.getFieldValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'TEXT',
|
||||
Blockly.JavaScript.ORDER_NONE) || '\'\'';
|
||||
return varName + ' = String(' + varName + ') + String(' + argument0 + ');\n';
|
||||
@@ -87,7 +87,7 @@ Blockly.JavaScript['text_isEmpty'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['text_indexOf'] = function(block) {
|
||||
// Search the text for a substring.
|
||||
var operator = block.getTitleValue('END') == 'FIRST' ?
|
||||
var operator = block.getFieldValue('END') == 'FIRST' ?
|
||||
'indexOf' : 'lastIndexOf';
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'FIND',
|
||||
Blockly.JavaScript.ORDER_NONE) || '\'\'';
|
||||
@@ -100,7 +100,7 @@ Blockly.JavaScript['text_indexOf'] = function(block) {
|
||||
Blockly.JavaScript['text_charAt'] = function(block) {
|
||||
// Get letter at index.
|
||||
// Note: Until January 2013 this block did not have the WHERE input.
|
||||
var where = block.getTitleValue('WHERE') || 'FROM_START';
|
||||
var where = block.getFieldValue('WHERE') || 'FROM_START';
|
||||
var at = Blockly.JavaScript.valueToCode(block, 'AT',
|
||||
Blockly.JavaScript.ORDER_UNARY_NEGATION) || '1';
|
||||
var text = Blockly.JavaScript.valueToCode(block, 'VALUE',
|
||||
@@ -149,8 +149,8 @@ Blockly.JavaScript['text_getSubstring'] = function(block) {
|
||||
// Get substring.
|
||||
var text = Blockly.JavaScript.valueToCode(block, 'STRING',
|
||||
Blockly.JavaScript.ORDER_MEMBER) || '[]';
|
||||
var where1 = block.getTitleValue('WHERE1');
|
||||
var where2 = block.getTitleValue('WHERE2');
|
||||
var where1 = block.getFieldValue('WHERE1');
|
||||
var where2 = block.getFieldValue('WHERE2');
|
||||
var at1 = Blockly.JavaScript.valueToCode(block, 'AT1',
|
||||
Blockly.JavaScript.ORDER_NONE) || '1';
|
||||
var at2 = Blockly.JavaScript.valueToCode(block, 'AT2',
|
||||
@@ -199,7 +199,7 @@ Blockly.JavaScript['text_changeCase'] = function(block) {
|
||||
LOWERCASE: '.toLowerCase()',
|
||||
TITLECASE: null
|
||||
};
|
||||
var operator = OPERATORS[block.getTitleValue('CASE')];
|
||||
var operator = OPERATORS[block.getFieldValue('CASE')];
|
||||
var code;
|
||||
if (operator) {
|
||||
// Upper and lower case are functions built into JavaScript.
|
||||
@@ -235,7 +235,7 @@ Blockly.JavaScript['text_trim'] = function(block) {
|
||||
RIGHT: '.trimRight()',
|
||||
BOTH: '.trim()'
|
||||
};
|
||||
var operator = OPERATORS[block.getTitleValue('MODE')];
|
||||
var operator = OPERATORS[block.getFieldValue('MODE')];
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'TEXT',
|
||||
Blockly.JavaScript.ORDER_MEMBER) || '\'\'';
|
||||
return [argument0 + operator, Blockly.JavaScript.ORDER_FUNCTION_CALL];
|
||||
@@ -250,9 +250,9 @@ Blockly.JavaScript['text_print'] = function(block) {
|
||||
|
||||
Blockly.JavaScript['text_prompt'] = function(block) {
|
||||
// Prompt function.
|
||||
var msg = Blockly.JavaScript.quote_(block.getTitleValue('TEXT'));
|
||||
var msg = Blockly.JavaScript.quote_(block.getFieldValue('TEXT'));
|
||||
var code = 'window.prompt(' + msg + ')';
|
||||
var toNumber = block.getTitleValue('TYPE') == 'NUMBER';
|
||||
var toNumber = block.getFieldValue('TYPE') == 'NUMBER';
|
||||
if (toNumber) {
|
||||
code = 'parseFloat(' + code + ')';
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ goog.require('Blockly.JavaScript');
|
||||
|
||||
Blockly.JavaScript['variables_get'] = function(block) {
|
||||
// Variable getter.
|
||||
var code = Blockly.JavaScript.variableDB_.getName(block.getTitleValue('VAR'),
|
||||
var code = Blockly.JavaScript.variableDB_.getName(block.getFieldValue('VAR'),
|
||||
Blockly.Variables.NAME_TYPE);
|
||||
return [code, Blockly.JavaScript.ORDER_ATOMIC];
|
||||
};
|
||||
@@ -40,6 +40,6 @@ Blockly.JavaScript['variables_set'] = function(block) {
|
||||
var argument0 = Blockly.JavaScript.valueToCode(block, 'VALUE',
|
||||
Blockly.JavaScript.ORDER_ASSIGNMENT) || '0';
|
||||
var varName = Blockly.JavaScript.variableDB_.getName(
|
||||
block.getTitleValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
block.getFieldValue('VAR'), Blockly.Variables.NAME_TYPE);
|
||||
return varName + ' = ' + argument0 + ';\n';
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user