Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
ardublockly
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
xpstem
ardublockly
Commits
1235c1e8
Commit
1235c1e8
authored
Nov 24, 2014
by
Neil Fraser
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fade out trashcan when closed.
parent
cefb9385
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
38 additions
and
30 deletions
+38
-30
blockly_compressed.js
blockly_compressed.js
+15
-15
blockly_uncompressed.js
blockly_uncompressed.js
+4
-4
core/bubble.js
core/bubble.js
+2
-1
core/field_angle.js
core/field_angle.js
+3
-2
core/trashcan.js
core/trashcan.js
+12
-7
core/workspace.js
core/workspace.js
+2
-1
media/sprites.png
media/sprites.png
+0
-0
No files found.
blockly_compressed.js
View file @
1235c1e8
This diff is collapsed.
Click to expand it.
blockly_uncompressed.js
View file @
1235c1e8
...
@@ -28,13 +28,13 @@ goog.addDependency("../../../" + dir + "/core/block.js", ['Blockly.Block'], ['Bl
...
@@ -28,13 +28,13 @@ goog.addDependency("../../../" + dir + "/core/block.js", ['Blockly.Block'], ['Bl
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/block_svg.js
"
,
[
'
Blockly.BlockSvg
'
],
[
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/block_svg.js
"
,
[
'
Blockly.BlockSvg
'
],
[
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/blockly.js
"
,
[
'
Blockly
'
],
[
'
Blockly.Block
'
,
'
Blockly.Connection
'
,
'
Blockly.FieldAngle
'
,
'
Blockly.FieldCheckbox
'
,
'
Blockly.FieldColour
'
,
'
Blockly.FieldDropdown
'
,
'
Blockly.FieldImage
'
,
'
Blockly.FieldTextInput
'
,
'
Blockly.FieldVariable
'
,
'
Blockly.Generator
'
,
'
Blockly.Msg
'
,
'
Blockly.Procedures
'
,
'
Blockly.Realtime
'
,
'
Blockly.Toolbox
'
,
'
Blockly.WidgetDiv
'
,
'
Blockly.Workspace
'
,
'
Blockly.inject
'
,
'
Blockly.utils
'
,
'
goog.color
'
,
'
goog.dom
'
,
'
goog.events
'
,
'
goog.string
'
,
'
goog.ui.ColorPicker
'
,
'
goog.ui.tree.TreeControl
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/blockly.js
"
,
[
'
Blockly
'
],
[
'
Blockly.Block
'
,
'
Blockly.Connection
'
,
'
Blockly.FieldAngle
'
,
'
Blockly.FieldCheckbox
'
,
'
Blockly.FieldColour
'
,
'
Blockly.FieldDropdown
'
,
'
Blockly.FieldImage
'
,
'
Blockly.FieldTextInput
'
,
'
Blockly.FieldVariable
'
,
'
Blockly.Generator
'
,
'
Blockly.Msg
'
,
'
Blockly.Procedures
'
,
'
Blockly.Realtime
'
,
'
Blockly.Toolbox
'
,
'
Blockly.WidgetDiv
'
,
'
Blockly.Workspace
'
,
'
Blockly.inject
'
,
'
Blockly.utils
'
,
'
goog.color
'
,
'
goog.dom
'
,
'
goog.events
'
,
'
goog.string
'
,
'
goog.ui.ColorPicker
'
,
'
goog.ui.tree.TreeControl
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/blocks.js
"
,
[
'
Blockly.Blocks
'
],
[
'
goog.asserts
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/blocks.js
"
,
[
'
Blockly.Blocks
'
],
[
'
goog.asserts
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/bubble.js
"
,
[
'
Blockly.Bubble
'
],
[
'
Blockly.Workspace
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/bubble.js
"
,
[
'
Blockly.Bubble
'
],
[
'
Blockly.Workspace
'
,
'
goog.math
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/comment.js
"
,
[
'
Blockly.Comment
'
],
[
'
Blockly.Bubble
'
,
'
Blockly.Icon
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/comment.js
"
,
[
'
Blockly.Comment
'
],
[
'
Blockly.Bubble
'
,
'
Blockly.Icon
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/connection.js
"
,
[
'
Blockly.Connection
'
,
'
Blockly.ConnectionDB
'
],
[
'
Blockly.Workspace
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/connection.js
"
,
[
'
Blockly.Connection
'
,
'
Blockly.ConnectionDB
'
],
[
'
Blockly.Workspace
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/contextmenu.js
"
,
[
'
Blockly.ContextMenu
'
],
[
'
goog.dom
'
,
'
goog.style
'
,
'
goog.ui.Menu
'
,
'
goog.ui.MenuItem
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/contextmenu.js
"
,
[
'
Blockly.ContextMenu
'
],
[
'
goog.dom
'
,
'
goog.style
'
,
'
goog.ui.Menu
'
,
'
goog.ui.MenuItem
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/css.js
"
,
[
'
Blockly.Css
'
],
[
'
goog.cssom
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/css.js
"
,
[
'
Blockly.Css
'
],
[
'
goog.cssom
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field.js
"
,
[
'
Blockly.Field
'
],
[
'
Blockly.BlockSvg
'
,
'
goog.asserts
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field.js
"
,
[
'
Blockly.Field
'
],
[
'
Blockly.BlockSvg
'
,
'
goog.asserts
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_angle.js
"
,
[
'
Blockly.FieldAngle
'
],
[
'
Blockly.FieldTextInput
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_angle.js
"
,
[
'
Blockly.FieldAngle
'
],
[
'
Blockly.FieldTextInput
'
,
'
goog.math
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_checkbox.js
"
,
[
'
Blockly.FieldCheckbox
'
],
[
'
Blockly.Field
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_checkbox.js
"
,
[
'
Blockly.FieldCheckbox
'
],
[
'
Blockly.Field
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_colour.js
"
,
[
'
Blockly.FieldColour
'
],
[
'
Blockly.Field
'
,
'
goog.ui.ColorPicker
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_colour.js
"
,
[
'
Blockly.FieldColour
'
],
[
'
Blockly.Field
'
,
'
goog.ui.ColorPicker
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_dropdown.js
"
,
[
'
Blockly.FieldDropdown
'
],
[
'
Blockly.Field
'
,
'
goog.dom
'
,
'
goog.style
'
,
'
goog.ui.Menu
'
,
'
goog.ui.MenuItem
'
,
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/field_dropdown.js
"
,
[
'
Blockly.FieldDropdown
'
],
[
'
Blockly.Field
'
,
'
goog.dom
'
,
'
goog.style
'
,
'
goog.ui.Menu
'
,
'
goog.ui.MenuItem
'
,
'
goog.userAgent
'
]);
...
@@ -56,12 +56,12 @@ goog.addDependency("../../../" + dir + "/core/realtime.js", ['Blockly.Realtime']
...
@@ -56,12 +56,12 @@ goog.addDependency("../../../" + dir + "/core/realtime.js", ['Blockly.Realtime']
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/scrollbar.js
"
,
[
'
Blockly.Scrollbar
'
,
'
Blockly.ScrollbarPair
'
],
[
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/scrollbar.js
"
,
[
'
Blockly.Scrollbar
'
,
'
Blockly.ScrollbarPair
'
],
[
'
goog.userAgent
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/toolbox.js
"
,
[
'
Blockly.Toolbox
'
],
[
'
Blockly.Flyout
'
,
'
goog.events.BrowserFeature
'
,
'
goog.html.SafeHtml
'
,
'
goog.style
'
,
'
goog.ui.tree.TreeControl
'
,
'
goog.ui.tree.TreeNode
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/toolbox.js
"
,
[
'
Blockly.Toolbox
'
],
[
'
Blockly.Flyout
'
,
'
goog.events.BrowserFeature
'
,
'
goog.html.SafeHtml
'
,
'
goog.style
'
,
'
goog.ui.tree.TreeControl
'
,
'
goog.ui.tree.TreeNode
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/tooltip.js
"
,
[
'
Blockly.Tooltip
'
],
[]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/tooltip.js
"
,
[
'
Blockly.Tooltip
'
],
[]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/trashcan.js
"
,
[
'
Blockly.Trashcan
'
],
[
'
goog.Timer
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/trashcan.js
"
,
[
'
Blockly.Trashcan
'
],
[
'
goog.
math
'
,
'
goog.
Timer
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/utils.js
"
,
[
'
Blockly.utils
'
],
[]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/utils.js
"
,
[
'
Blockly.utils
'
],
[]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/variables.js
"
,
[
'
Blockly.Variables
'
],
[
'
Blockly.Toolbox
'
,
'
Blockly.Workspace
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/variables.js
"
,
[
'
Blockly.Variables
'
],
[
'
Blockly.Toolbox
'
,
'
Blockly.Workspace
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/warning.js
"
,
[
'
Blockly.Warning
'
],
[
'
Blockly.Bubble
'
,
'
Blockly.Icon
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/warning.js
"
,
[
'
Blockly.Warning
'
],
[
'
Blockly.Bubble
'
,
'
Blockly.Icon
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/widgetdiv.js
"
,
[
'
Blockly.WidgetDiv
'
],
[
'
Blockly.Css
'
,
'
goog.dom
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/widgetdiv.js
"
,
[
'
Blockly.WidgetDiv
'
],
[
'
Blockly.Css
'
,
'
goog.dom
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/workspace.js
"
,
[
'
Blockly.Workspace
'
],
[
'
Blockly.ScrollbarPair
'
,
'
Blockly.Trashcan
'
,
'
Blockly.Xml
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/workspace.js
"
,
[
'
Blockly.Workspace
'
],
[
'
Blockly.ScrollbarPair
'
,
'
Blockly.Trashcan
'
,
'
Blockly.Xml
'
,
'
goog.math
'
]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/xml.js
"
,
[
'
Blockly.Xml
'
],
[]);
goog
.
addDependency
(
"
../../../
"
+
dir
+
"
/core/xml.js
"
,
[
'
Blockly.Xml
'
],
[]);
goog
.
addDependency
(
"
../../alltests.js
"
,
[],
[]);
goog
.
addDependency
(
"
../../alltests.js
"
,
[],
[]);
goog
.
addDependency
(
"
base.js
"
,
[],
[]);
goog
.
addDependency
(
"
base.js
"
,
[],
[]);
...
...
core/bubble.js
View file @
1235c1e8
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
goog
.
provide
(
'
Blockly.Bubble
'
);
goog
.
provide
(
'
Blockly.Bubble
'
);
goog
.
require
(
'
Blockly.Workspace
'
);
goog
.
require
(
'
Blockly.Workspace
'
);
goog
.
require
(
'
goog.math
'
);
/**
/**
...
@@ -48,7 +49,7 @@ Blockly.Bubble = function(workspace, content, shape,
...
@@ -48,7 +49,7 @@ Blockly.Bubble = function(workspace, content, shape,
if
(
Blockly
.
RTL
)
{
if
(
Blockly
.
RTL
)
{
angle
=
-
angle
;
angle
=
-
angle
;
}
}
this
.
arrow_radians_
=
angle
/
360
*
Math
.
PI
*
2
;
this
.
arrow_radians_
=
goog
.
math
.
toRadians
(
angle
)
;
this
.
workspace_
=
workspace
;
this
.
workspace_
=
workspace
;
this
.
content_
=
content
;
this
.
content_
=
content
;
...
...
core/field_angle.js
View file @
1235c1e8
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
goog
.
provide
(
'
Blockly.FieldAngle
'
);
goog
.
provide
(
'
Blockly.FieldAngle
'
);
goog
.
require
(
'
Blockly.FieldTextInput
'
);
goog
.
require
(
'
Blockly.FieldTextInput
'
);
goog
.
require
(
'
goog.math
'
);
/**
/**
...
@@ -182,7 +183,7 @@ Blockly.FieldAngle.prototype.onMouseMove = function(e) {
...
@@ -182,7 +183,7 @@ Blockly.FieldAngle.prototype.onMouseMove = function(e) {
// This shouldn't happen, but let's not let this error propogate further.
// This shouldn't happen, but let's not let this error propogate further.
return
;
return
;
}
}
angle
=
angle
/
Math
.
PI
*
180
;
angle
=
goog
.
math
.
toDegrees
(
angle
)
;
// 0: East, 90: North, 180: West, 270: South.
// 0: East, 90: North, 180: West, 270: South.
if
(
dx
<
0
)
{
if
(
dx
<
0
)
{
angle
+=
180
;
angle
+=
180
;
...
@@ -227,7 +228,7 @@ Blockly.FieldAngle.prototype.updateGraph_ = function() {
...
@@ -227,7 +228,7 @@ Blockly.FieldAngle.prototype.updateGraph_ = function() {
if
(
!
this
.
gauge_
)
{
if
(
!
this
.
gauge_
)
{
return
;
return
;
}
}
var
angleRadians
=
Number
(
this
.
getText
())
/
180
*
Math
.
PI
;
var
angleRadians
=
goog
.
math
.
toRadians
(
Number
(
this
.
getText
()))
;
if
(
isNaN
(
angleRadians
))
{
if
(
isNaN
(
angleRadians
))
{
this
.
gauge_
.
setAttribute
(
'
d
'
,
this
.
gauge_
.
setAttribute
(
'
d
'
,
'
M
'
+
Blockly
.
FieldAngle
.
HALF
+
'
,
'
+
Blockly
.
FieldAngle
.
HALF
);
'
M
'
+
Blockly
.
FieldAngle
.
HALF
+
'
,
'
+
Blockly
.
FieldAngle
.
HALF
);
...
...
core/trashcan.js
View file @
1235c1e8
...
@@ -26,6 +26,7 @@
...
@@ -26,6 +26,7 @@
goog
.
provide
(
'
Blockly.Trashcan
'
);
goog
.
provide
(
'
Blockly.Trashcan
'
);
goog
.
require
(
'
goog.math
'
);
goog
.
require
(
'
goog.Timer
'
);
goog
.
require
(
'
goog.Timer
'
);
...
@@ -122,11 +123,11 @@ Blockly.Trashcan.prototype.svgLid_ = null;
...
@@ -122,11 +123,11 @@ Blockly.Trashcan.prototype.svgLid_ = null;
Blockly
.
Trashcan
.
prototype
.
lidTask_
=
0
;
Blockly
.
Trashcan
.
prototype
.
lidTask_
=
0
;
/**
/**
* Current
angle of the lid
.
* Current
state of lid opening (0.0 = closed, 1.0 = open)
.
* @type {number}
* @type {number}
* @private
* @private
*/
*/
Blockly
.
Trashcan
.
prototype
.
lid
Angle
_
=
0
;
Blockly
.
Trashcan
.
prototype
.
lid
Open
_
=
0
;
/**
/**
* Left coordinate of the trash can.
* Left coordinate of the trash can.
...
@@ -186,6 +187,7 @@ Blockly.Trashcan.prototype.createDom = function() {
...
@@ -186,6 +187,7 @@ Blockly.Trashcan.prototype.createDom = function() {
this
.
svgLid_
.
setAttributeNS
(
'
http://www.w3.org/1999/xlink
'
,
'
xlink:href
'
,
this
.
svgLid_
.
setAttributeNS
(
'
http://www.w3.org/1999/xlink
'
,
'
xlink:href
'
,
Blockly
.
pathToMedia
+
Blockly
.
SPRITE
.
url
);
Blockly
.
pathToMedia
+
Blockly
.
SPRITE
.
url
);
this
.
animateLid_
();
return
this
.
svgGroup_
;
return
this
.
svgGroup_
;
};
};
...
@@ -283,14 +285,17 @@ Blockly.Trashcan.prototype.setOpen_ = function(state) {
...
@@ -283,14 +285,17 @@ Blockly.Trashcan.prototype.setOpen_ = function(state) {
* @private
* @private
*/
*/
Blockly
.
Trashcan
.
prototype
.
animateLid_
=
function
()
{
Blockly
.
Trashcan
.
prototype
.
animateLid_
=
function
()
{
this
.
lidAngle_
+=
this
.
isOpen
?
10
:
-
10
;
this
.
lidOpen_
+=
this
.
isOpen
?
0.2
:
-
0.2
;
this
.
lidAngle_
=
Math
.
max
(
0
,
this
.
lidAngle_
);
this
.
lidOpen_
=
goog
.
math
.
clamp
(
this
.
lidOpen_
,
0
,
1
);
var
lidAngle
=
this
.
lidOpen_
*
45
;
this
.
svgLid_
.
setAttribute
(
'
transform
'
,
'
rotate(
'
+
this
.
svgLid_
.
setAttribute
(
'
transform
'
,
'
rotate(
'
+
(
Blockly
.
RTL
?
-
this
.
lidAngle_
:
this
.
lidAngle_
)
+
'
,
'
+
(
Blockly
.
RTL
?
-
lidAngle
:
lidAngle
)
+
'
,
'
+
(
Blockly
.
RTL
?
4
:
this
.
WIDTH_
-
4
)
+
'
,
'
+
(
Blockly
.
RTL
?
4
:
this
.
WIDTH_
-
4
)
+
'
,
'
+
(
this
.
LID_HEIGHT_
-
2
)
+
'
)
'
);
(
this
.
LID_HEIGHT_
-
2
)
+
'
)
'
);
if
(
this
.
isOpen
?
(
this
.
lidAngle_
<
45
)
:
(
this
.
lidAngle_
>
0
))
{
var
opacity
=
goog
.
math
.
lerp
(
0.2
,
0.4
,
this
.
lidOpen_
);
this
.
lidTask_
=
goog
.
Timer
.
callOnce
(
this
.
animateLid_
,
5
,
this
);
this
.
svgGroup_
.
style
.
opacity
=
opacity
;
if
(
this
.
lidOpen_
>
0
||
this
.
lidOpen_
<
1
)
{
this
.
lidTask_
=
goog
.
Timer
.
callOnce
(
this
.
animateLid_
,
20
,
this
);
}
}
};
};
...
...
core/workspace.js
View file @
1235c1e8
...
@@ -31,6 +31,7 @@ goog.provide('Blockly.Workspace');
...
@@ -31,6 +31,7 @@ goog.provide('Blockly.Workspace');
goog
.
require
(
'
Blockly.ScrollbarPair
'
);
goog
.
require
(
'
Blockly.ScrollbarPair
'
);
goog
.
require
(
'
Blockly.Trashcan
'
);
goog
.
require
(
'
Blockly.Trashcan
'
);
goog
.
require
(
'
Blockly.Xml
'
);
goog
.
require
(
'
Blockly.Xml
'
);
goog
.
require
(
'
goog.math
'
);
/**
/**
...
@@ -211,7 +212,7 @@ Blockly.Workspace.prototype.getTopBlocks = function(ordered) {
...
@@ -211,7 +212,7 @@ Blockly.Workspace.prototype.getTopBlocks = function(ordered) {
// Copy the topBlocks_ list.
// Copy the topBlocks_ list.
var
blocks
=
[].
concat
(
this
.
topBlocks_
);
var
blocks
=
[].
concat
(
this
.
topBlocks_
);
if
(
ordered
&&
blocks
.
length
>
1
)
{
if
(
ordered
&&
blocks
.
length
>
1
)
{
var
offset
=
Math
.
sin
(
Blockly
.
Workspace
.
SCAN_ANGLE
/
180
*
Math
.
PI
);
var
offset
=
Math
.
sin
(
goog
.
math
.
toRadians
(
Blockly
.
Workspace
.
SCAN_ANGLE
)
);
if
(
Blockly
.
RTL
)
{
if
(
Blockly
.
RTL
)
{
offset
*=
-
1
;
offset
*=
-
1
;
}
}
...
...
media/sprites.png
View replaced file @
cefb9385
View file @
1235c1e8
2.37 KB
|
W:
|
H:
1.02 KB
|
W:
|
H:
2-up
Swipe
Onion skin
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment