Modifications (couleurs, chanfreins...) pour un rapprochement vers Scratch
[mp-scratch.git] / src / Bloc.mp
index 5045b5b..e6d7ac3 100644 (file)
@@ -1,23 +1,39 @@
 vardef AffichageB=
   path cadre;
-  cadre=(llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb))--(ulcorner texto+(-eb,eb))--cycle;
+  cadre=(llcorner texto+(-eb,0))--(llcorner texto+(0,-eb))--
+    (llcorner texto+(0.375cm,0)+(-eb,-eb))--
+    (llcorner texto+(0.375cm,0)+(0,-2eb))--
+    (llcorner texto+(0.625cm,0)+(0,-2eb))--
+    (llcorner texto+(0.625cm,0)+(eb,-eb))--
+    (lrcorner texto+(0,-eb))--(lrcorner texto+(eb,0))--(urcorner texto+(eb,0))--(urcorner texto+(0,eb))--
+    (ulcorner texto+(0.625cm,0)+(eb,eb))--
+    (ulcorner texto+(0.625cm,0))--
+    (ulcorner texto+(0.375cm,0))--
+    (ulcorner texto+(0.375cm,0)+(-eb,eb))--
+    (ulcorner texto+(0,eb))--(ulcorner texto+(-eb,0))--cycle;
   picture TEXT;
   TEXT=image(
-      fill cadre withcolor DarkPurple;
+      fill cadre withcolor if unknown colBloc : DarkPurple else: colBloc fi;
     draw texto;
-    draw (llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb))--(ulcorner texto+(-eb,eb))--cycle;
+    draw cadre;
     );
   TEXT
 enddef;
 
 vardef AffichageBlocDef=
   path cadre;
-  cadre=(llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb)){dir165}..{dir-165}(ulcorner texto+(-eb,eb))--cycle;
+  cadre=(llcorner texto+(-eb,0))--(llcorner texto+(0,-eb))--
+    (llcorner texto+(0.375cm,0)+(-eb,-eb))--
+    (llcorner texto+(0.375cm,0)+(0,-2eb))--
+    (llcorner texto+(0.625cm,0)+(0,-2eb))--
+    (llcorner texto+(0.625cm,0)+(eb,-eb))--
+    (lrcorner texto+(0,-eb))--(lrcorner texto+(eb,0))--
+    (urcorner texto+(eb,eb)){dir165}..{dir-165}(ulcorner texto+(-eb,eb))--cycle;
   picture TEXT;
   TEXT=image(
-      fill cadre withcolor DarkPurple;
+      fill cadre withcolor if unknown colBloc : DarkPurple else: colBloc fi;
     draw texto;
-    draw cadre;%(llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb))--(ulcorner texto+(-eb,eb))--cycle;
+    draw cadre;
     );
   TEXT
 enddef;
@@ -30,6 +46,7 @@ vardef Bloc(expr nombloc)=
   );
 $=AffichageB shifted (if unknown _coinprec:(0,0) else : _coinprec fi - ulcorner AffichageB);
 _coinprec:=llcorner $;
+_coinprec:=_coinprec+(0,eb);
 $
 enddef;
 
@@ -37,10 +54,11 @@ vardef NouveauBloc(expr nombloc)=
   save $;
   picture $,texto;
   texto=image(
-      label.lrt(LATEX("\bfseries\color{white} Définir \colorbox{LightPurple}{\textcolor{white}{"&nombloc&"}}"),if unknown _coinprec:(0,0) else: _coinprec fi);
+      label.lrt(LATEX("\bfseries\color{white} définir \colorbox{LightPurple}{\textcolor{white}{"&nombloc&"}}"),if unknown _coinprec:(0,0) else: _coinprec fi);
   );
 $=AffichageBlocDef shifted (if unknown _coinprec:(0,0) else : _coinprec fi - ulcorner AffichageBlocDef);
 _coinprec:=llcorner $;
+_coinprec:=_coinprec+(0,eb);
 $
 enddef;
 

Licence Creative Commons Les fichiers de Syracuse sont mis à disposition (sauf mention contraire) selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.