Commit Graph

491 Commits

Author SHA1 Message Date
rachel-fenichel
ef6c99c465 Merge pull request #517 from quachtina96/prefer-json
Block Factory: set JSON to default language format for block definitions
2016-08-02 09:59:57 -07:00
quachtina96
ae8fedc496 set JSON to default language format for block definitions 2016-08-01 17:03:08 -07:00
picklesrus
51a6bd3873 Call Blockly.svgResize() once the div it is going to be placed in (#489)
knows what size it is going to be.
2016-07-30 23:26:53 -07:00
Neil Fraser
f952cd9f2e Merge branch 'master' into develop 2016-07-26 17:22:25 -07:00
Hasso Tepper
b94dff049e Add Estonian translations to the code and plane demos (#505) 2016-07-26 17:20:54 -07:00
Sean Lip
606a5e1d08 Clean up active desc properly when a tree is removed from the workspace. Handle tree and screenreader focus correctly for 'move to marked spot' operations. 2016-07-21 16:30:38 -07:00
Rachel Fenichel
f040929bd8 Merge remote-tracking branch 'upstream/develop' into feature/merge_develop 2016-07-15 13:07:07 -07:00
Neil Fraser
efc2ca3d82 Add field_number to Block Factory. 2016-07-10 22:54:57 -07:00
Monica Kozbial
2b191e897e Adding indexing settings, tests and fixing bugs (#464)
* Add indexing setting for JavaScript Generation

Adding setting to allow for switching between zero and one based indexing for Blockly Blocks such that the generated code will use this flag to determine whether one based or zero based indexing should be used. One based indexing is enabled by default.

* Updating js lists to do zero and one based index

Updated generated JavaScript to change depending on whether one based indexing is enabled or not.

* Updating js text to do zero and one based index

Change so that JavaScript generated for text blocks either assumes blocks use zero or one based index based on setting.

* Start of python indexing

Start of work on allowing one and zero indexing for generated python for lists.

* Fixing bug and lint fixed

Fixing bug caused by not setting the return of concat when concatenating lines for sublist and substring functions. Also renamed these functions to be getSubsequece. Fixed lint errors with spacing

* Converting from if to switch statements

Comverting if statements to switch statements when appropriate and adding spacing.

* Modified sublist JavaScript generation

Added case so that helper function is not generated if not necessary. Helper function is not generated if list length is not needed or if list is a simple block (such as a variable, as oppossed to a function call or list create).

* Stripping unecessary ids

Removing ids from xml file.

* Localisation updates from https://translatewiki.net.

* Fix typo in flyout.js (#403)

* Fix typo in flyout.js (#402)

* Localisation updates from https://translatewiki.net.

* Add indexing setting for JavaScript Generation

Adding setting to allow for switching between zero and one based indexing for Blockly Blocks such that the generated code will use this flag to determine whether one based or zero based indexing should be used. One based indexing is enabled by default.

* Updating js lists to do zero and one based index

Updated generated JavaScript to change depending on whether one based indexing is enabled or not.

* Updating js text to do zero and one based index

Change so that JavaScript generated for text blocks either assumes blocks use zero or one based index based on setting.

* Fixing bug and lint fixed

Fixing bug caused by not setting the return of concat when concatenating lines for sublist and substring functions. Also renamed these functions to be getSubsequece. Fixed lint errors with spacing

* Converting from if to switch statements

Comverting if statements to switch statements when appropriate and adding spacing.

* Modified sublist JavaScript generation

Added case so that helper function is not generated if not necessary. Helper function is not generated if list length is not needed or if list is a simple block (such as a variable, as oppossed to a function call or list create).

* Stripping unecessary ids

Removing ids from xml file.

* Updating generator test

Modifying sublist test and re-formatting spacing between blocks.

* Updating js lists to do zero and one based index

Updated generated JavaScript to change depending on whether one based indexing is enabled or not.

* Updating js text to do zero and one based index

Change so that JavaScript generated for text blocks either assumes blocks use zero or one based index based on setting.

* Fixing bug and lint fixed

Fixing bug caused by not setting the return of concat when concatenating lines for sublist and substring functions. Also renamed these functions to be getSubsequece. Fixed lint errors with spacing

* Converting from if to switch statements

Comverting if statements to switch statements when appropriate and adding spacing.

* Modified sublist JavaScript generation

Added case so that helper function is not generated if not necessary. Helper function is not generated if list length is not needed or if list is a simple block (such as a variable, as oppossed to a function call or list create).

* Stripping unecessary ids

Removing ids from xml file.

* Localisation updates from https://translatewiki.net.

* Localisation updates from https://translatewiki.net.

* Updating js lists to do zero and one based index

Updated generated JavaScript to change depending on whether one based indexing is enabled or not.

* Fixing bug and lint fixed

Fixing bug caused by not setting the return of concat when concatenating lines for sublist and substring functions. Also renamed these functions to be getSubsequece. Fixed lint errors with spacing

* Modified sublist JavaScript generation

Added case so that helper function is not generated if not necessary. Helper function is not generated if list length is not needed or if list is a simple block (such as a variable, as oppossed to a function call or list create).

* Stripping unecessary ids

Removing ids from xml file.

* Updating generator test

Modifying sublist test and re-formatting spacing between blocks.

* Adding tests for indexing and extra cases

Adding tests for indexing with custom block to adjust number based on what indexing is being generated.

* Adding tests and renaming tests

Adding tests for sublist and renaming tests.

* Fixes for order for sublists

Fixes so that parenthesis are generated properly for index for sublist

* Cleaning up test generated code

Changing order returned for unit test adjust index function to generate less unecessary parenthesis.

* Adding tests for order

Adding tests for order, relevant for methods that use index from start (because 1 is added)

* Fixing JS order for getIndex and setIndex

Changing to the correct order type when calling valueToCode in JS generation for getIndex and setIndex.

* Fixed unittest adjustIndex

Fixed uninttest adjustindex to also check whether the ONE_BASED_INDEXING variable has been defined to ensure proper behaviour.

* Fixing lint and formatting for JS/lists

Making line fixes and changing an if/elseif to case statement.

* Tests added to include case for bug found

Added tests with sublist combinations of different where's for the two indices after bug for this found in python.

* Adding and renaming tests

Adding test case for creating a sublist that encompasses the whole list but uses # and #-end instead of first last (applicable for python). Also, renaming tests.

* Adding contant and fixing python lists bugs

Adding contant for ONE_BASED_INDEXING and fixing bugs in python for lists.

* Fixing test get random

Fixing test get random to take into account indexing for return value.

* Adding indexing checkbox to test page

Adding checkbos on test page so that code can be generated for one and zero based indexing. Languages that are generated with zero based indexing that do not have it implemented will fail tests as expected.

* Fixing unittest getremove random

Fixing unittest getremove random to take into account the return value based on indexing.

* Change comparison for getremove random test

Fixed comparison to equal for the return value for getremove random.

* Fixing bugs with lists zero-indexing

Fixing getIndex and getSublist methods to pass for zero-indexed tests.

* Adding test cases and formatting

Adding test cases to text tests, reordering a couple list test, and formatting block spacing.

* Fixing unittest expected value

Fixing expected value fore unit tests for sublist.

* Cleanup

Removing obvious comments, formatting fixes, and naming in generated code in JS.

* Helper function for Python lists

Adding helper function for casting to int for indices.

* Expanding helper to reduce duplicated code

Expanding helper method to also get the property with the correct order and check indexing to reduce duplicated code.

* Cleaning up JS indexing with helper function

Adding helper function for indexing and used it in lists and text.

* Moving helper function and formatting fixes

Moving helper function, formatting fixes, and changing some generated code variable names.

* Fixing python generation for text

Fixing all failinng tests for python and using new helper method.

* Lint fixes and order in indexOf

Making lint fixes and correcting returned order in indexOf.

* Python variable renaming

Renaming a few generated variables.

* Fixing comment and order

Fixing comment to list Blockly.Block type and fixing order because it could be higher.

* Switching back to if

Switching switch back to if statements because there weren't enough cases to warrant for a switch.

* Adding order and fixing lists for Dart

Adding if null operator to operator precedence for Dart. Also, fixing lists implementation to pass unit tests and adding zero-indexing functionality.

* Formatting and lint fixes

Formatting and lint fixes

* Dart text fixed

Fixing Dart text generation to pass unit tests.

* Changing back  to variable

Changing switch condition back to variable.

* Fixing ORDER_OVERRIDES

Inner and outer order was switched .

* Adding bug with order caused by generator change

Flooring order before comparision because of how the order constants were modified.

* Adding list tests

Adding tests for additional cases for lists/

* Adding comment for dart order

Adding comment for Dart ORDER_IF_NULL operator.

* Formatting fixes

Formatting fixes for line indentation.

* Fixing PHP order and lists generation

Fixing PHP order constants and fixing lists so that they pass unit tests.

* Fixing tests

Removing duplicate unit test

* Adding text tests

Adding tests for text.

* Renaming variable and removing unused variable

Renaming variables from exceptionIndex to errorIndex and removing unused at variable.

* Adding missing function call to test

Adding missing funciton call to test that was causing tests to fail when they shouldn't.

* Fixing PHP text generation

Fixing PHP text code generation so it passes unit tests.

* Formatting fixes

Cleaning up code, renamiing a variable.

* Fixing failing subsequence tests

Fixing JS code that failed for sublist/substring tests.

* Fixing intentation

Fixing indentation.

* Fixing Dart sublist/substring

Fixing sublist/substring to include condiiton where FROM_START  (and not throw error by mistake) when zero-indexed.

* Adding order subtraction test

Adding test for checking order for subtraction x- (y - z) x  - (y + z).

* Updating to new PHP power operator

Updating from pow function to ** operator to clean up code.

* Updating to new removeWhere

Updating removeMatching to removeWhere because new version of Dart now use removeWhere.

* Fix for lua rounding assertequals

Adding check for number in equlity check for comparing number for floats.

* Adding test for copy of list

Adding test that checks the list is copied when a sublist is made first-last.

* Formatting and order fixes

Fixing formatting such as indentation and order fixes.

* Adding comment for clarity

Adding comment about how Lua code generation is not supporting zero indexing.

* Changed variable names in code

Changed variable names to follow style guide and changed for loop variable from n to i as is typical.

* Reducing unecessarily generated functions and renaming variables

Reducing number of generated functions using gensym_ by adding parameters to provided function. Renaming variables to make functions more readble.

* Fixing sublist order and sort variable

Fixing order used for valueToCode for sublist and renaming list variable in sort to match rest of code..

* Fixing order constant order

Removing operator () that was incorrect and addiung ~,

* Fixing order and indentation

Fixing order return fro create lists blocks and fixing indentationn for string array.

* Fixing order and renaming variables

Fixing order to be the correct strength and renaming variables to be more readable/

* Changing assert blocks for unit tests

Changing assert blocks to have a value input instead of a field so there is more flexibility in writing tests.

* Cleaning up and adding missing order tests

Adding tests for order for paramters for list blocks that weren't being tested to uncover bugs. Test were also cleaned up/reorganized/renamed to be more readable and shorter vertically (but lines  wider horizontally).

* Compile error fix and order in Dart generation.

Fixing compile error in generated code and incorrect order in get sublist for Dart.

* Fixing typo in getIndex and invalid parameter name

Fixing type in getIndex where list code should have been appended but instead an undefined variable was added. The parameter in lists_sort was changed to my_list because list is a reserved word in python.

* Fixing order, parenthesis bug, and variable declaration in Lua

Fixing incorrect order in Lua. Fixing bug caused by missing parenthesis around ternary operator in code. Variable code was declared with JavaScript syntax, this was fixed to be valid in Lua.

* Adding tests and formatting tests

Adding missing test for order in text/lists. Changing spacing/order of tests and updating comments.

* Fixing error in code

Changing to correct function call in empy tests and changing test name that was duplicated to be more clear.

* Renamed test helper function

* Fixing order and renaming variable in JS generator

Fixing order for charAt and renaming variable in code list_sort from listCode to list to be consistent with rest of code.

* Fixing order for dart text

Fixing roder for dart charAt

* Cleaning up generated code for Dart getIndex

Cleaning up generated code for Dart getIndex so that helper functions aren't generated unecessarily and adding comments.

* Fixing Dart remove random error

Fixing error caused by remove random implementation in Dart. index should have been x but instead was length - x.

* Fixing unit test blocks

Fixing Lua unit test block that should have just returned the number and removing unecessary checks in other blocks because the constant was defined.

* Fixing Lua assert equals block

string.format was throwing an error if one of the values happened to be a boolean.

* Adding tests for create text with number

Adding test for create text with numbers as parameters

* Fixing lua unit test block

Lua unit test block should have added 1

* Removing indexing setting for Lua tests

Removing setting index setting for Lua generation because it is always one-indexed.

* Fixing order and create text

Fixing failing test caused by improper order and fixed create text to properly convert to string when there is one element.

* Running linter on generator code

Running linter on generator code and fixing spacing/indentation problems.

* Editing comments and removing uneeded parenthesis

Editing and adding comments and removing uneeded parenthesis around ternary operator condition.

* Fixing order and changing variable names

Fixing orders that were incorrect and changing variable names to be more descriptive and consistent across code.

* Adding comment about list support and fixes for PHP

Adding comment about how lists are not fully supported for PHP. Adding missing order to PHP and fixing order errors throughout. Fixing regex for variable matching in lists. Cleaning up variable names to be more readable and consistent with other parts of code.

* Reducing complexity for getremove/remove in JS

Reducing complexity in generated code for getremove/remove in JavaScript by replacing unecessary helper function.

* Fixing spacing before inline comments

Ensuring there are two spaces before inline comments.

* Changing JS list copy for clarity

Changing JavaScript list copy to use slice(0) instead of concat for clarity and to use the same pattern as the other sublist methods.

* Changing generated variable name tmp_x

Changing tmp_x to tmpX to follow closer to the correct style for JavaScript.

* Prefixing empy lines between comment text

Prior to this change, comments with an empty line between text did not have a comment prefix before it, resulting in comment blocks that seemed disjoined although they were for the same block. This change affects how the prefix line function works so that those lines will have the prefix (if applicable) while still taking into account the trailing newline character.

* Changing for loops variable names

Changing most for loops to use i as the variable name (or j if applicable) or changing name to be more readable.

* Simplifying provided subsequence function

Simplifying subsequence function to generate a simpler function depending on where combination instead of a larger complex function that works for all where combinations.

* Style fixes

Fixing indentation, comments, and other formatting-type changes based on pull request comments.

* Fixing indentation

Fixing indentation and removing an extra newline.

* Fixing PHP mode implementation

Fixing PHP mode implementation to properlyu return multiple modes if applicable.

* Fixing line too long

Wrapping lines in php/math.js with lines longer than 80 characters.

* Wrapping long lines

Wrapping lines that are too long.

* Changing boolean casing

Changing boolean casing to be lowercase.
2016-07-08 11:43:48 -07:00
Rachel Fenichel
9a6cbe1b34 Lint and remove math_change wherever necessary 2016-07-07 14:40:59 -07:00
Neil Fraser
0be0cc89c7 Second version of FieldNumber API. 2016-06-22 15:07:07 -07:00
Neil Fraser
685288836f Use simpler message interpolation in Code demo. 2016-06-22 13:01:37 -07:00
Neil Fraser
93125fd1e6 Make it easy to disable unconnected blocks. 2016-06-21 04:31:45 -07:00
Neil Fraser
732e9b0659 Start using field_number. 2016-06-21 04:10:32 -07:00
Andrew n marshall
592b2e1a51 Updating URLs to reflect new docs. (#418)
* Updating URLs to reflect new docs. Removing -blockly in URLs.

* Rebuilt.
2016-06-14 10:15:35 -07:00
Sean Lip
b75d3f7327 Standardize naming of components. 2016-06-10 19:22:14 -07:00
Sean Lip
42a4a1ed8f Merge branch 'develop' of https://github.com/google/blockly into develop 2016-06-09 18:16:00 -07:00
Sean Lip
50ddbbaee4 Introduce a common translation pipe; remove local stringMap attributes. Fix variable name error in paste functions. Minor linting. 2016-06-09 17:57:50 -07:00
Neil Fraser
652e57bc38 Generate for loops on one line. 2016-06-09 17:27:27 -07:00
Sean Lip
509e158c0b Remove shadow blocks from Accessible Blockly demo. Update README. 2016-06-09 16:53:10 -07:00
picklesrus
213469a479 Change the blockly workspace resizing strategy. (#386)
* Add a new method to be called when the contents of the workspace change and
the scrollbars need to be adjusted but the the chrome (trash, toolbox, etc)
are expected to stay in the same place.

Change a bunch of calls to svgResize to either be removed or call the new
method instead.  This is a nice performance win since the offsetHeight/Width
call in svgResize can be expensive, especially when called as often as we do -
there was some layout thrashing.

This also paves the way for moving calls to recordDeleteAreas
(which is also expensive) to a more cacheable spot than on every
mouse down/touch event.

of things (namely the scrollbars)

* Fix size of graph demo when it first loads by calling svgResize.
The graph starts with fixed width and was relying on a resize event
to fire (which I believe was removed in commit
217c681b86).

* Fix the resizing of the code demo.  The demo's tab min-width used to
match the toolbox's width was only being set on a resize event, but
commit 217c681b86 changed how that worked.

* Fix up some comments.

* Use specific workspaces rather than Blockly.getMainWorkspace().

* Make workspace required for resizeSvgContents and update
some calls to send real workspaces rather than ones that are
null.

Remove the private tag on terminateDrag_ because it is only
actually called from outside the BlockSvg object.

* Remove a rogue period.

* Recategorize BlockSvg.terminateDrag_ to @package instead of @private so that
other developers don't use it, but it still can be used by other Blockly classes.

* Add a TODO to fix issue #307.

* Add @package to workspace resizeContents.
2016-06-03 16:11:55 -07:00
Sean Lip
9791b48533 Add an explicit injector for the 'Run Code' button. Update es6-shim dependency to prevent console errors. 2016-05-27 16:37:39 -07:00
Neil Fraser
5dc6fc4657 Cleanup of style and simplifications. (#378)
* Cleanup of style and simplifications.

* Removing unused addClass function.
2016-05-25 00:02:28 -07:00
Neil Fraser
763e9b938f Cleanup accessible Blockly. 2016-05-23 17:34:46 -07:00
M
741aaef452 Accessible demo (#373)
* adding a folder in demos for blind and setting up the package.json file for development. Adding package.json to .gitignore

* removing gitignore~ file

* copied blind blockly demo code over. set up a new dev environment. Up for review: the blind blockly demo code. Much of the drop downs don't actually do anything, but a general look at the way angular is used would be helpful in shaping future development.

* adding an index file that was being ignored by .gitignore

* adding required angular files and libraries previously ignored by git add --a for some unknown reason.

* starting work on toolbox

* got workspace and toolbox connected. Copy to workspace annd copy to clipboard working at 80%.

* cleaning up autogenerated files

* adding my own files. Not sure why the test files are being added.

* cleaning up comments

* removed empty html_formatter.html file from project and put on git ignore list. The file is used on my end to help with formatting the html in javascript files.

* getting rid of unnecessary html_formatter file

* removing merge conflicts

* cleaned up comments

* cleaned up comments, organized file structure, made ToolboxXML a file that can be changed by other developers porting this code, added copyright and file summaries to js files, linted files, moved third party libraries to lib folder

* removing lint files that shouldn't be tracked.

* Made the clipboard a service instead of multiple pieces embedded within the app. Not sold on the name ClipboardService. Open to suggestions.

* syncing up demo updates

* adding insert block menus above and below appropriate blocks.

* hacky version of getting code to run.

* changing toolbox to be a menu. making both the toolbox and workspace ordered lists

* adding new folder dev-old containing a version of blind blockly that uses nested lists for the toolbox

* getting rid of menubar experiment

* adding treeview shenanigans part 1

* adding treeview experiment page and finishing up treeview.

* getting a treeview implementation working in the toolbox

* creating a fishfood folder for fishfood development

* making first level of fishfood

* fixing something

* adding index file for fishfood

* beginning merging the treeview system.

* creating two treeviews

* fishfood level 1 without working music blocks

* fixes to treeview navigation

* final fishfood features done

* adding support for toolboxes without categories

* beginning integration of Sean's new music code

* adding Sean's music blocks and beginning music_player integration.

* merged Sean's music block code into fishfood

* merged Sean's music code and fixed treeview bug with toolbox when no categories

* adding blank_demo

* fixing tab navigation.

* fixing bug with shift-tab. New bug found in alt+tab not opening dropdown?

* fixing labels

* fixing bugs and finding more.

* removing dropdowns in favor of buttons part 1. Still need to change field options.

* index.html for blank_demo

* beginning cleanup

* adding blockly- prefix to label ids.

* integrating AccessibleBlockly with Blockly library.

* remove closure library

* removing testing files that aren't in develop

* removing all demo stuff for a later pull request

* removing gitignore file that doesn't exist in developer branch

* syncing with develop branch files

* removing music files from this pull request

* doing some lint cleanup

* rolling back accidental package.json change

* removing var blocklyApp = blocklyApp || {} from each extraneous file

* adding last debug statement

* changed name of inputType function

* renaming _service arguments

* fixing function names

* fixing all comments.

* fixing minor comments

* renaming variables, etc

* fixing bugs that break demo. Adding the run code and clear workspace buttons back to the workspaceview as their current position breaks tab navigation.

* fixing minor comments

* fixing function names, etc.

* adding comments to getInputTypeLabel function

* removing addClass() calls from the template

* small change to clipboardService

* splitting getCategoryDependantId into two functions: getCategoryId and setActiveDesc

* fixing minor bug with last commit

* using conditional attributes to remove setActiveAttributes function from treeService and do same work in template.

* deleting unnecessary comment created in previous commit.

* adding a utilsService to remove duplicated code.

* changing function names in utilsService

* changing delete to [delete] to allow HTMLText functions to return an empty string instead of undefined. Also renaming concatStringWithSpaces to generateAriaLabelledByAttr

* generating ids in ngOnInit instead of on the fly, allowing us to use [attr.aria-labelledBy] in the template instead of using setLabelledBy(element). Deleting function utilsService.setLabelledBy.

* fixing small bug with tree service left arrow: was throwing an error when you can't go any further left.

* reformatting html to make it easier to read.

* moving from importing the xml file to using an xml toolbox in the demo.

* fixing minor bugs and removing code relevant only to the music game.

* minor fixes

* adding alerts to copy, paste, and mark actions. renaming blocklyApp.TreeView to blocklyApp.WorkspaceTreeView

* Beginning to add Blockly.msg strings.

* making sure index file is being tracked

* adding all demo bits

* removing demo files from this pull request

* fixing providers, some linting, and removing getInfo() function.

* adding small todo comment for sll@

* adding minimal blockly accessible demo

* removing unnecessary files

* putting package file back

* fixing package file

* fixing msg file

* fixing boot.js file

* fixing boot.js file

* fixing indentation on boot

* fixing indentation on index file.
2016-05-23 16:41:13 -07:00
Rachel Fenichel
e0cda58701 fix variable naming in createnewblock. 2016-05-11 15:15:12 -07:00
Dan LaLiberte
55eba0a39b Rebuild, add lists_sort block to demos/code/index.html 2016-05-06 11:14:23 -04:00
Neil Fraser
ea71cec0c7 Trivial blocks only inherit tooltip from parent if on external inputs.
Recompile.
2016-05-03 17:49:10 -07:00
Neil Fraser
83c04c474a Merge branch 'master' into develop 2016-04-15 23:46:06 -07:00
Neil Fraser
5a6ef5a6e3 Merge pull request #235 from pjkui/patch-2
fixed an translation error
2016-04-14 16:50:23 -07:00
Neil Fraser
49fff433e3 Merge pull request #234 from pjkui/patch-1
fixed a translation error
2016-04-14 16:50:16 -07:00
Neil Fraser
2d696aa731 Normalize order of languages. 2016-04-08 22:56:42 -07:00
Neil Fraser
bb2214581c Corrections to ms. 2016-04-08 18:40:20 -07:00
Neil Fraser
effa81f622 Create fromJson for events. Add master-slave demo. 2016-04-06 14:27:15 -07:00
Neil Fraser
4e42a1b78e Swap order of arguments on domToWorkspace. 2016-04-04 18:31:41 -07:00
Neil Fraser
601ea15b75 Rename JSON's 'id' to 'type'. Issue #245. 2016-04-04 16:40:08 -07:00
Neil Fraser
5be735f24f Fix issue #309, unneeded names for dummy inputs in Block Factory. 2016-04-02 04:52:24 -07:00
Neil Fraser
92f224dd52 Merge pull request #297 from picklesrus/develop-perf-1
Remove Blockly.removeAllRanges and replace it with calls to add/remove
2016-03-28 12:17:11 -07:00
Katelyn Mann
b11bd4fb71 Remove Blockly.removeAllRanges and replace it with calls to add/remove
css to mark text as unselectable instead.  I can't prove this is
significantly faster with numbers since the call to setup the time out
costs ~.1ms and the call when the timer fires is ~.05.  This happens on almost
every mouse event though.  Plus, it seems to remove a flicker of highlighting when
frames are skipped and keeps scrolling via the scrollbar from highlighting.
2016-03-28 10:06:43 -07:00
Neil Fraser
e7fcc39e78 Remove redundant movable check from checkType. 2016-03-27 01:46:53 -07:00
Neil Fraser
05fc1ad91b Add workspace.clearUndo 2016-03-25 19:03:18 -07:00
Rodrigo Queiro
a5d3f340e5 Add a Lua code generator
This is based on the JS generator, with a lot of inspiration from Ellen
Spertus's blockly-lua: https://github.com/espertus/blockly-lua

All unit tests pass with Lua 5.3.2.
2016-03-10 10:24:25 +01:00
Neil Fraser
55a94a14f0 Add naked variable to generator test. 2016-03-09 11:51:57 -08:00
Neil Fraser
a22b936229 Fix invalid colours in Block Factory. 2016-02-26 21:20:39 -08:00
Neil Fraser
1d44036cf9 Add missing move when unshadowing and missing XY when deleting. 2016-02-12 19:34:51 -08:00
Neil Fraser
211595075e Make colour optional in JSON. Add ;/n in generator stub. 2016-01-28 14:25:38 -05:00
Neil Fraser
9804b31bb0 Allow easier addition of custom loops or functions. 2016-01-21 18:16:25 -08:00
Quinn Pan
920566c9b4 fixed an translation error
change "簡體中文" to "简体中文"
2016-01-13 20:09:56 +08:00
Quinn Pan
296eab7b99 fixed a translate error
change "簡體中文" to "简体中文"
2016-01-13 17:21:57 +08:00
Neil Fraser
80f36f0629 Clean up for demo apps. 2016-01-08 13:58:18 -08:00