Modifier et créer ses templates FlashDevelop

FlashDevelop logo
Toujours dans la catégorie astuces bêtes et méchantes, la création de templates personnalisés pour FlashDevelop. Héhé ça faisait 2 fois que je jetais un coup d’oeil, mais pas au bon endroit…

Pour trouver le dossier data de FlashDevelop, aller dans le menu :
Tools > Application Files

Les templates actuels se trouvent dans  :

Templates/ProjectFiles/AS3Project

Nous allons  modifier la classe créée par défaut depuis la vue Project.
Voici ce qu’on trouve dans Class.as.fdt :

package $(Package) $(CSLB){
$(Import)	/**
	$(CBI)* $(FileName)
	$(CBI)* @author $(DefaultUser)
	$(CBI)*/
	$(Access)class $(FileName)$(Extends)$(Implements)$(CSLB){
 
		public function $(FileName)($(ConstructorArguments)) $(CSLB){
			$(Super)$(EntryPoint)
		}
 
	}
 
}

Si le contenu de votre fichier est différent de celui ci-dessus (RTM 3.0.3) allez chercher sa dernière version dans le dossier d’installation de FlashDevelop (sous windows C:\Program Files\FlashDevelop\Templates\ProjectFiles\AS3Project). FlashDevelop ne remplace pas ce fichier lors de ses mises à jour.

Cette modification vous permettra en plus si vous utilisez Flashdevelop  depuis une version beta de “débugger” l’ajout de dépendance et d’implémentation à la création de la classe (Fonctionnalité ajouté depuis la 3.0.?). Enfin ceux qui ont eu le problème comprendront…

Nous allons maintenant :

  • insérer un custom argument
  • insérer la date de création du fichier

Et notre classe devient donc :

package $(Package) $(CSLB){
$(Import)	/**
	$(CBI)* $(FileName)
	$(CBI)* @author $(DefaultUser)
	$(CBI)* @creation $(Timestamp)
	$(CBI)* @mood $(Mood)
	$(CBI)*/
	$(Access)class $(FileName)$(Extends)$(Implements)$(CSLB){
 
		public function $(FileName)($(ConstructorArguments)) $(CSLB){
			$(Super)$(EntryPoint)
		}
 
	}
 
}

Il vous suffit ensuite d’ajouter le custom Argument Mood pour définir votre humeur du moment (Tools > Custom arguments).

Vous trouverez les variables disponibles sur le wiki de FlashDevelop.

En bonus voici le template a ajouter dans Templates/ProjectFiles/AS3Project pour créer des singletons depuis la vue projet :

package $(Package) $(CSLB){
	/**
	$(CBI)* $(FileName)
	$(CBI)* @author $(DefaultUser)
	$(CBI)*/
	public class $(FileName)$(CSLB){
 
		public function $(FileName)(privateAccess:PrivateConstructorAccess) $(CSLB){
 
		}
 
		/************************
		 * SINGLETON
		************************/
 
		private static var _oI:$(FileName);
 
        public static function getInstance():$(FileName) {
            if(_oI == null){
                _oI = new $(FileName)(new PrivateConstructorAccess());
            }
            return _oI;
        }
 
    }
 
}
 
internal class PrivateConstructorAccess{}

Petit bémol, les templates ajoutés perdent les options proposées à la création d’une Classe  (insertion des dépendance , implémentation et accès)…

Leave a Reply

Your email address will not be published. Required fields are marked *