summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/latex/PfCEnquete.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/profcollege/latex/PfCEnquete.tex')
-rw-r--r--macros/latex/contrib/profcollege/latex/PfCEnquete.tex105
1 files changed, 105 insertions, 0 deletions
diff --git a/macros/latex/contrib/profcollege/latex/PfCEnquete.tex b/macros/latex/contrib/profcollege/latex/PfCEnquete.tex
new file mode 100644
index 0000000000..678b268c57
--- /dev/null
+++ b/macros/latex/contrib/profcollege/latex/PfCEnquete.tex
@@ -0,0 +1,105 @@
+%%%
+% Enquête
+%%%
+\setKVdefault[ClesEnquete]{Perso=Qui ?,Objet=Quoi ?,Lieu=Où ?,Largeur=4.5cm}
+
+\newcommand\Enquete[1][]{%
+ \useKVdefault[ClesEnquete]%
+ \setKV[ClesEnquete]{#1}%
+}
+
+\newcommand\ListePersonnages[1]{%
+ \setsepchar{§}%
+ \readlist*\RetiensListePersonnages{#1}%
+ \setsepchar{,}%
+}
+
+\newcommand\ListeObjets[1]{%
+ \setsepchar{§}%
+ \readlist*\RetiensListeObjets{#1}%
+ \setsepchar{,}%
+}
+
+\newcommand\ListeLieux[1]{%
+ \setsepchar{§}%
+ \readlist*\RetiensListeLieux{#1}%
+ \setsepchar{,}%
+}
+
+\newcommand\ListeQuestions[1]{%
+ \setsepchar[*]{§*/}%
+ \readlist*\RetiensListeQuestions{#1}
+ % On crée la liste des numéros des questions
+ \xdef\foo{}%
+ \xintFor* ##1 in {\xintSeq{1}{\RetiensListeQuestionslen}}\do{%
+ \xdef\foo{\foo ##1,}%
+ }%
+ % Mélange des questions
+ % on crée les 6 premieres solutions.
+ \MelangeListe{\foo}{\fpeval{\RetiensListePersonnageslen}}%
+ \readlist*\ListeMelangeePersonnages{\faa}%
+ \readlist*\ListeRestante{\fii}%\ListeRestante[]
+ \MelangeListe{\faa}{\fpeval{\RetiensListePersonnageslen-1}}%
+ \readlist*\ListefuuPerso{\faa}%
+ % on crée les 6 solutions suivantes.
+ \xdef\fuuu{}%
+ \foreachitem\compteur\in\ListeRestante{\xdef\fuuu{\fuuu,\ListeRestante[\compteurcnt]}}%
+ \MelangeListe{\fuuu}{\fpeval{\RetiensListeObjetslen}}%
+ \readlist*\ListeMelangeeObjets{\faa}%
+ \readlist*\ListeRestante{\fii}%
+ \MelangeListe{\faa}{\fpeval{\RetiensListeObjetslen-1}}%
+ \readlist*\ListefuuObjets{\faa}%
+ % on crée les dernieres solutions.
+ \xdef\fuuu{}%
+ \foreachitem\compteur\in\ListeRestante{\xdef\fuuu{\fuuu,\ListeRestante[\compteurcnt]}}%
+ \MelangeListe{\fuuu}{\fpeval{\RetiensListeLieuxlen}}
+ \readlist*\ListeMelangeeLieux{\faa}%
+ %% \readlist*\ListeRestante{\fii}%
+ \MelangeListe{\faa}{\fpeval{\RetiensListeLieuxlen-1}}%
+ \readlist*\ListefuuLieux{\faa}%
+ % --------------
+ % Liste des questions sauvegardees
+ \xdef\fuu{}%
+ \foreachitem\compteur\in\ListefuuPerso{\xdef\fuu{\fuu,\ListefuuPerso[\compteurcnt]}}%
+ \foreachitem\compteur\in\ListefuuObjets{\xdef\fuu{\fuu,\ListefuuObjets[\compteurcnt]}}%
+ \foreachitem\compteur\in\ListefuuLieux{\xdef\fuu{\fuu,\ListefuuLieux[\compteurcnt]}}%
+ \ignoreemptyitems\setsepchar{,}%
+ \MelangeListe{\fuu}{\fpeval{\RetiensListePersonnageslen+\RetiensListeObjetslen+\RetiensListeLieuxlen-3}}%
+ \readlist*\ListeMelangeeQuestions{\faa}%
+ \reademptyitems%
+}%
+
+\newcommand\AffichageQuestions{%
+ \begin{enumerate}
+ \xintFor* ##1 in {\xintSeq{1}{\fpeval{\RetiensListePersonnageslen+\RetiensListeObjetslen+\RetiensListeLieuxlen-3}}}\do{%
+ \item\xdef\Compteur{\ListeMelangeeQuestions[##1]}\RetiensListeQuestions[\Compteur,1]
+ }
+ \end{enumerate}
+}
+
+\newcommand\AffichageTableau{%
+ \begin{tabular}{|>{\PfCTBstrut$\square$~}m{\useKV[ClesEnquete]{Largeur}}|}
+ \hline
+ \rowcolor{gray!15}\multicolumn{1}{|c|}{\PfCTBstrut\useKV[ClesEnquete]{Perso}}\\
+ \hline
+ \xintFor* ##1 in {\xintSeq{1}{\RetiensListePersonnageslen}}\do{%
+ \RetiensListePersonnages[##1]\xdef\PfCCompteurMelange{\ListeMelangeePersonnages[##1]} $\star$ \RetiensListeQuestions[\PfCCompteurMelange,2]\\
+ }
+ %
+ \hline
+ \rowcolor{gray!15}\multicolumn{1}{|c|}{\PfCTBstrut\useKV[ClesEnquete]{Objet}}\\
+ \hline
+ \xintFor* ##1 in {\xintSeq{1}{\RetiensListeObjetslen}}\do{%
+ \RetiensListeObjets[##1]\xdef\PfCCompteurMelange{\ListeMelangeeObjets[##1]} $\star$ \RetiensListeQuestions[\PfCCompteurMelange,2]\\
+ }
+ %
+ \hline
+ \rowcolor{gray!15}\multicolumn{1}{|c|}{\PfCTBstrut\useKV[ClesEnquete]{Lieu}}\\
+ \hline
+ \xintFor* ##1 in {\xintSeq{1}{\RetiensListeLieuxlen}}\do{%
+ \RetiensListeLieux[##1]\xdef\PfCCompteurMelange{\ListeMelangeeLieux[##1]} $\star$ \RetiensListeQuestions[\PfCCompteurMelange,2]
+ \\
+ }
+ \hline
+ \end{tabular}
+}% \ No newline at end of file