Furineur
Touillette
Messages : 1
Enregistré le : 23 Jan 2018, 12:13

UI Dossiers Multiples

26 Jan 2018, 11:37

Bonjour,a tous et merci pour ce super forum ou je passe des heures à chercher de bonnes infos....

Je débute en script After Effects et j'essaye de faire des ui pour mes Scripts...

Je me suis fait un script simple pour loader mes fichiers. ffx (presets d'animations...)

Et j'essaye de faire un Ui ... J'ai plusieurs dossiers differents contenant chacun d'autre dossiers dans lequel j'ai des. ffx...

Exemple: AllPresets/PresetFolder01/xxx1.ffx
AllPresets/PresetFolder01/xxx2.ffx

AllPresets/PresetFolder02/xxx1.ffx
AllPresets/PresetFolder02/xxx2.ffx
etc...

J'ai réussi à faire une UI qui permet de choisir le dossier 1 ou 2 et j'arrive à afficher le contenu du dossier 1 mais je n'arrive pas à mettre à jour le contenu de la ligne 2 si je change mon choix de dossier dans le ligne1....

Voici mon code pour l’instant, et je bloque un peu...
Si quelqu’un peut m’orienter je vous remercie d’avance.
By
Tom

function FFX(obj)
//================= UI============================
{
function addHGroup(conteneur){
var groupe = conteneur.add("group");
groupe.alignChildren = ["fill","fill"];
groupe.orientation = "row";
groupe.spacing = 1;
groupe.margins = 0;
return groupe;
}

function addVGroup(conteneur){
var groupe = conteneur.add("group");
groupe.alignChildren = ["fill","fill"];
groupe.orientation = "column";
groupe.spacing = 1;
groupe.margins = 0;
return groupe;
}
var fenetre = obj instanceof Panel ? obj : new Window("window","MyPresets",undefined,{resizeable:true});
fenetre.alignChildren = ["fill", "top"];
fenetre.spacing = 2;
fenetre.margins = 3;
var versionGroup3 = addHGroup(fenetre);
versionGroup3.alignment = ["fill","bottom"];
var widthGroup = addHGroup(fenetre);
widthGroup.alignChildren = ["fill","center"];
var PATH_Button = widthGroup.add("button",undefined,"Load");
//________________________________________________________________________________________ _______________________________________________
var presetsFolder = Folder("~/Desktop/MyPresetFolder");
var arrayPresets = presetsFolder.getFiles('Preset*');
var fileNames = getFileNames(arrayPresets);
function getFileNames(arrayPresets) {
var fileNames = [],
baseName = "";
for (var i = 0, il = arrayPresets.length; i < il; i++) {
baseName = arrayPresets[i].displayName.split("_")[0];
fileNames.push(baseName);
}
return fileNames;
}
var widthGroup = addHGroup(fenetre);
widthGroup.add("statictext", [0,0,80,18], "Select Folder:");
var Chemin1 = widthGroup.add('dropdownlist', [0,0,200,18], fileNames);
Chemin1.selection = 0;
//________________________________________________________________________________________ ________________________________________________
var presetsFolder2 = Folder("~/Desktop/MyPresetFolder/"+(Chemin1.selection.text));
var arrayPresets2 = presetsFolder2.getFiles('*.ffx');
var fileNames2 = getFileNames(arrayPresets2);

function getFileNames(arrayPresets2) {
var fileNames2 = [],
baseName2 = "";
for (var i = 0, il = arrayPresets2.length; i < il; i++) {
baseName2 = arrayPresets2[i].displayName.split(".")[0];
fileNames2.push(baseName2);
}
return fileNames2;
}
var widthGroup = addHGroup(fenetre);
widthGroup.add("statictext", [0,0,80,18], "Select Preset:");
var Chemin2 = widthGroup.add('dropdownlist', [0,0,200,18], fileNames2);
Chemin2.selection = 0;

//CLICK ALL____________________________________________________________________
PATH_Button.onClick = function (){
}

//================= AFFICHAGE DE L'UI ============
fenetre.layout.layout(true);
fenetre.layout.resize();
fenetre.onResizing = fenetre.onResize = function () {fenetre.layout.resize()};
if (fenetre != null ) if (fenetre instanceof Window) fenetre.show();
}

FFX(this);[/codebox]
0

Retourner vers « Scripts & Expressions »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité