diff options
author | Karl Berry <karl@freefriends.org> | 2015-02-17 23:09:12 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-02-17 23:09:12 +0000 |
commit | 51661b622a44e667b7be53c82b5f734ffc948ec7 (patch) | |
tree | e0e1b929227fc5191f60c1d466d15be0a46b037b /Master/texmf-dist/tex/latex/ticollege | |
parent | 29da2f586abfa4540d83c924fbe48d3cbe75d169 (diff) |
ticollege (17feb15)
git-svn-id: svn://tug.org/texlive/trunk@36306 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/ticollege')
-rw-r--r-- | Master/texmf-dist/tex/latex/ticollege/ticollege.sty | 454 |
1 files changed, 454 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ticollege/ticollege.sty b/Master/texmf-dist/tex/latex/ticollege/ticollege.sty new file mode 100644 index 00000000000..aaf7aa7151b --- /dev/null +++ b/Master/texmf-dist/tex/latex/ticollege/ticollege.sty @@ -0,0 +1,454 @@ +%--------------- +% Licence +%--------------- +%This program can be redistributed and/or modified under the terms +%of the LaTeX Project Public License Distributed from CTAN archives +%in directory macros/latex/base/lppl.txt. + + +\def\fileversion{1.0} +\def\filedate{2015/02/15} +\def\fileauthor{Philippe DE SOUSA} +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{ticollege}[% + \filedate\space v\fileversion\space + LaTeX package by \fileauthor] +\RequirePackage[dvipsnames,table]{xcolor} +\RequirePackage[zerostyle=d]{newtxtt} +\@ifpackageloaded{tikz}{}{\RequirePackage{tikz}} +\usetikzlibrary{calc,shapes,arrows,shadows,backgrounds,babel} +\@ifpackageloaded{ifthen}{}{\RequirePackage{ifthen}} +\@ifpackageloaded{xkeyval}{}{\RequirePackage{xkeyval}} +\@ifpackageloaded{mathtools}{}{\RequirePackage{mathtools}} +\@ifpackageloaded{amssymb}{}{\RequirePackage{amssymb}} +\@ifpackageloaded{multido}{}{\RequirePackage{multido}} +\@ifpackageloaded{multirow}{}{\RequirePackage{multirow}} + +%% 15 février 2015 : v1.0 + + +%%----------------------------- +%-- Couleurs +%%----------------------------- +\definecolor{TIRouge}{RGB}{215,64,45} +\definecolor{TIOrange}{RGB}{239,148,69} +\definecolor{TIJaune}{RGB}{254,212,75} + +%%----------------------------- +%-- Symboles particuliers +%%----------------------------- + +% définition de la racine carrée +\newcommand*\TiRacine[1][]{$\sqrt[#1]{\phantom{x}}$} +% définition des dessins de contrast +\newcommand*{\ContrastUp}{ + \tikz{ + \draw[orange] (0,0) circle[radius = 0.2]; + \fill[orange] (0,0.2) arc[radius=0.2, start angle=90, end angle=-90] -- cycle; + \fill[orange] (0.45,0) -- ++(150:0.2) -- ++(0,-0.2) -- cycle; + } +} +\newcommand*{\ContrastDown}{ + \tikz{ + \draw[orange] (0,0) circle[radius = 0.2]; + \fill[orange] (0,0.2) arc[radius=0.2, start angle=90, end angle=-90] -- cycle; + \fill[orange] (-0.45,0) -- ++(30:0.2) -- ++(0,-0.2) -- cycle; + } +} +% définition du symbole aff +\newcommand*{\Aff}{ + \tikz[scale=0.7]{ + \draw (0,0) node[scale=0.7] {\scriptsize\textsf{aff}}; + \draw[->, >=latex'] ({0.5*cos(40)},{0.4*sin(140)}) arc[x radius=0.5, y radius=0.4, start angle=40, end angle=140]; + \draw[->, >=latex'] ({0.5*cos(220)},{0.4*sin(320)}) arc[x radius=0.5, y radius=0.4, start angle=220, end angle=320]; + } +} + +% définition du symbole de la division posée +\newcommand*{\Div}{\tikz{\draw[thick] (0,0) -- (0,0.5) (0,0.35)--(0.2,0.35);}} + + +%%----------------------------- +%--- Définitions auxiliaires + xkeyval +%%----------------------------- + +% création de booléen pour tester les styles de touche +\newcommand*{\TiCDef@Bool}[1]{% +\newboolean{#1} +\setboolean{#1}{false} +} +\newcommand*{\TiCDefBool}[1]{\TiCDef@Bool{#1}} + +\TiCDefBool{TiCChiffre} +\TiCDefBool{TiCGeneral} +\TiCDefBool{TiCFleches} +\TiCDefBool{TiCModeSeconde} +\TiCDefBool{ArrondiToucheGauche} +\TiCDefBool{ArrondiToucheDroit} +% pour entourer une touche : +\define@boolkey{PresetTiC}{circle}[false]{} +% pour entourer la touche de flèche +\define@boolkey{PresetTiC}{circleup}[false]{} +\define@boolkey{PresetTiC}{circleleft}[false]{} +\define@boolkey{PresetTiC}{circleright}[false]{} +\define@boolkey{PresetTiC}{circledown}[false]{} + +% Définitions des styles disponibles +\define@choicekey{PresetTiC}{style}% + {general, number, arrows}% + {\ifthenelse{\equal{\string #1}{\string number}}% + {\setboolean{TiCChiffre}{true}} + {\setboolean{TiCChiffre}{false}}% + \ifthenelse{\equal{\string #1}{\string general}}% + {\setboolean{TiCGeneral}{true}} + {\setboolean{TiCGeneral}{false}}% + \ifthenelse{\equal{\string #1}{\string arrows}}% + {\setboolean{TiCFleches}{true}} + {\setboolean{TiCFleches}{false}}% + } + +% Définitions des touches arrondis +\define@choicekey{PresetTiC}{rounded}% + {left, right, none}% + {\ifthenelse{\equal{\string #1}{\string left}}% + {\setboolean{ArrondiToucheGauche}{true}} + {\setboolean{ArrondiToucheGauche}{false}}% + \ifthenelse{\equal{\string #1}{\string right}}% + {\setboolean{ArrondiToucheDroit}{true}} + {\setboolean{ArrondiToucheDroit}{false}}% + \ifthenelse{\equal{\string #1}{\string none}}% + {\setboolean{ArrondiToucheDroit}{false}\setboolean{ArrondiToucheGauche}{false}} + {\relax}% + } + +% Définitions des keys +% les couleurs +\define@key{PresetTiC}{color key}{\def\Couleur@Touche{#1}} +\define@key{PresetTiC}{colour key}{\def\Couleur@Touche{#1}} +\define@key{PresetTiC}{color text}{\def\Couleur@Texte{#1}} +\define@key{PresetTiC}{colour text}{\def\Couleur@Texte{#1}} +\define@key{PresetTiC}{color second}{\def\Couleur@Seconde{#1}} +\define@key{PresetTiC}{colour second}{\def\Couleur@Seconde{#1}} +\define@key{PresetTiC}{colour circle}{\def\Couleur@Cercle{#1}} +\define@key{PresetTiC}{color circle}{\def\Couleur@Cercle{#1}} +% taille du texte +\define@key{PresetTiC}{fontsize}{\def\Font@Size{#1}} +% hauteur de la touche +\define@key{PresetTiC}{raise}{\def\Hauteur@Touche{#1}} +% texte principal de la touche +\define@key{PresetTiC}{principal}{\def\Le@Principal{\fontsize{\Font@Size}{\Font@Size}\selectfont\color{\Couleur@Texte} #1}} +% position du texte principal à l'interieur de la touche +\define@key{PresetTiC}{position}{\def\La@Position{#1}} +% nom de la touche pour des utilisations dans tikzpicture +\define@key{PresetTiC}{name}{\def\Le@Nom{#1}} +% pour entourer une touche +\define@key{PresetTiC}{radius}{\def\Le@Rayon{#1}} +\define@key{PresetTiC}{thickness}{\def\Ep@isseur{#1}} +% texte secondaire +\define@key{PresetTiC}{second}{\ifthenelse{\equal{\string #1}{\string pasdeseconde}}% + {\setboolean{TiCModeSeconde}{false}}% + {\def\Mode@Seconde{\fontsize{\Font@Size}{\Font@Size}\selectfont\color{\Couleur@Seconde} #1} + \setboolean{TiCModeSeconde}{true}}% + } + +% configurations par défaut +\presetkeys{PresetTiC}{style=general, principal=sin, second=pasdeseconde, + position=0.9, raise=0ex, fontsize=6pt, name=NOM, + rounded=none, colour second=TIOrange, colour key=TIRouge, colour text=white, + circle=false, radius=20pt, colour circle=red, thickness=1pt, + circleup=false, circleleft=false, circledown=false, circleright=false}{} + + + + +%%----------------------------- +% commande \TiC dont la forme dépend du style choisi +%%----------------------------- + +\newcommand*\TiC[1][]{% +\setkeys{PresetTiC}{#1}% +%%----------------------------- +% Touche colorée pour les fonctions +%%----------------------------- +\raisebox{\Hauteur@Touche}{ +\ifthenelse{\boolean{TiCGeneral}}% + {\unskip + \begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] + \draw[fill=\Couleur@Touche] (0.35,1) -- ++(1,0) arc[start angle = 90, end angle = -90, x radius = 0.35, y radius = 0.5] + -- ++(-1,0) arc[start angle=270, end angle=90, x radius = 0.35, y radius = 0.5] -- cycle; + \path (0.85,1) -- (0.85,0.5) node[pos=\La@Position] (c) {\bfseries \Le@Principal}; + \coordinate (\Le@Nom) at (c); + \ifKV@PresetTiC@circle\draw[\Couleur@Cercle,line width=\Ep@isseur] (c) circle[radius=\Le@Rayon];\fi + \ifthenelse{\boolean{TiCModeSeconde}} % + {\node[above] at (0.85,1) {\bfseries\sffamily\Mode@Seconde};} % + {} + \end{tikzpicture} + }% + {\unskip}% +}% +%%----------------------------- +% Touche colorée pour les chiffres +%%----------------------------- +\raisebox{\Hauteur@Touche}{ +\ifthenelse{\boolean{TiCChiffre}}% + {\ifthenelse{\boolean{ArrondiToucheGauche}}% + {\unskip% + \begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] + \draw[fill=\Couleur@Touche] (0.85,1) -| ++(-0.5,0) arc[start angle = 90, end angle = 270, x radius = 0.35, y radius = 0.5] -| ++(0.5,0); + \draw[fill=\Couleur@Touche, rounded corners=1.5pt] (0.8,0) -| (1.7,0.5) |- ++(-0.3,0.5) -- (0.8,1); + \node (c) at (0.85,0.5) {\bfseries \Le@Principal}; + \coordinate (\Le@Nom) at (c); + \ifKV@PresetTiC@circle\draw[\Couleur@Cercle,line width=\Ep@isseur] (c) circle[radius=\Le@Rayon];\fi + \ifthenelse{\boolean{TiCModeSeconde}} % + {\node[above] at (0.85,1) {\bfseries\sffamily\Mode@Seconde};} % + {} + \end{tikzpicture}}% + {\ifthenelse{\boolean{ArrondiToucheDroit}}% + {\unskip% + \begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] + \draw[fill=\Couleur@Touche] (0.85,1) -| ++(0.5,0) arc[start angle = 90, end angle = -90, x radius = 0.35, y radius = 0.5] -| ++(-0.85,0); + \draw[fill=\Couleur@Touche, rounded corners=1.5pt] (0.85,0) -| (0,0.5) |- ++(0.3,0.5) -- (0.85,1); + \node (c) at (0.85,0.5) {\bfseries \Le@Principal}; + \coordinate (\Le@Nom) at (c); + \ifKV@PresetTiC@circle\draw[\Couleur@Cercle,line width=\Ep@isseur] (c) circle[radius=\Le@Rayon];\fi + \ifthenelse{\boolean{TiCModeSeconde}} % + {\node[above] at (0.85,1) {\bfseries\sffamily\Mode@Seconde};} % + {} + \end{tikzpicture}}% + {\unskip% + \begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] + \draw[fill=\Couleur@Touche, rounded corners=1.5pt] (0.85,1) -| ++(0.85,-0.5) |- ++(-0.85,-0.5) -| ++(-0.85,0.5) |- ++(0.3,0.5) -- cycle; + \node (c) at (0.85,0.5) {\bfseries \Le@Principal}; + \coordinate (\Le@Nom) at (c); + \ifKV@PresetTiC@circle\draw[\Couleur@Cercle,line width=\Ep@isseur] (c) circle[radius=\Le@Rayon];\fi + \ifthenelse{\boolean{TiCModeSeconde}} % + {\node[above] at (0.85,1) {\bfseries\sffamily\Mode@Seconde};} % + {} + \end{tikzpicture}}}}% + {\unskip} +}% +%%----------------------------- +% Touche colorée pour les flèches +%%----------------------------- +\raisebox{\Hauteur@Touche}{ +\ifthenelse{\boolean{TiCFleches}}% + {\unskip + \begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] + \draw[fill=\Couleur@Touche] (0,1) -- ++(1,0) arc[start angle = 90, end angle = -90, radius = 1] + -- ++(-1,0) arc[start angle=270, end angle=90, radius = 1] -- cycle; + \draw[fill=\Couleur@Touche, scale=0.25] (0.5,1) -- ++(3,0) arc[start angle = 90, end angle = -90, radius = 1] + -- ++(-3,0) arc[start angle=270, end angle=90, radius = 1] -- cycle; + \fill[white] (0.5,0.75) -- ++(-60:0.3) -- ++(-0.3,0) -- cycle; %up + \fill[yscale=-1,white] (0.5,0.75) -- ++(-60:0.3) -- ++(-0.3,0) -- cycle; % down + \fill[white] (-0.75,0) -- ++(-30:0.3) -- ++(0,0.3) -- cycle; % left + \fill[white] (1.75,0) -- ++(150:0.3) -- ++(0,-0.3) -- cycle; % right + \coordinate (FLE) at (0.5,0); + \ifKV@PresetTiC@circle\draw[\Couleur@Cercle,line width=\Ep@isseur] (FLE) circle[radius=\Le@Rayon];\fi + \coordinate (FLH) at (0.5,0.6); + \coordinate (FLB) at (0.5,-0.6); + \coordinate (FLD) at (1.6,0); + \coordinate (FLG) at (-0.6,0); + \ifKV@PresetTiC@circledown\draw[\Couleur@Cercle,line width=\Ep@isseur] (FLB) circle (5pt);\fi + \ifKV@PresetTiC@circleleft\draw[\Couleur@Cercle,line width=\Ep@isseur] (FLG) circle (5pt);\fi + \ifKV@PresetTiC@circleup\draw[\Couleur@Cercle,line width=\Ep@isseur] (FLH) circle (5pt);\fi + \ifKV@PresetTiC@circleright\draw[\Couleur@Cercle,line width=\Ep@isseur] (FLD) circle (5pt);\fi + \end{tikzpicture} + }% + {\unskip}% +}% +} + +%%----------------------------- +%------ CALCULATRICE ---------- +%%----------------------------- + +% options de la commande \Calculator* +\define@key{TiCalc}{calcscale}{\def\Calc@Echelle{#1}} +\define@key{TiCalc}{calcrotate}{\def\Calc@Rotation{#1}} +\define@key{TiCalc}{calcraise}{\def\Calc@Position{#1}} +% options de la commande \Calculator +\define@key{TiCalc}{colour calc}{\def\Couleur@Calc{#1}} +\define@key{TiCalc}{color calc}{\def\Couleur@Calc{#1}} +\define@key{TiCalc}{title}{\def\Titre@Calc{#1}} + +% configurations par défaut pour \Calculatrice* +\presetkeys{TiCalc}{calcscale=0.5,calcrotate=-30,calcraise=-2ex, colour calc=TIOrange!50, title=TI-Collège}{} +% +%%----------------------------- +%-------- Grand format -------- +%%----------------------------- +\newcommand{\Calculator@nostar}[1][]{ +\setkeys{TiCalc}{#1}% +\begin{tikzpicture}[remember picture] + \renewcommand{\tabcolsep}{-3pt} + \node (tabcalc) at (0,0) { + \begin{tabular}{*{5}{c}} + \TiC[principal=2nde, colour key=TIJaune, colour text=black, name=scd] & + \TiC[principal=mode, second=quitter, name=mode] & + \TiC[principal=suppr, second=insérer, name=supp, position=1.1] & + \multicolumn{2}{c}{\multirow{3}{*}{\TiC[style=arrows, colour key=TIOrange, name=arrows]}} \\ + % + \TiC[principal={$\boldsymbol{\frac{n}{d}}$}, second={$\boldsymbol{f \triangleleft\triangleright d}$}, fontsize=7pt, name=nd] & + \TiC[principal=stats, second=stats calc, name=stats] & + \TiC[principal={$\boldsymbol{f(x)}$}, second=expr, name=fx] & & \\ + % + \TiC[principal={$\triangleright$ simp}, second={$\triangleright$ décomp}, name=simp, fontsize=5pt] & + \TiC[principal={$\times 10^n$}, second={$\frac1x$}, name=pdix] & + \TiC[principal=op, second=déf op, name=op, position=1.1] & + \TiC[principal=maths, second=système, name=math] & + \TiC[principal=annul, name=annul] \\ + % + \TiC[principal={\large$\pi$}, second=angle, name=pi] & + \TiC[principal={\itshape sin}, second={\itshape arcsin}, name=sin] & + \TiC[principal={\itshape cos}, second={\itshape arccos}, name=cos] & + \TiC[principal={\itshape tan}, second={\itshape arctan}, name=tan] & + \TiC[principal=$\div$, second=\Div, colour key=TIOrange, name=div] \\ + % + \TiC[principal={$x^n$}, second={\TiRacine[n]}, name=pow] & + \TiC[principal=\%, second={$\triangleright$ \%}, name=pcent] & + \TiC[principal={(}, second={$\triangleright a\, \cdot 10^n$}, name=PO] & + \TiC[principal={)}, second={$\triangleright$ norm}, name=PF] & + \TiC[principal=$\times$, colour key=TIOrange, name=times] \\ + % + \TiC[principal={$x^2$}, second={\TiRacine}, name=sqr] & + \TiC[style=number, principal=7, rounded=left, colour key=white, colour text=black, name=T7] & + \TiC[style=number, principal=8, colour key=white, colour text=black, name=T8] & + \TiC[style=number, principal=9, rounded=right, colour key=white, colour text=black, name=T9] & + \TiC[principal=$-$, second=\ContrastDown, colour key=TIOrange, name=sub] \\ + % + \TiC[principal={$x^{yzt}_{abc}$}, second={eff var}, name=var] & + \TiC[style=number, principal=4, rounded=left, colour key=white, colour text=black, name=T4] & + \TiC[style=number, principal=5, colour key=white, colour text=black, name=T5] & + \TiC[style=number, principal=6, rounded=right, colour key=white, colour text=black, name=T6] & + \TiC[principal=$+$, second=\ContrastUp, colour key=TIOrange, name=plus] \\ + % + \TiC[principal={sto $\triangleright$}, second={rap var}, name=sto] & + \TiC[style=number, principal=1, rounded=left, colour key=white, colour text=black, name=T1] & + \TiC[style=number, principal=2, colour key=white, colour text=black, name=T2] & + \TiC[style=number, principal=3, rounded=right, colour key=white, colour text=black, name=T3] & + \TiC[principal=\Aff, colour key=TIOrange, name=aff] \\ + % + \TiC[principal={on}, second={off}, name=on] & + \TiC[style=number, principal=0, second=réinit, rounded=left, colour key=white, colour text=black, name=T0] & + \TiC[style=number, principal={,}, fontsize=9pt, position=1.2, second={;}, colour key=white, colour text=black, name=virgule] & + \TiC[style=number, principal=(--), second=rép, rounded=right, colour key=white, colour text=black, name=minus] & + \TiC[principal=entrer, colour key=TIOrange, fontsize=5pt, name=entrer] \\ + \end{tabular}% + }; + % Ecran + \node (ecran) at ($(tabcalc.north west)+(0.2,0)$) [inner sep=0pt,rectangle, + minimum width=5.5cm,minimum height=2cm,anchor=south west] {}; + \draw[fill=ForestGreen!15] ($(tabcalc.north west)+(0.2,0)$) rectangle ($(tabcalc.north east)+(-0.2,2)$); + % Corps de la calculatrice + \begin{scope}[on background layer] + \draw[fill=\Couleur@Calc, rounded corners=25pt] + ($(ecran.north) + (0.5,1.25)$) -| + ($(tabcalc.east) + (0.25,0)$) |- + ($(tabcalc.south) + (0,-0.25)$) -| + ($(tabcalc.west) + (-0.25,0)$) |- + ($(ecran.north) + (-0.5,1.25)$) -- cycle; + \node at ($(ecran.north) + (0,0.5)$) {{\Large\bfseries\sffamily \Titre@Calc}}; + \end{scope} +\end{tikzpicture} +} + +%%----------------------------- +%-------- Petit format -------- +%%----------------------------- +\newcommand*{\Calculator@star}[1][]{% +\setkeys{TiCalc}{#1}% +\raisebox{\Calc@Position}{% +\begin{tikzpicture}[x=0.5cm,scale=\Calc@Echelle,rotate=\Calc@Rotation] + \draw[fill=black, rounded corners=3pt] (0,0) rectangle (2.1,1.5); + \draw[white,fill=white] (0.1,1.15) rectangle (2,1.4); + \fill[white] (1.55,0.9) ellipse[x radius=0.4, y radius=0.1]; + \fill[white,rounded corners=2] (0.1,0.8) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.8) rectangle ++(0.4,0.2); +%% + \fill[white,rounded corners=2] (0.1,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.1,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.6,0.45) rectangle ++(0.4,0.2); +%% + \fill[white,rounded corners=2] (0.1,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.1,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.6,0.1) rectangle ++(0.4,0.2); +%% +\end{tikzpicture}% +} +} + +%%----------------------------- +%\TiCCalc = Grand format- +%\TiCCalc* = Petit format- +%%----------------------------- +\newcommand*\TiCCalc{\@ifstar{\Calculator@star}{\Calculator@nostar}} + +%%----------------------------- +%------ ECRAN ------------------ +%%----------------------------- + + +\newcounter{TiCLineCommand} +\setcounter{TiCLineCommand}{0} +\newcounter{TiCLineResult} +\setcounter{TiCLineResult}{0} + +% Définition des keys +\define@key{TiCScreen}{color screen}{\def\Couleur@Ecran{#1}} +\define@key{TiCScreen}{colour screen}{\def\Couleur@Ecran{#1}} +\define@key{TiCScreen}{screenname}{\def\Nom@Ecran{#1}} +\define@key{TiCScreen}{width}{\def\L@ngueur{#1}} +\define@key{TiCScreen}{height}{\def\H@uteur{#1}} + +% Configurations par défaut +\presetkeys{TiCScreen}{colour screen=ForestGreen!15, + screenname=ecran, + width=4, height=1}{} + +% Commande \Ecran +\newcommand*\TiCScreen[2][]{% +\setcounter{TiCLineCommand}{0} +\setcounter{TiCLineResult}{0} +\setkeys{TiCScreen}{#1} +\begin{tikzpicture}[remember picture] + \node (\Nom@Ecran) at (0,0) [inner sep=0pt, draw, fill=\Couleur@Ecran, rectangle, minimum width=\L@ngueur cm, + minimum height=\H@uteur cm,anchor=south west] {}; + \clip (0,0) rectangle (\L@ngueur,\H@uteur); + \foreach \command/\result in {#2} + {\ifx\command\empty {\addtocounter{TiCLineResult}{-1}\addtocounter{TiCLineCommand}{1}} \else + \node[anchor=north west] at ($(\Nom@Ecran.north west)+(0,-\theTiCLineCommand/2)$) {\texttt{\command}}; + \addtocounter{TiCLineCommand}{2}\fi + \ifx\result\empty {\addtocounter{TiCLineCommand}{-1}\addtocounter{TiCLineResult}{1}} \else + \node[anchor=north east] at ($(\Nom@Ecran.north east)+(0,-0.5-\theTiCLineResult/2)$) {\texttt{\result}}; + \addtocounter{TiCLineResult}{2}\fi} +\end{tikzpicture} +} + +%%----------------------------- +%------ MENU ------------------ +%%----------------------------- + +% Définitions des options +\define@boolkey{TiCMenu}{select}[false]{} +\define@key{TiCMenu}{size}{\def\t@ille{#1}} +\define@key{TiCMenu}{text}{\def\@texte{#1}} +\define@key{TiCMenu}{colour box}{\def\Couleur@Boite{#1}} +\define@key{TiCMenu}{color box}{\def\Couleur@Boite{#1}} + +% Valeurs par défaut +\presetkeys{TiCMenu}{select=false,text=\unskip,colour box=white}{size=15pt} + +% Définition de la touche \Menu +\newcommand\TiC@Menu[2][]{ +\setlength{\fboxsep}{0pt} \setlength{\fboxrule}{0.5pt} +\setkeys{TiCMenu}{#1} +\ifKV@TiCMenu@select \tikz[font=\ttfamily\bfseries]{\node (texte) +{\fontsize{\t@ille}{0}\selectfont\colorbox{black}{\color{white}\protect\uppercase{#2}}};\draw +(texte) node[right=10pt] {\fontsize{\t@ille}{0}\selectfont\@texte};} \else +\tikz[font=\ttfamily\bfseries]{\node (texte) +{\fontsize{\t@ille}{0}\selectfont\colorbox{\Couleur@Boite}{\color{black}\protect\uppercase{#2}}};\draw +(texte) node[right=10pt] {\fontsize{\t@ille}{0}\selectfont\@texte};} \fi } + +\newcommand\TiCMenu[2][]{\TiC@Menu[#1]{#2}} |