120

Ah ok alors voilà celui que j'ai pondu :

Define itr_delt(l_var,l_elm)=Prgm
Local l_tmp,l_hlp,l_dim,l_typ
(dim(#l_var)-1)/2»l_dim
#(#l_var[l_elm+1])[1]»l_typ
If getType(l_typ)?"STR":"None"»l_typ
If l_typ="Dossier" Then
(dim(#(#l_var[l_elm+1]))-1)/2»l_hlp
For l_tmp,1,l_hlp
itr_delt(#l_var[l_elm+1],1)
EndFor
EndIf
DelVar #(#l_var[l_elm+1])
augment({#l_var[1]},augment(augment(mid(#l_var,2,l_elm-1),mid(#l_var,l_elm+2,l_dim-l_elm)),augment(mid(#l_var,l_dim+2,l_elm-1),mid(#l_var,l_dim+l_elm+2,l_dim-l_elm))))»#l_var
EndPrgm


(Pim, PAS UN MOT sur les indirection grin)
Il sert à scanner un dossier, tant qu'il tombe sur des fichiers il les supprime, si il tombe sur un dossier il se relance sur lui-même pour le scanner (récursion) et ainsi de suite...
Ça sert pr un exploreur à dossier imbriqués, pour que quand on supprime un dossier il supprime aussi ce qu'il y a dedans roll
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

121

Illisible !!!!! grin

Aussi, le fait de mettre des _ dans tes noms de variable rend le code encore moins lisibles ... grin

J'arrive pas à comprendre comment tu fais pour t'y retrouver ensuite ...
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

122

Je m'y retrouve pas grin
J'ai écrit ça une bonne fois pr toute, j'espere que je n'aurais pas besoin d'y retourner...

Tu commence à comprendre pkoi cms n'avance plus beaucoup ?
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

123

gringrinrotflrotfl
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

124

En fait t'as raison... Quand je regarde à nouveau mon code, ça fait peur... eek
Même moi j'y comprends + rien roll
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

125

J'y ai rien compris non plus... il me faudrait un temps de déchiffrage avant ...
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

126

Define itr_delt(l_var,l_elm)=Prgm // 2 arguments : variable à traiter, et n° de l'élement à supprimer
Local l_tmp,l_hlp,l_dim,l_typ
(dim(#l_var)-1)/2»l_dim // On retient la taille de la variable traitée
#(#l_var[l_elm+1])[1]»l_typ // On retient le type de variable (dossier ou non ?)
If getType(l_typ)?"STR":"None"»l_typ // Si la variable est introuvable on met "NONE" comme type
If l_typ="Dossier" Then // Si cette variable est un dossier...
(dim(#(#l_var[l_elm+1]))-1)/2»l_hlp // On retient le nombre d'élements qu'il contient...
For l_tmp,1,l_hlp // On les traite tous un par un...
itr_delt(#l_var[l_elm+1],1) // En relançant le programme sur lui-même pour chacun d'eux
EndFor
EndIf // Après cette ligne les commandes seront effectutées que la variable soit 1 dossier ou non
DelVar #(#l_var[l_elm+1]) // On supprime la variable qu'on vient de traiter
augment({#l_var[1]},augment(augment(mid(#l_var,2,l_elm-1),mid(#l_var,l_elm+2,l_dim-l_elm)),augment(mid(#l_var,l_dim+2,l_elm-1),mid(#l_var,l_dim+l_elm+2,l_dim-l_elm))))»#l_var // Et pour finir on signale au programme qu'on l'a bien supprimée
EndPrgm // Et voilà c fini !

Et voilà en fait c'est tout simple wink
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)