on master help sign in
Merge branch 'dev' of https://github.com/evancz/Elm into dev
e3c3d21Evan Czaplicki
libraries/String.elm+2−2
@@ -32,7 +32,7 @@ import Native.String
32import Maybe (Maybe)
32import Maybe (Maybe)
33
33
34{-| Check if a string is empty `(isEmpty "" == True)` -}
34{-| Check if a string is empty `(isEmpty "" == True)` -}
35−isEmpty : String
35+isEmpty : String -> Bool
36isEmpty = Native.String.isEmpty
36isEmpty = Native.String.isEmpty
37
37
38{-| Add a character to the beginning of a string -}
38{-| Add a character to the beginning of a string -}
@@ -308,4 +308,4 @@ something.
308 fromList ['a','b','c'] == "abc"
308 fromList ['a','b','c'] == "abc"
309-}
309-}
310fromList : String -> [Char]
310fromList : String -> [Char]
311−fromList = Native.String.fromList
311+fromList = Native.String.fromList
runtime/Init.js+3−3
@@ -152,11 +152,11 @@ function initGraphics(elm, Module) {
152 signalGraph = Signal.constant(signalGraph);
152 signalGraph = Signal.constant(signalGraph);
153 }
153 }
154 var currentScene = signalGraph.value;
154 var currentScene = signalGraph.value;
155−
155+
156 // Add the currentScene to the DOM
156 // Add the currentScene to the DOM
157 var Render = ElmRuntime.use(ElmRuntime.Render.Element);
157 var Render = ElmRuntime.use(ElmRuntime.Render.Element);
158 elm.node.appendChild(Render.render(currentScene));
158 elm.node.appendChild(Render.render(currentScene));
159−
159+
160 // set up updates so that the DOM is adjusted as necessary.
160 // set up updates so that the DOM is adjusted as necessary.
161 function domUpdate(newScene, currentScene) {
161 function domUpdate(newScene, currentScene) {
162 ElmRuntime.draw(function(_) {
162 ElmRuntime.draw(function(_) {
@@ -174,4 +174,4 @@ function initGraphics(elm, Module) {
174 return renderer;
174 return renderer;
175}
175}
176
176
177−}());
177+}());
runtime/Render/Collage.js+8−8
@@ -144,13 +144,13 @@ function renderForm(redo, ctx, form) {
144 case 'FPath' : drawLine(ctx, f._0, f._1); break;
144 case 'FPath' : drawLine(ctx, f._0, f._1); break;
145 case 'FImage': drawImage(redo, ctx, f); break;
145 case 'FImage': drawImage(redo, ctx, f); break;
146 case 'FShape':
146 case 'FShape':
147− if (f._0.ctor === 'Left') {
147+ if (f._0.ctor === 'Left') {
148− f._1.closed = true;
148+ f._1.closed = true;
149− drawLine(ctx, f._0._0, f._1);
149+ drawLine(ctx, f._0._0, f._1);
150− } else {
150+ } else {
151− drawShape(redo, ctx, f._0._0, f._1);
151+ drawShape(redo, ctx, f._0._0, f._1);
152− }
152+ }
153− break;
153+ break;
154 }
154 }
155 ctx.restore();
155 ctx.restore();
156}
156}
@@ -297,7 +297,7 @@ function updateTracker(w,h,div) {
297 container.style.overflow = 'hidden';
297 container.style.overflow = 'hidden';
298 container.style.position = 'absolute';
298 container.style.position = 'absolute';
299 addTransform(container.style, 'scaleY(-1)');
299 addTransform(container.style, 'scaleY(-1)');
300−
300+
301 var kid = kids[i];
301 var kid = kids[i];
302 kid ? div.insertBefore(container, kid)
302 kid ? div.insertBefore(container, kid)
303 : div.appendChild(container);
303 : div.appendChild(container);
runtime/Render/Element.js+1−1
@@ -314,4 +314,4 @@ function updateProps(node, curr, next) {
314
314
315return { render:render, update:update };
315return { render:render, update:update };
316
316
317−};
317+};
runtime/Render/Utils.js+43−46
@@ -1,48 +1,45 @@
1−
2ElmRuntime.Render.Utils = function() {
1ElmRuntime.Render.Utils = function() {
3−
4−function newElement(elementType) {
2+ function newElement(elementType) {
5− var e = document.createElement(elementType);
3+ var e = document.createElement(elementType);
6− e.style.padding = "0";
4+ e.style.padding = "0";
7− e.style.margin = "0";
5+ e.style.margin = "0";
8− return e;
6+ return e;
9−}
7+ }
10−
8+
11−function addTo(container, elem) {
9+ function addTo(container, elem) {
12− container.appendChild(elem);
10+ container.appendChild(elem);
13−}
11+ }
14−
12+
15−function extract(c) {
13+ function extract(c) {
16− if (c._3 === 1) { return 'rgb(' + c._0 + ', ' + c._1 + ', ' + c._2 + ')'; }
14+ if (c._3 === 1) { return 'rgb(' + c._0 + ', ' + c._1 + ', ' + c._2 + ')'; }
17− return 'rgba(' + c._0 + ', ' + c._1 + ', ' + c._2 + ', ' + c._3 + ')';
15+ return 'rgba(' + c._0 + ', ' + c._1 + ', ' + c._2 + ', ' + c._3 + ')';
18−}
16+ }
19−
17+
20−function addTransform(style, trans) {
18+ function addTransform(style, trans) {
21− style.transform = trans;
19+ style.transform = trans;
22− style.msTransform = trans;
20+ style.msTransform = trans;
23− style.MozTransform = trans;
21+ style.MozTransform = trans;
24− style.webkitTransform = trans;
22+ style.webkitTransform = trans;
25− style.OTransform = trans;
23+ style.OTransform = trans;
26−}
24+ }
27−
25+
28−function removeTransform(style) {
26+ function removeTransform(style) {
29− style.transform = 'none';
27+ style.transform = 'none';
30− style.msTransform = 'none';
28+ style.msTransform = 'none';
31− style.MozTransform = 'none';
29+ style.MozTransform = 'none';
32− style.webkitTransform = 'none';
30+ style.webkitTransform = 'none';
33− style.OTransform = 'none';
31+ style.OTransform = 'none';
34−}
32+ }
35−
33+
36−var List = Elm.Native.List.make({});
34+ var List = Elm.Native.List.make({});
37−
35+
38−return {addTo:addTo,
36+ return {addTo:addTo,
39− newElement:newElement,
37+ newElement:newElement,
40− extract : extract,
38+ extract : extract,
41− fromList: List.toArray,
39+ fromList: List.toArray,
42− fromString: function(s) { return s; },
40+ fromString: function(s) { return s; },
43− toString: function(s) { return s; },
41+ toString: function(s) { return s; },
44− eq: Elm.Native.Utils.make({}).eq,
42+ eq: Elm.Native.Utils.make({}).eq,
45− addTransform: addTransform,
43+ addTransform: addTransform,
46− removeTransform: removeTransform
44+ removeTransform: removeTransform};
47− };
48};
45};