Deprecated disabled button, enable button

Updates disabled button, enable button comands

http://forums.4d.com/4DBB_Main/x_User/3906/files/22318791.zip

Edit 16/05/2018: Demo database 4D v13
http://forums.4d.com/4DBB_Main/x_User/3906/files/24239075.zip

<code 4D>
// Method Replace_compiler_directives replaces deprecated inactive button

//
// #SYNTAX: Replace compiler directives
// #PARAMETERS:
// none

// #DATE CREATION: 02/02/2016 #AUTHOR: Bertrand SOUBEYRAND info@soubeyrand-4d-developer.eu
// #DATE MODIFICATION: 08/02/2016
// #NOTE: This methods runs on 4D v13 and later
//
// #HEADER VERSION: 2

// If you find this code useful, so send a mail!

C_ENTIER LONG($L_Milli)
$L_Milli:=Nombre de millisecondes

TABLEAU TEXTE($rT_Paths;0)
METHODE LIRE CHEMINS(Chemin tous les objets;$rT_Paths)

TABLEAU TEXTE($rT_Code;0)
METHODE LIRE CODE($rT_Paths;$rT_Code)

$T_This_path:=METHODE Lire chemin(Chemin Méthode projet;Nom methode courante)
$L_Pos:=Chercher dans tableau($rT_Paths;$T_This_path)
SUPPRIMER DANS TABLEAU($rT_Paths;$L_Pos)
SUPPRIMER DANS TABLEAU($rT_Code;$L_Pos)

TABLEAU TEXTE($rT_Old_Command;2)
TABLEAU TEXTE($rT_New_Command;Taille tableau($rT_Old_Command))

// respecter cet ordre !
$rT_Old_Command{1}:=Nom commande(193)+"\(.\)"
$rT_Old_Command{2}:=Nom commande(192)+"\(.
\)"

$rT_New_Command{1}:=Nom commande(1123)+"(" // OBJECT SET ENABLED + TRUE N° 214
$rT_New_Command{2}:=Nom commande(1123)+"(" // OBJECT SET ENABLED + FALSE N° 215

C_ENTIER LONG($i)
Boucle ($i;1;Taille tableau($rT_Paths))

// for each method

C_BOOLEEN($B_Modified)
$B_Modified:=Faux

C_ENTIER LONG($j)
Boucle ($j;1;Taille tableau($rT_Old_Command))

// for each directive

C_ENTIER LONG($L_Start)
$L_Start:=1
Repeter
// for each found

TABLEAU ENTIER LONG($rL_Pos;0)
TABLEAU ENTIER LONG($rL_Length;0)

C_BOOLEEN($B_Match)
$B_Match:=Trouver regex($rT_Old_Command{$j};$rT_Code{$i};$L_Start;$rL_Pos;$rL_Length)
Si ($B_Match)

$B_Modified:=Vrai

$L_Start:=$rL_Pos{0}+$rL_Length{0}

C_TEXTE($T_Old)
$T_Old:=Sous chaine($rT_Code{$i};$rL_Pos{0};$rL_Length{0})

C_ENTIER LONG($L_Long;$L_Pos)
$L_Long:=Longueur($T_Old)
$L_Pos:=Position("(";$T_Old)

C_TEXTE($T_Nom_Var_bouton;$T_Remplacement)
$T_Nom_Var_bouton:=Sous chaine($T_Old;$L_Pos+1;$L_Long-$L_Pos-1) // Nom de la variable ou du pointeur
$T_Remplacement:=$rT_New_Command{$j}+$T_Nom_Var_bouton+";"+Choisir($j=1;Nom commande(215);Nom commande(214))+")"

$rT_Code{$i}:=Remplacer chaine($rT_Code{$i};$T_Old;$T_Remplacement)
Fin de si
Jusque ($B_Match=Faux)
Fin de boucle

Si ($B_Modified)
METHODE FIXER CODE($rT_Paths{$i};$rT_Code{$i})
Fin de si
Fin de boucle

ALERTE(“job done in “+Chaine((Nombre de millisecondes-$L_Milli)*0,001)+” seconds”)

// EOM

</code 4D>

16/05/18: The original post embeds a 4D v13 demo

Merci Bertrand!
Ton code a sauvé beaucoup de temps a notre équipe (quoi que je voulais qu’il prennent le temps de revoir leur code)

: Alberto BACHLER

Merci Bertrand!
Ton code a sauvé beaucoup de temps a notre équipe (quoi que je
voulais qu’il prennent le temps de revoir leur code)
Merci, c’est gentil de signaler le bon usage de ce code