Merge lp:~a11patfr/lenasys/thebranch into lp:~lenasysimpl1/lenasys/GammaBear
- thebranch
- Merge into GammaBear
Proposed by
Patrik Fransson
Status: | Merged | ||||
---|---|---|---|---|---|
Merged at revision: | 20 | ||||
Proposed branch: | lp:~a11patfr/lenasys/thebranch | ||||
Merge into: | lp:~lenasysimpl1/lenasys/GammaBear | ||||
Diff against target: |
1098 lines (+388/-341) 20 files modified
.bzrignore (+4/-0) Code Tokenizer and Parser/Parser_Test.css (+11/-0) Code Tokenizer and Parser/Parser_Test.html (+3/-10) Code Tokenizer and Parser/Parser_Test.js (+4/-3) Code Viewer Alt/Codeviewer/showcode.php (+23/-23) CodeViewer/Lindex.html (+1/-177) DuggaSys/duggor/Dugga 3 Datorgrafik - Transformationer/dugga_datorgrafik_1_transforms.php (+2/-2) DuggaSys/duggor/index.html (+1/-1) DuggaSys/index.php (+1/-1) DuggaSys/quizAjax/index.html (+2/-1) DuggaSys/quizSystem/frontpage.html.php (+0/-5) Widget Library/sliderdemo.css (+0/-36) Widget Library/sliderdemo.html (+15/-11) Widget Library/sliderdemo.js (+0/-43) Widget Library/sliders.css (+82/-0) Widget Library/sliders.js (+202/-0) svg Converter/svgconverter.css (+10/-0) svg Converter/svgconverter.js (+9/-9) svg Converter/svgconverter.php (+8/-6) svg Converter/svgtocanvas.php (+10/-13) |
||||
To merge this branch: | bzr merge lp:~a11patfr/lenasys/thebranch | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Victor Nagy | Approve | ||
Review via email: mp+157053@code.launchpad.net |
Commit message
Description of the change
Fixed bug #1163729. The bug was already fixed, wrongly filed bug report or was the bug never marked as fixed?
To post a comment you must log in.
Revision history for this message
Victor Nagy (galaxyabstractor) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === added file '.bzrignore' |
2 | --- .bzrignore 1970-01-01 00:00:00 +0000 |
3 | +++ .bzrignore 2013-04-04 09:06:24 +0000 |
4 | @@ -0,0 +1,4 @@ |
5 | +.DS_Store |
6 | +*/.DS_Store |
7 | +*/*/.DS_Store |
8 | +**/.DS_Store |
9 | |
10 | === added file 'Code Tokenizer and Parser/Parser_Test.css' |
11 | --- Code Tokenizer and Parser/Parser_Test.css 1970-01-01 00:00:00 +0000 |
12 | +++ Code Tokenizer and Parser/Parser_Test.css 2013-04-04 09:06:24 +0000 |
13 | @@ -0,0 +1,11 @@ |
14 | +@charset "utf-8"; |
15 | + |
16 | +#infobox{ |
17 | + border:2px solid black; |
18 | + background-color:#fed; |
19 | + width:500; |
20 | + height:1200; |
21 | + padding:4px; |
22 | + vertical-align:top; |
23 | + float:left; |
24 | +} |
25 | \ No newline at end of file |
26 | |
27 | === modified file 'Code Tokenizer and Parser/Parser_Test.html' |
28 | --- Code Tokenizer and Parser/Parser_Test.html 2013-03-28 14:41:09 +0000 |
29 | +++ Code Tokenizer and Parser/Parser_Test.html 2013-04-04 09:06:24 +0000 |
30 | @@ -2,19 +2,12 @@ |
31 | <html> |
32 | <head> |
33 | <title>Parser test</title> |
34 | + <link rel="stylesheet" href="Parser_Test.css" type="text/css" media="screen" /> |
35 | <script type="text/javascript" src="Parser_Test.js"></script> |
36 | </head> |
37 | <body onload="newbutton();"> |
38 | - <table> |
39 | - <tr> |
40 | - <td valign="top"> |
41 | - <div style="border:2px solid black;background-color:#fed;width:500;height:1200;"> |
42 | - <div id="infobox" style="padding:4px;"> |
43 | - </div> |
44 | - </div> |
45 | - </td> |
46 | - </tr> |
47 | - </table> |
48 | + <div id="infobox"> |
49 | + </div> |
50 | </body> |
51 | </html> |
52 | |
53 | |
54 | === modified file 'Code Tokenizer and Parser/Parser_Test.js' |
55 | --- Code Tokenizer and Parser/Parser_Test.js 2013-04-02 07:16:07 +0000 |
56 | +++ Code Tokenizer and Parser/Parser_Test.js 2013-04-04 09:06:24 +0000 |
57 | @@ -17,7 +17,7 @@ |
58 | * Creates a new token object using the constructor |
59 | */ |
60 | |
61 | -function maketoken(kind, val, from, to, rowno) { |
62 | +function makeToken(kind, val, from, to, rowno) { |
63 | newtoken = new token(kind, val, from, to, rowno); |
64 | tokens.push(newtoken); |
65 | } |
66 | @@ -131,7 +131,8 @@ |
67 | } else { |
68 | error('Bad Number: ', str, row); |
69 | } |
70 | - } else if (c == '\'' || c == '"') { // String .. handles c style breaking codes |
71 | + // String .. handles c style breaking codes |
72 | + } else if (c == '\'' || c == '"') { |
73 | str = ''; |
74 | q = c; |
75 | i++; |
76 | @@ -240,7 +241,7 @@ |
77 | } |
78 | } |
79 | } |
80 | - function newbutton() |
81 | + function newButton() |
82 | { |
83 | var funclist; |
84 | var oplist; |
85 | |
86 | === modified file 'Code Viewer Alt/Codeviewer/showcode.php' |
87 | --- Code Viewer Alt/Codeviewer/showcode.php 2013-03-28 15:33:33 +0000 |
88 | +++ Code Viewer Alt/Codeviewer/showcode.php 2013-04-04 09:06:24 +0000 |
89 | @@ -1,6 +1,6 @@ |
90 | <?php |
91 | |
92 | - function menulayout($forward,$backward,$downloadlink,$heading,$headinglink,$filecontent) { |
93 | + function menulayout($forward, $backward, $downloadlink, $heading, $headinglink, $filecontent) { |
94 | echo "<body onload='resize();' onresize='resize();'>"; |
95 | echo "<script language=\"javascript\" src=\"../jquery/jquery-1.8.2.min.js\"></script>"; |
96 | |
97 | @@ -17,7 +17,7 @@ |
98 | echo "</td>"; |
99 | } |
100 | |
101 | - if($forward!="") { |
102 | + if($forward != "") { |
103 | echo "<td class='buttonstyle'>"; |
104 | echo "<a href='".$forward."'><img src='../img/next.png'></a>"; |
105 | echo "</td>"; |
106 | @@ -57,53 +57,53 @@ |
107 | echo "</body>"; |
108 | } |
109 | |
110 | - function showfile($interestingrows,$keywords,$highlight,$filename) { |
111 | + function showfile($interestingrows, $keywords, $highlight, $filename) { |
112 | echo "<pre>"; |
113 | $handle = @fopen($filename, "r"); |
114 | if ($handle) { |
115 | - $lineno=1; |
116 | + $lineno = 1; |
117 | while (($buffer = fgets($handle, 4096)) !== false) { |
118 | - $buffer = str_replace("\n","", $buffer); |
119 | - $buffer = str_replace("\r","", $buffer); |
120 | - $buffer=str_pad($buffer,150," ", STR_PAD_RIGHT); |
121 | - $buffer=str_replace("<","<",$buffer); |
122 | - $buffer=str_replace(">",">",$buffer); |
123 | - $buffer=str_replace("\t"," ",$buffer); |
124 | + $buffer = str_replace("\n", "", $buffer); |
125 | + $buffer = str_replace("\r", "", $buffer); |
126 | + $buffer = str_pad($buffer, 150, " ", STR_PAD_RIGHT); |
127 | + $buffer = str_replace("<", "<", $buffer); |
128 | + $buffer = str_replace(">", ">", $buffer); |
129 | + $buffer = str_replace("\t", " " , $buffer); |
130 | |
131 | - $interesting=0; |
132 | - $startspan=0; |
133 | + $interesting = 0; |
134 | + $startspan = 0; |
135 | foreach($interestingrows as $row) { |
136 | - if($lineno>=$row[0]&&$lineno <= $row[1]){ |
137 | + if($lineno >= $row[0] && $lineno <= $row[1]){ |
138 | $interesting = true; |
139 | } |
140 | } |
141 | |
142 | foreach($keywords as $keyword) { |
143 | - if($interesting){ |
144 | - $buffer=str_replace($keyword,"<span class='keywordinteresting'>".$keyword."</span>",$buffer); |
145 | + if($interesting) { |
146 | + $buffer = str_replace($keyword, "<span class='keywordinteresting'>".$keyword."</span>", $buffer); |
147 | } else { |
148 | - $buffer=str_replace($keyword,"<span class='keyword'>".$keyword."</span>",$buffer); |
149 | + $buffer = str_replace($keyword, "<span class='keyword'>".$keyword."</span>", $buffer); |
150 | } |
151 | } |
152 | |
153 | - $commentpos=strpos($buffer,"//"); |
154 | + $commentpos = strpos($buffer, "//"); |
155 | if(!$commentpos) { |
156 | - $commentpos=5000; |
157 | + $commentpos = 5000; |
158 | } |
159 | foreach($highlight as $highlightkeyword) { |
160 | - $foundpos = strpos($buffer,$highlightkeyword[0]); |
161 | + $foundpos = strpos($buffer, $highlightkeyword[0]); |
162 | if($foundpos <= $commentpos) { |
163 | - $buffer = str_replace($highlightkeyword[0],"<span class='".$highlightkeyword[1]."'>".$highlightkeyword[0]."</span>",$buffer); |
164 | + $buffer = str_replace($highlightkeyword[0], "<span class='".$highlightkeyword[1]."'>".$highlightkeyword[0]."</span>", $buffer); |
165 | } |
166 | } |
167 | |
168 | if($commentpos < 5000) { |
169 | - $buffer = str_replace("//","<span class='commented'>//",$buffer); |
170 | - $buffer.="</span>"; |
171 | + $buffer = str_replace("//","<span class='commented'>//", $buffer); |
172 | + $buffer .= "</span>"; |
173 | } |
174 | |
175 | $linenostr = $lineno; |
176 | - $linenostr = str_pad($linenostr,3," ",STR_PAD_RIGHT); |
177 | + $linenostr = str_pad($linenostr, 3, " ", STR_PAD_RIGHT); |
178 | |
179 | if($interesting) { |
180 | echo "<span class='interesting'>"; |
181 | |
182 | === modified file 'CodeViewer/Lindex.html' |
183 | --- CodeViewer/Lindex.html 2013-03-26 23:22:55 +0000 |
184 | +++ CodeViewer/Lindex.html 2013-04-04 09:06:24 +0000 |
185 | @@ -2,183 +2,7 @@ |
186 | <html> |
187 | <head> |
188 | <title>Webbprogrammering DA330G</title> |
189 | - <style> |
190 | - |
191 | - .group |
192 | - { |
193 | - display: block; |
194 | - padding: 1em; |
195 | - width: 100%; |
196 | - margin: auto auto; |
197 | - font-family: "Franklin Gothic Medium", "Franklin Gothic", "ITC Franklin Gothic", Arial, sans-serif; |
198 | - } |
199 | - |
200 | - .group h1 |
201 | - { |
202 | - font-weight: normal; |
203 | - font-size: 1.8em; |
204 | - margin-bottom: 1em; |
205 | - |
206 | - font-family: Cambria, Georgia, serif; |
207 | - } |
208 | - |
209 | - .group .info |
210 | - { |
211 | - padding: 0.4em; |
212 | - margin: 0.5em; |
213 | - font-size: 1em; |
214 | - color: #000; |
215 | - } |
216 | - |
217 | - .group .info:first-letter |
218 | - { |
219 | - font-size:1.3em; |
220 | - } |
221 | - |
222 | - .group h2 |
223 | - { |
224 | - font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif; |
225 | - border-bottom: 2px solid #000; |
226 | - color: #fff; |
227 | - background: #c0d0e0; |
228 | - background-color: #c0d0e0; |
229 | - |
230 | - text-shadow: 1px 1px 2px #000; |
231 | - font-weight:normal; |
232 | - |
233 | - background: linear-gradient(to top, #abc 10%, #89a 90%, #678 99% ); |
234 | - background: -webkit-linear-gradient(bottom, #abc 10%, #89a 90%, #678 99%); |
235 | - background: -moz-linear-gradient(bottom, #abc 10%, #89a 90%, #678 99%); |
236 | - |
237 | - font-size: 1.4em; |
238 | - margin-top: 1em; |
239 | - margin-bottom: 0; |
240 | - padding:3px; |
241 | - |
242 | - padding-left:20px; |
243 | - } |
244 | - |
245 | - a |
246 | - { |
247 | - line-height: 2em; |
248 | - margin-left: 1.3em; |
249 | - color: black; |
250 | - text-decoration: underline; |
251 | - font-size: 1em; |
252 | - } |
253 | - |
254 | - li |
255 | - { |
256 | - color: #555; |
257 | - } |
258 | - |
259 | - a:hover |
260 | - { |
261 | - text-decoration: none; |
262 | - } |
263 | - |
264 | - .container |
265 | - { |
266 | - border-left: 2px dotted #ddd; |
267 | - margin-left: 8px; |
268 | - } |
269 | - |
270 | - .container .demo |
271 | - { |
272 | - float:right; |
273 | - } |
274 | - |
275 | - body{ |
276 | - margin:0; |
277 | - } |
278 | - |
279 | - #menu |
280 | - { |
281 | - position:fixed; |
282 | - top:40px; |
283 | - width:10.5%; |
284 | - padding: 10px 0 1% 0.3%; |
285 | - background: #c0d0e0; |
286 | - background-color: #c0d0e0; |
287 | - border-bottom-right-radius: 1.3em; |
288 | - border-top-right-radius: 1.3em; |
289 | - border-bottom: 2px solid #000; |
290 | - border-right: 1px solid #000; |
291 | - color: #fff; |
292 | - |
293 | - text-shadow: 1px 1px 2px #000; |
294 | - font-weight:bolder; |
295 | - |
296 | - background:#678; |
297 | - background-color:#678; |
298 | - |
299 | - background: linear-gradient(to top, #abc 10%, #89a 90%, #678 99% ); |
300 | - background: -webkit-linear-gradient(bottom, #abc 10%, #89a 90%, #678 99%); |
301 | - background: -moz-linear-gradient(bottom, #abc 10%, #89a 90%, #678 99%); |
302 | - |
303 | - } |
304 | - |
305 | - #menu #menuHeader{ |
306 | - margin:0 0 1.5% 0; |
307 | - background:#333333; |
308 | - width:97%; |
309 | - height:31px; |
310 | - padding-left:10px; |
311 | - margin-left:-10px; |
312 | - border-radius: 0 10px 10px 0 |
313 | - } |
314 | - |
315 | - #menuHeader h3{ |
316 | - float:left; |
317 | - font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif; |
318 | - font-size:1.2em; |
319 | - background-color:#333; |
320 | - color:#fff; |
321 | - width:80%; |
322 | - margin-top:4px; |
323 | - padding:0; |
324 | - } |
325 | - |
326 | - #menuArrow{ |
327 | - float:left; |
328 | - padding:0; |
329 | - margin-top:8px; |
330 | - width:15%; |
331 | - } |
332 | - |
333 | - #menu a{ |
334 | - display:block;color:#fff; |
335 | - font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif; |
336 | - text-decoration: none; |
337 | - margin-left:1%; |
338 | - font-size:100% |
339 | - } |
340 | - |
341 | - #menu a:hover{ |
342 | - font-weight:bolder; |
343 | - text-decoration:underline; |
344 | - } |
345 | - |
346 | - #menuItems{ |
347 | - float:left; |
348 | - width:80%; |
349 | - } |
350 | - |
351 | - #sidebar{ |
352 | - float:left; |
353 | - min-width:11%; |
354 | - min-height:100px; |
355 | - overflow:auto; |
356 | - } |
357 | - |
358 | - #content{ |
359 | - float:left; |
360 | - width:75%; |
361 | - } |
362 | - |
363 | - </style> |
364 | - |
365 | - </script> |
366 | + <link rel="stylesheet" href="Lindex.css" type="text/css" media="screen" /> |
367 | </head> |
368 | <body> |
369 | <div id="sidebar"> |
370 | |
371 | === modified file 'DuggaSys/duggor/Dugga 3 Datorgrafik - Transformationer/dugga_datorgrafik_1_transforms.php' |
372 | --- DuggaSys/duggor/Dugga 3 Datorgrafik - Transformationer/dugga_datorgrafik_1_transforms.php 2013-04-03 12:44:23 +0000 |
373 | +++ DuggaSys/duggor/Dugga 3 Datorgrafik - Transformationer/dugga_datorgrafik_1_transforms.php 2013-04-04 09:06:24 +0000 |
374 | @@ -1,10 +1,10 @@ |
375 | <?php |
376 | |
377 | - //include "dugga_checklogin.php"; |
378 | +include "dugga_checklogin.php"; |
379 | |
380 | $accountname="EgonKleveen"; |
381 | |
382 | -if (true): ?> |
383 | +if($accountname=checkLogin($errorMsg): ?> |
384 | |
385 | <html> |
386 | <head> |
387 | |
388 | === modified file 'DuggaSys/duggor/index.html' |
389 | --- DuggaSys/duggor/index.html 2013-04-03 12:44:23 +0000 |
390 | +++ DuggaSys/duggor/index.html 2013-04-04 09:06:24 +0000 |
391 | @@ -37,4 +37,4 @@ |
392 | <p>Glöm inte att spara svarskoden!</p> |
393 | </fieldset> |
394 | </body> |
395 | -</html> |
396 | \ No newline at end of file |
397 | +</html> |
398 | |
399 | === modified file 'DuggaSys/index.php' |
400 | --- DuggaSys/index.php 2013-04-03 12:44:23 +0000 |
401 | +++ DuggaSys/index.php 2013-04-04 09:06:24 +0000 |
402 | @@ -9,4 +9,4 @@ |
403 | <body> |
404 | <h1>Quiz server</h1> |
405 | </body> |
406 | -</html> |
407 | \ No newline at end of file |
408 | +</html> |
409 | |
410 | === modified file 'DuggaSys/quizAjax/index.html' |
411 | --- DuggaSys/quizAjax/index.html 2013-04-03 12:44:23 +0000 |
412 | +++ DuggaSys/quizAjax/index.html 2013-04-04 09:06:24 +0000 |
413 | @@ -1,4 +1,5 @@ |
414 | -<html> |
415 | +<!DOCTYPE HTML> |
416 | +<html> |
417 | <head> |
418 | <meta charset="utf-8" /> |
419 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
420 | |
421 | === removed file 'DuggaSys/quizSystem/frontpage.html.php' |
422 | --- DuggaSys/quizSystem/frontpage.html.php 2013-03-26 23:22:55 +0000 |
423 | +++ DuggaSys/quizSystem/frontpage.html.php 1970-01-01 00:00:00 +0000 |
424 | @@ -1,5 +0,0 @@ |
425 | -<h2>Quiz system - Beta</h2> |
426 | -<img scr="" alt="Fancy logotype" /> |
427 | -<p>Descriptive text</p> |
428 | -<p>Licensing text</p> |
429 | - |
430 | |
431 | === removed file 'Widget Library/sliderdemo.css' |
432 | --- Widget Library/sliderdemo.css 2013-04-02 13:51:45 +0000 |
433 | +++ Widget Library/sliderdemo.css 1970-01-01 00:00:00 +0000 |
434 | @@ -1,36 +0,0 @@ |
435 | -#container { |
436 | - background-color: #d0d0d4; |
437 | - border-radius: 10px; |
438 | - width: 220px; |
439 | - height: 300px; |
440 | - padding: 6px; |
441 | -} |
442 | - |
443 | -#sliderbox { |
444 | - float:left; |
445 | - width:40px; |
446 | - height:32px; |
447 | - font-family:Trebuchet,sans-serif; |
448 | - font-size:18px; |
449 | -} |
450 | - |
451 | -#slider1 { |
452 | - margin-left:42px; |
453 | - width:160px; |
454 | - height:32px; |
455 | - border-style:none; |
456 | - border-width:1px; |
457 | - background-position:center; |
458 | - background-image:url('sliderline.png'); |
459 | - background-repeat:repeat-x; |
460 | -} |
461 | - |
462 | -#slider1marker { |
463 | - position:relative; |
464 | - left:60px; |
465 | - width:14px; |
466 | - height:32px; |
467 | - background-image:url('sliderring14.png'); |
468 | - background-repeat:no-repeat; |
469 | - background-position:center; |
470 | -} |
471 | \ No newline at end of file |
472 | |
473 | === modified file 'Widget Library/sliderdemo.html' |
474 | --- Widget Library/sliderdemo.html 2013-04-02 13:51:45 +0000 |
475 | +++ Widget Library/sliderdemo.html 2013-04-04 09:06:24 +0000 |
476 | @@ -2,19 +2,23 @@ |
477 | <html> |
478 | <head> |
479 | <title>Slider Demo</title> |
480 | - <link rel="stylesheet" type="text/css" href="sliderdemo.css"> |
481 | - <script type="text/javascript" src="sliderdemo.js"></script> |
482 | + <link rel="stylesheet" type="text/css" media="screen" href="sliders.css"> |
483 | + <script type="text/javascript" src="sliders.js"></script> |
484 | + <script> |
485 | + function createDemoSliders() { |
486 | + str = ""; |
487 | + str += makePanel(250, 200); |
488 | + str += makeLabel("Slider"); |
489 | + str += makeSlider("slider", 1, 2, 7, 4.5, 160, 5); |
490 | + str += makeLabel("Binary"); |
491 | + str += makeBinary("binary", 0); |
492 | + str += makePanelEnd(); |
493 | + document.getElementById("container").innerHTML = str; |
494 | + } |
495 | + </script> |
496 | </head> |
497 | - <body onmousedown="mbpress(event);" onmouseup="mbrelease(event);"> |
498 | + <body onload="createDemoSliders();" onmousedown="mbPress(event);" onmouseup="mbRelease(event);"> |
499 | <div id="container"> |
500 | - <br> |
501 | - <input id="slider1box" type="text"> |
502 | - <div id="slider1" onmousemove="updateslider(event, 1, 2, 7, 160, 'slider1marker', 'slider1box');" onmouseup="updateslider(event, 1, 2, 7, 160, 'slider1marker', 'slider1box');"> |
503 | - <div id="slider1marker"></div> |
504 | - </div> |
505 | - </div> |
506 | - <div id="demo"> |
507 | - Poo |
508 | </div> |
509 | </body> |
510 | </html> |
511 | \ No newline at end of file |
512 | |
513 | === removed file 'Widget Library/sliderdemo.js' |
514 | --- Widget Library/sliderdemo.js 2013-04-02 13:51:45 +0000 |
515 | +++ Widget Library/sliderdemo.js 1970-01-01 00:00:00 +0000 |
516 | @@ -1,43 +0,0 @@ |
517 | -// Recursive Pos of div in document - should work in most browsers |
518 | -function findPos(obj) { |
519 | - var curleft = curtop = 0; |
520 | - if (obj.offsetParent) { |
521 | - curleft = obj.offsetLeft; |
522 | - curtop = obj.offsetTop; |
523 | - while (obj = obj.offsetParent) { |
524 | - curleft += obj.offsetLeft; |
525 | - curtop += obj.offsetTop; |
526 | - } |
527 | - } |
528 | - return { |
529 | - x:curleft, |
530 | - y:curtop |
531 | - } |
532 | -} |
533 | - |
534 | -// The idea is to have a few functions like this one and minimum javascript intervention |
535 | -function updateslider(e, kind, smin, smax, slen, sliderid, boxid) { |
536 | - if(mb) { |
537 | - coords = findPos(e.currentTarget); |
538 | - coords.x = e.clientX - coords.x; |
539 | - coords.y = e.clientY - coords.y; |
540 | - cx = coords.x / slen; |
541 | - sd = smax - smin; |
542 | - val = smin + (sd * cx); |
543 | - if(kind == 1) { |
544 | - val = Math.round(val); |
545 | - } |
546 | - document.getElementById(boxid).value = val; |
547 | - document.getElementById(sliderid).style.left = Math.ceil((slen) * ((val - smin) / sd))+"px"; |
548 | - } |
549 | -} |
550 | - |
551 | -var mb = 0; |
552 | - |
553 | -function mbpress(e) { |
554 | - mb = 1; |
555 | -} |
556 | - |
557 | -function mbrelease(e) { |
558 | - mb = 0; |
559 | -} |
560 | \ No newline at end of file |
561 | |
562 | === added file 'Widget Library/sliders.css' |
563 | --- Widget Library/sliders.css 1970-01-01 00:00:00 +0000 |
564 | +++ Widget Library/sliders.css 2013-04-04 09:06:24 +0000 |
565 | @@ -0,0 +1,82 @@ |
566 | +.label { |
567 | + font-family: Calibri, Arial, sans-serif; |
568 | + color: #fff; |
569 | + text-shadow: 1px 1px 1px #222; |
570 | +} |
571 | + |
572 | +.panel { |
573 | + box-shadow: 2px 2px 6px #444; |
574 | + font-family: Arial; |
575 | + background-color: #d0d0d4; |
576 | + background: linear-gradient(to bottom, #f0f0e8 0%, #e8e8e8 1%, #b8b8b0 17%); |
577 | + border-radius: 10px; |
578 | + padding:6px; |
579 | +} |
580 | + |
581 | +.sliderBox { |
582 | + float: left; |
583 | + width: 40px; |
584 | + height: 32px; |
585 | + font-family: Calibri, Arial, sans-serif; |
586 | + font-size: 18px; |
587 | +} |
588 | + |
589 | +.sliderLine { |
590 | + margin-left: 60px; |
591 | + height: 32px; |
592 | + border-style: none; |
593 | + border-width: 1px; |
594 | + background-position: center; |
595 | + background-image: url("../media/Widget Library/sliderline.png"); |
596 | + background-repeat: repeat-x; |
597 | +} |
598 | + |
599 | +.sliderMarker { |
600 | + position: relative; |
601 | + width: 14px; |
602 | + height: 32px; |
603 | + background-image: url("../media/Widget Library/sliderring14.png"); |
604 | + background-repeat: no-repeat; |
605 | + background-position: center; |
606 | +} |
607 | + |
608 | +.sliderminValue { |
609 | + float: left; |
610 | +} |
611 | + |
612 | +.slidermidValue { |
613 | + text-shadow: 1px 1px 1px #222; |
614 | + font-family: Calibri, Arial, sans-serif; |
615 | + font-size: 12px; |
616 | + color: #fff; |
617 | + margin-left: 60px; |
618 | + text-align: center; |
619 | +} |
620 | + |
621 | +.slidermaxValue { |
622 | + float: right; |
623 | +} |
624 | + |
625 | +.binaryLine { |
626 | + width: 36px; |
627 | + height: 18px; |
628 | + border-radius: 10px; |
629 | + border-color: #555; |
630 | + border-width: 1px; |
631 | + border-style: solid; |
632 | + box-shadow: 2px 2px 2px #444 inset; |
633 | +} |
634 | + |
635 | +.binaryMarker { |
636 | + position: relative; |
637 | + top: 2px; |
638 | + width: 11px; |
639 | + height: 11px; |
640 | + border-color: #777; |
641 | + border-style: solid; |
642 | + border-radius: 6px; |
643 | + background-color: #fff; |
644 | + border-width: 1px; |
645 | + box-shadow: 2px 2px 2px #444; |
646 | + background: linear-gradient(to bottom, #fff 0%,#e0e0d8 60%); |
647 | +} |
648 | \ No newline at end of file |
649 | |
650 | === added file 'Widget Library/sliders.js' |
651 | --- Widget Library/sliders.js 1970-01-01 00:00:00 +0000 |
652 | +++ Widget Library/sliders.js 2013-04-04 09:06:24 +0000 |
653 | @@ -0,0 +1,202 @@ |
654 | +/* |
655 | + |
656 | +Widget Code! |
657 | + |
658 | +*/ |
659 | + |
660 | +// Recursive Pos of div in document - should work in most browsers |
661 | +function findPos(obj) { |
662 | + var curLeft = curTop = 0; |
663 | + if(obj.offsetParent) { |
664 | + curLeft = obj.offsetLeft |
665 | + curTop = obj.offsetTop |
666 | + while(obj = obj.offsetParent) { |
667 | + curLeft += obj.offsetLeft |
668 | + curTop += obj.offsetTop |
669 | + } |
670 | + } |
671 | + return { |
672 | + x:curLeft, |
673 | + y:curTop |
674 | + } |
675 | +} |
676 | + |
677 | +/* |
678 | + |
679 | +ui read widget functions |
680 | + |
681 | +*/ |
682 | + |
683 | +function readSlider(sliderId) { |
684 | + var value = parseFloat(document.getElementById(sliderId + "box").value); |
685 | + if(isNaN(value)) { |
686 | + value = 0.0; |
687 | + } |
688 | + return value; |
689 | +} |
690 | + |
691 | +function readBinary(binaryId) { |
692 | + lf = document.getElementById(binaryId + "marker").style.left; |
693 | + if(lf == "2px") { |
694 | + return 0; |
695 | + } else { |
696 | + return 1; |
697 | + } |
698 | +} |
699 | + |
700 | +/* |
701 | + |
702 | +ui change widget functions |
703 | + |
704 | +*/ |
705 | + |
706 | +// The idea is to have a few functions like this one and minimum javascript intervention |
707 | +function updateBinary(event, binaryId) { |
708 | + if(mb) { |
709 | + coords = findPos(event.currentTarget); |
710 | + coords.x = event.clientX - coords.x; |
711 | + coords.y = event.clientY - coords.y; |
712 | + if(coords.x > 24) { |
713 | + document.getElementById(binaryId + "marker").style.left = 20 + "px"; |
714 | + document.getElementById(binaryId).style.backgroundColor = "#ddd"; |
715 | + }else if(coords.x < 16) { |
716 | + document.getElementById(binaryId + "marker").style.left = 2 + "px"; |
717 | + document.getElementById(binaryId).style.backgroundColor = "#777"; |
718 | + } |
719 | + } |
720 | +} |
721 | + |
722 | +// The idea is to have a few functions like this one and minimum javascript intervention |
723 | +function updateSlider(event, kind, min, max, length, sliderId, boxId) { |
724 | + if(mb) { |
725 | + coords = findPos(event.currentTarget); |
726 | + coords.x = event.clientX - coords.x; |
727 | + coords.y = event.clientY - coords.y; |
728 | + cx = coords.x / length; |
729 | + sd = max - min; |
730 | + value = min + (sd * cx); |
731 | + if(value > max) value = max; |
732 | + if(kind == 0) { |
733 | + value = Math.round(value); |
734 | + } |
735 | + if(kind == 1) { |
736 | + value = Math.round(value * 10.0) / 10.0; |
737 | + } |
738 | + if(kind == 2) { |
739 | + value = Math.round(value * 100.0) / 100.0; |
740 | + } |
741 | + if(kind == 3) { |
742 | + value = Math.round(value * 1000.0) / 1000.0; |
743 | + } |
744 | + document.getElementById(boxId).value = value; |
745 | + document.getElementById(sliderId).style.left = Math.ceil((length) * ((value - min) / sd)) + "px"; |
746 | + } |
747 | +} |
748 | + |
749 | +function sliderPosition(value, min, max, length) { |
750 | + if(value < min) { |
751 | + value = min; |
752 | + } |
753 | + if(value > max) { |
754 | + value = max; |
755 | + } |
756 | + pos = Math.round(((value - min) / (max - min)) * length); |
757 | + return pos; |
758 | +} |
759 | + |
760 | +function changeSlider(value, sliderId, kind, min, max, length) { |
761 | + value = parseFloat(value); |
762 | + if(isNaN(value)) { |
763 | + value = 0.0; |
764 | + } |
765 | + if(value < min) { |
766 | + value = min; |
767 | + } |
768 | + if(value > max) { |
769 | + value = max; |
770 | + } |
771 | + if(kind == 0) { |
772 | + value = Math.round(value); |
773 | + } |
774 | + if(kind == 1) { |
775 | + value = Math.round(value * 10.0) / 10.0; |
776 | + } |
777 | + if(kind == 2) { |
778 | + value = Math.round(value * 100.0) / 100.0; |
779 | + } |
780 | + if(kind == 3) { |
781 | + value = Math.round(value * 1000.0) / 1000.0; |
782 | + } |
783 | + pos = sliderPosition(value, min, max, length); |
784 | + document.getElementById(sliderId + "box").value = value; |
785 | + document.getElementById(sliderId + "marker").style.left = pos + "px"; |
786 | +} |
787 | + |
788 | +/* |
789 | + |
790 | +ui make widget functions |
791 | + |
792 | +*/ |
793 | + |
794 | +function makeLabel(name) { |
795 | + s = ""; |
796 | + s += "<div class='label'>" + name + "</div>"; |
797 | + return s; |
798 | +} |
799 | + |
800 | +function makePanel(width, height) { |
801 | + s = ""; |
802 | + s += "<div class='panel' style='height: " + height + "px; width: " + width + "px;'>"; |
803 | + return s; |
804 | +} |
805 | + |
806 | +function makePanelEnd() { |
807 | + s = "</div>"; |
808 | + return s; |
809 | +} |
810 | + |
811 | +function makeSlider(sliderId, kind, minValue, maxValue, midValue, sliderWidth, defaultValue) { |
812 | + s = ""; |
813 | + defaultPosition = sliderPosition(defaultValue, minValue, maxValue, sliderWidth); |
814 | + if(defaultValue < minValue) { |
815 | + defaultValue = minValue; |
816 | + } |
817 | + if(defaultValue > maxValue) { |
818 | + defaultValue = maxValue; |
819 | + } |
820 | + s += "<input id='" + sliderId + "box' value='" + defaultValue + "' type='text' class='sliderBox' onBlur='changeSlider(this.value,\"" + sliderId + "\"," + kind + "," + minValue + "," + maxValue + "," + sliderWidth + ");'>"; |
821 | + s += "<div id='" + sliderId + "' class='sliderLine' style='width:" + sliderWidth + "px;'"; |
822 | + s += " onmousemove='updateSlider(event," + kind + "," + minValue + "," + maxValue + "," + sliderWidth + ",\"" + sliderId + "marker\",\"" + sliderId + "box\");'"; |
823 | + s += " onmouseup='updateSlider(event," + kind + "," + minValue + "," + maxValue + "," + sliderWidth + ",\"" + sliderId + "marker\",\"" + sliderId + "box\");'>"; |
824 | + s += " <div id='" + sliderId + "marker' class='sliderMarker' style='left:" + defaultPosition + "px;'></div>"; |
825 | + s += "</div>"; |
826 | + s += "<div class='slidermidValue' style='width:" + sliderWidth + "px;'>" + midValue; |
827 | + s += "<div class='sliderminValue'>" + minValue + "</div>"; |
828 | + s += "<div class='slidermaxValue'>" + maxValue + "</div></div>"; |
829 | + return s; |
830 | +} |
831 | + |
832 | +function makeBinary(binaryId, defaultValue) { |
833 | + s = ""; |
834 | + if(defaultValue == 1) { |
835 | + defaultPosition = 20; |
836 | + defaultColor = "#ddd"; |
837 | + } else { |
838 | + defaultPosition = 2; |
839 | + defaultColor = "#777"; |
840 | + } |
841 | + s += "<div id='" + binaryId + "' class='binaryLine' style='background-color:" + defaultColor + ";' onmousemove='updateBinary(event,\"" + binaryId + "\");' onmouseup='updateBinary(event,\"" + binaryId + "\");'>"; |
842 | + s += "<div id='" + binaryId + "marker' class='binaryMarker' style='left:" + defaultPosition + "px;'></div>"; |
843 | + s += "</div>"; |
844 | + return s; |
845 | +} |
846 | + |
847 | +var mb = 0; |
848 | + |
849 | +function mbPress(event) { |
850 | + mb = 1; |
851 | +} |
852 | + |
853 | +function mbRelease(event) { |
854 | + mb = 0; |
855 | +} |
856 | \ No newline at end of file |
857 | |
858 | === added directory 'media/Widget Library' |
859 | === renamed file 'Widget Library/sliderline.png' => 'media/Widget Library/sliderline.png' |
860 | === renamed file 'Widget Library/sliderring14.png' => 'media/Widget Library/sliderring14.png' |
861 | === added directory 'media/svgconverter' |
862 | === renamed file 'svg Converter/AmoebaBody.svg' => 'media/svgconverter/AmoebaBody.svg' |
863 | === renamed file 'svg Converter/Amoebaface.svg' => 'media/svgconverter/Amoebaface.svg' |
864 | === renamed file 'svg Converter/Amoebaface_Eyes.svg' => 'media/svgconverter/Amoebaface_Eyes.svg' |
865 | === renamed file 'svg Converter/CubeIsometric.svg' => 'media/svgconverter/CubeIsometric.svg' |
866 | === renamed file 'svg Converter/CubeTwoDee.svg' => 'media/svgconverter/CubeTwoDee.svg' |
867 | === renamed file 'svg Converter/Map_Cloud.svg' => 'media/svgconverter/Map_Cloud.svg' |
868 | === renamed file 'svg Converter/Map_Sun.svg' => 'media/svgconverter/Map_Sun.svg' |
869 | === renamed file 'svg Converter/Map_Sweden.svg' => 'media/svgconverter/Map_Sweden.svg' |
870 | === renamed file 'svg Converter/Seat_With_Armrest.svg' => 'media/svgconverter/Seat_With_Armrest.svg' |
871 | === renamed file 'svg Converter/TestHole.svg' => 'media/svgconverter/TestHole.svg' |
872 | === renamed file 'svg Converter/TestHoleII.svg' => 'media/svgconverter/TestHoleII.svg' |
873 | === renamed file 'svg Converter/Washer_Dryer.svg' => 'media/svgconverter/Washer_Dryer.svg' |
874 | === renamed file 'svg Converter/Washer_Dryer_Isometric.svg' => 'media/svgconverter/Washer_Dryer_Isometric.svg' |
875 | === renamed file 'svg Converter/Washer_Washer.svg' => 'media/svgconverter/Washer_Washer.svg' |
876 | === renamed file 'svg Converter/Washer_Washer_Isometric.svg' => 'media/svgconverter/Washer_Washer_Isometric.svg' |
877 | === added file 'svg Converter/svgconverter.css' |
878 | --- svg Converter/svgconverter.css 1970-01-01 00:00:00 +0000 |
879 | +++ svg Converter/svgconverter.css 2013-04-04 09:06:24 +0000 |
880 | @@ -0,0 +1,10 @@ |
881 | +#content { |
882 | + font-family: Calibri,Georgia,Serif; |
883 | +} |
884 | + |
885 | +#preview { |
886 | + border: outset 3px #ffeedd; |
887 | + background-color: #fff8f8; |
888 | + font-family: Calibri,Georgia,Serif; |
889 | + vertical-align: text-top; |
890 | +} |
891 | \ No newline at end of file |
892 | |
893 | === renamed file 'svg Converter/SVG_httpAjax.js' => 'svg Converter/svgconverter.js' |
894 | --- svg Converter/SVG_httpAjax.js 2013-04-02 13:00:31 +0000 |
895 | +++ svg Converter/svgconverter.js 2013-04-04 09:06:24 +0000 |
896 | @@ -6,9 +6,9 @@ |
897 | var AJAXServiceRunning=false; |
898 | var AJAXReturnfunction; |
899 | var httpAjax = false; |
900 | - function getSVG(fileName){ |
901 | - paramstr="svgname="+escape(fileName); |
902 | - AjaxService("SVG_TO_CANVAS_III.php",paramstr,"returnedSVG"); |
903 | + function getSVG(fileName) { |
904 | + paramstr="svgname="+escape(fileName); |
905 | + AjaxService("svgtocanvas.php",paramstr,"returnedSVG"); |
906 | } |
907 | |
908 | /*-------------------------------------------------------------------------------- |
909 | @@ -42,7 +42,7 @@ |
910 | Each service uses a different url and a different parameter layout. |
911 | |
912 | ----------------------------------------------------------------------------------*/ |
913 | - function AjaxServiceExec( servicename, serviceparam ) { |
914 | + function AjaxServiceExec(servicename, serviceparam) { |
915 | // Parameters are set, initiate AJAX engine |
916 | if( window.XMLHttpRequest ) { |
917 | httpAjax = new XMLHttpRequest(); |
918 | @@ -65,7 +65,7 @@ |
919 | try{ |
920 | httpAjax.onreadystatechange = getPage; |
921 | } |
922 | - catch(e){ |
923 | + catch(e) { |
924 | alert( "onreadystatechange didn´t go well!" ); |
925 | return false; |
926 | } |
927 | @@ -73,14 +73,14 @@ |
928 | httpAjax.open( 'POST', servicename, true ); |
929 | httpAjax.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded;" ); |
930 | } |
931 | - catch(e){ |
932 | + catch(e) { |
933 | alert( "Couldn´t open url." ); |
934 | return false; |
935 | } |
936 | try{ |
937 | httpAjax.send( serviceparam ); |
938 | } |
939 | - catch(e){ |
940 | + catch(e) { |
941 | alert( "Couldn´t send request." ); |
942 | return false; |
943 | } |
944 | @@ -96,9 +96,9 @@ |
945 | ----------------------------------------------------------------------------------*/ |
946 | |
947 | function getPage() { |
948 | - if(httpAjax.readyState == 4){ |
949 | + if(httpAjax.readyState == 4) { |
950 | tr = httpAjax.responseText; |
951 | - eval( AJAXReturnfunction + '(str);' ); |
952 | + eval( AJAXReturnfunction + '(tr);' ); |
953 | if( AJAXQueue.length > 0 ) { |
954 | AJAXReturnfunction = AJAXQueue.pop(); |
955 | var Aparam = AJAXQueue.pop(); |
956 | |
957 | === renamed file 'svg Converter/index.php' => 'svg Converter/svgconverter.php' |
958 | --- svg Converter/index.php 2013-04-02 07:16:49 +0000 |
959 | +++ svg Converter/svgconverter.php 2013-04-04 09:06:24 +0000 |
960 | @@ -1,13 +1,15 @@ |
961 | +<!DOCTYPE html> |
962 | <html> |
963 | |
964 | <head> |
965 | - <script language="javascript" src="SVG_httpAjax.js"> |
966 | + <script language="javascript" src="svgconverter.js"> |
967 | </script> |
968 | + <link rel="stylesheet" type="text/css" href="svgconverter.css"> |
969 | </head> |
970 | |
971 | <body> |
972 | <table><tr> |
973 | - <td style="border:outset 3px #ffeedd; background-color: #fff8f8;font-family:Calibri,Georgia,Serif;" valign="top"> |
974 | + <td id='preview'> |
975 | <?php |
976 | function endsWith($haystack, $needle, $case=true) { |
977 | if($case){ |
978 | @@ -15,7 +17,7 @@ |
979 | } |
980 | return( strcasecmp( substr( $haystack, strlen( $haystack) - strlen( $needle )), $needle ) === 0 ); |
981 | } |
982 | - $dir = opendir( '.' ); |
983 | + $dir = opendir( '../media/svgconverter' ); |
984 | while(( $file = readdir( $dir )) !== false ) { |
985 | if( endsWith( $file, ".svg" )) { |
986 | echo "<span onmouseover='this.style.backgroundColor=\"#000\";this.style.color=\"#fff\"' onmouseout='this.style.backgroundColor=\"#fff8f8\";this.style.color=\"#000\"' style='cursor:pointer;' onclick='getSVG(\"".$file."\");'>".$file."</span><br>"; |
987 | @@ -23,13 +25,13 @@ |
988 | } |
989 | ?> |
990 | </td> |
991 | - <td id='preview' style="border:outset 3px #ffeedd; background-color: #fff8f8;font-family:Calibri,Georgia,Serif;" valign="top"> |
992 | + <td id='preview'> |
993 | Preview:<br> |
994 | <canvas width="700" height="700" id="previewCanvas"> |
995 | </canvas> |
996 | </td> |
997 | - <td style="border:outset 3px #ffeedd; background-color: #fff8f8;" valign="top"> |
998 | - <pre id='content' style='font-family:Calibri,Georgia,Serif;'> |
999 | + <td id='preview'> |
1000 | + <pre id='content'> |
1001 | </pre> |
1002 | </td> |
1003 | </tr></table> |
1004 | |
1005 | === renamed file 'svg Converter/SVG_TO_CANVAS_III.php' => 'svg Converter/svgtocanvas.php' |
1006 | --- svg Converter/SVG_TO_CANVAS_III.php 2013-03-28 15:46:11 +0000 |
1007 | +++ svg Converter/svgtocanvas.php 2013-04-04 09:06:24 +0000 |
1008 | @@ -44,10 +44,6 @@ |
1009 | // Fix for SVG Style attribute errors if no ; is found i.e. attribute is last attribute of style string the code now works (untested) |
1010 | // Fix for SVG Font Size Bug - px was replaced with 0 instead of "" meaning that some times 2px would turn to 20 |
1011 | // Fix: fontstyle or line style etc missing if style="" is used instead of font attributes. Error produced: fontstyle fontline fontfamily missing line 707-709 / Translate Rotate Scale missing 710-712 among others svg ARC 02 Should work now. |
1012 | -// Bug: Empty text in SVG text in proporcion |
1013 | -// Bug: If fill is after line, the change of fill is performed after line is drawn. (SVI_CFG from wikipedia and proporcion from wikipedia) |
1014 | -// Bug: translate support for groups or individual objects such as proporcion transform="translate(642.5,-1381.291)" or transform="matrix(0.999962,-8.674822e-3,8.674822e-3,0.999962,1115.829,2072.128)" |
1015 | -// |
1016 | //-------------------------------------------------------------------------- Next Version Blueprint |
1017 | // Version 3.7 |
1018 | // Curve Closing (html5) |
1019 | @@ -65,7 +61,8 @@ |
1020 | $gradientname = "foo"; |
1021 | $isinkscape = false; |
1022 | $stopcounter = 0; |
1023 | - |
1024 | + $svgfilepath = "../media/svgconverter/"; |
1025 | + |
1026 | function recurseelement( $element ) { |
1027 | global $elementcounter; |
1028 | global $graphnodes; |
1029 | @@ -106,7 +103,7 @@ |
1030 | } |
1031 | |
1032 | if( isset( $_POST ['svgname'])) { |
1033 | - $svg = simplexml_load_file( $_POST ['svgname'] ); |
1034 | + $svg = simplexml_load_file( $svgfilepath . $_POST ['svgname'] ); |
1035 | // Recurse into elements and add to element stack |
1036 | // It is important to only process hierarchies of g elements and layers |
1037 | foreach( $svg as $element ) { |
1038 | @@ -325,7 +322,7 @@ |
1039 | $dostr = ""; |
1040 | } |
1041 | } else { |
1042 | - $dostr. = $dochr; |
1043 | + $dostr .= $dochr; |
1044 | } |
1045 | $j++; |
1046 | }while( $j <= strlen( $workstr )); |
1047 | @@ -415,7 +412,7 @@ |
1048 | echo "\n" . 'c.lineWidth = "' . $val . '";' . "\n"; |
1049 | } else if( $key == "points" &&( $graphelement -> getName() == "polygon" || $graphelement -> getName() == "polyline" || $graphelement -> getName() == "line" )) { |
1050 | if( $defsmode ) { |
1051 | - $defsstring. = "c.beginPath();\n"; |
1052 | + $defsstring .= "c.beginPath();\n"; |
1053 | } else { |
1054 | echo "c.beginPath();\n"; |
1055 | } |
1056 | @@ -440,7 +437,7 @@ |
1057 | $dostr = ""; |
1058 | } |
1059 | } else { |
1060 | - $dostr. = $dochr; |
1061 | + $dostr .= $dochr; |
1062 | } |
1063 | $j++; |
1064 | } while( $j <= strlen( $workstr )); |
1065 | @@ -450,13 +447,13 @@ |
1066 | for( $j = 0; $j < $noparams; $j += 2) { |
1067 | if( $j == 0 ) { |
1068 | if( $defsmode ) { |
1069 | - $defsstring. = "c.moveTo( ".$params [$j].",".$params [$j+1].");\n"; |
1070 | + $defsstring .= "c.moveTo( ".$params [$j].",".$params [$j+1].");\n"; |
1071 | } else { |
1072 | echo "c.moveTo( ".$params[$j].",".$params[$j+1].");\n"; |
1073 | } |
1074 | } else { |
1075 | if( $defsmode ) { |
1076 | - $defsstring. = "c.lineTo( ".$params[$j].",".$params[$j+1].");\n"; |
1077 | + $defsstring .= "c.lineTo( ".$params[$j].",".$params[$j+1].");\n"; |
1078 | } else { |
1079 | echo "c.lineTo( ".$params[$j].",".$params[$j+1].");\n"; |
1080 | } |
1081 | @@ -465,7 +462,7 @@ |
1082 | // If a polygon close path if not i.e. polyline keep it open |
1083 | if( $noparams >= 2 && $graphelement -> getName() == "polygon" ) { |
1084 | if( $defsmode ) { |
1085 | - $defsstring. = "c.lineTo( ".$params[0].",".$params[1]." );\n"; |
1086 | + $defsstring .= "c.lineTo( ".$params[0].",".$params[1]." );\n"; |
1087 | } else { |
1088 | echo "c.lineTo( ".$params[0].",".$params[1]." );\n"; |
1089 | } |
1090 | @@ -494,7 +491,7 @@ |
1091 | } |
1092 | } |
1093 | if( $defsmode ) { |
1094 | - $defsstring. = "c.clip();\n\n"; |
1095 | + $defsstring .= "c.clip();\n\n"; |
1096 | } |
1097 | } else if ( $key == "d" ) { |
1098 | $dval=$val; |