Quantcast
Channel: Adobe Community : Popular Discussions - Illustrator Scripting
Viewing all articles
Browse latest Browse all 12845

Trees, Branches and Items OHMY!

$
0
0

Hello fellow scripters!

 

This is my first attempt at useing a tree for anything, I usually stick to radio buttons and drop down lists but the tree is the best option for what I have.  I've got it to populate and everything works really nice but what is the best way to get what is selected from the tree?  Below is my code.

 

//Created by Daryl R. Smith

#target illustrator

if (1 > 0)
{

var w = new Window ("dialog", "Choose Calendar Template", undefined,{resize: true});
w.orientation = "column";
w.alignChildren = "right";
w.size = [300,525];

var caltab = w.add ('group',undefined,"Calendar");

var cal_Tree = caltab.add ('treeview',undefined,"Header shapes");
cal_Tree.size = [280,430]

var calPnS_Branch = cal_Tree.add ('node',"Press N Stick");

var calMS_Branch = cal_Tree.add ('node',"Magna Stick");

var calSS_Branch = cal_Tree.add ('node',"Super Size");

var calSP_Branch = cal_Tree.add ('node',"Screen Print");

var calSP_PnS_Branch = calSP_Branch.add ('node', "Press N Stick")
var calSP_MS_Branch = calSP_Branch.add ('node', "Magna Stick")
var calSP_SS_Branch = calSP_Branch.add ('node', "Super Size")

var calFC_Branch = cal_Tree.add ('node', "Full Color")
var calFC_7871_Branch = calFC_Branch.add ('node', "V7871 Full Color Calendars")
var calFC_PnC_Branch = calFC_Branch.add ('node', "V7873 Paws-N-Claws")

var cal3month_Branch = cal_Tree.add ('node',"3-Month");

var calMisc_Branch = cal_Tree.add ('node',"Misc");

var bottomsection = w.add ('group', undefined, undefined)
bottomsection.orientation = "row"

var selectiongrp = bottomsection.add ('group', undefined, undefined)
selectiongrp.orientation = "column"

var treeItemSelectedis = selectiongrp.add ('statictext', undefined, "Your selection is: ")
var treeItemSelected = selectiongrp.add ('statictext', undefined, "Item Number")

calPnS_Branch.active = true;

cal_Tree.onChange = function()
{
    treeItemSelected.text = cal_Tree.name;
}


var bottomspacer = bottomsection.add ('group', undefined, undefined)
bottomspacer.size = [70,00]

var btngroup = bottomsection .add ('group', undefined, undefined)
btngroup.orientation = "column"

var okbtn = btngroup.add ('button', undefined, "Ok");
var cnlbtn = btngroup.add ('button', undefined, "Cancel");

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function fillall_PnS()
{
   
var calPnSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars/Press N Stick");    var calPnSTempFiles = calPnSTempPath.getFiles();   var calPnSnamesArr = [];   for(var i=0; i<calPnSTempFiles.length; i++){   var thiscalPnSFile = calPnSTempFiles[i];   calPnSnamesArr.push(thiscalPnSFile.displayName);  }    return calPnSnamesArr; 
}    var calPnSarr1 = fillall_PnS();        for(var i=0; i<calPnSarr1.length; i++)        {             var calPnSitem = calPnSarr1[i];            var lbl = calPnS_Branch.add ('item', calPnSitem);         }     
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function fillall_MS()
{   
var calMSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars/Magna Stick");    var calMSTempFiles = calMSTempPath.getFiles();   var calMSnamesArr = [];   for(var i=0; i<calMSTempFiles.length; i++){   var thiscalMSFile = calMSTempFiles[i];   calMSnamesArr.push(thiscalMSFile.displayName);  }    return calMSnamesArr; 
}    var calMSarr1 = fillall_MS ();        for(var i=0; i<calMSarr1.length; i++)        {             var calMSitem = calMSarr1[i];            var lbl = calMS_Branch.add ('item', calMSitem);         } 
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////       function fillall_SP_PNS()
{   
var calSP_PnSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars SP/Press N Stick");    var calSP_PnSTempFiles = calSP_PnSTempPath.getFiles();   var calSP_PnSnamesArr = [];   for(var i=0; i<calSP_PnSTempFiles.length; i++){   var thiscalSP_PnSFile = calSP_PnSTempFiles[i];   calSP_PnSnamesArr.push(thiscalSP_PnSFile.displayName);  }    return calSP_PnSnamesArr; 
}    var calSP_PnSarr1 = fillall_SP_PNS();        for(var i=0; i<calSP_PnSarr1.length; i++)        {             var calSP_PnSitem = calSP_PnSarr1[i];            var lbl = calSP_PnS_Branch.add ('item', calSP_PnSitem);         }   
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////           function fillall_SP_MS()
{   
var calSP_MSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars SP/Magna Stick");    var calSP_MSTempFiles = calSP_MSTempPath.getFiles();   var calSP_MSnamesArr = [];   for(var i=0; i<calSP_MSTempFiles.length; i++){   var thiscalSP_MSFile = calSP_MSTempFiles[i];   calSP_MSnamesArr.push(thiscalSP_MSFile.displayName);  }    return calSP_MSnamesArr; 
}    var calSP_MSSarr1 = fillall_SP_MS();        for(var i=0; i<calSP_MSSarr1.length; i++)        {             var calSP_MSitem = calSP_PnSarr1[i];            var lbl = calSP_MS_Branch.add ('item', calSP_MSitem);         }
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////              function fillall_SP_SS()
{   
var calSP_SSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars SP/Super Size Press N Stick");    var calSP_SSTempFiles = calSP_SSTempPath.getFiles();   var calSP_SSnamesArr = [];   for(var i=0; i<calSP_SSTempFiles.length; i++){   var thiscalSP_SSFile = calSP_SSTempFiles[i];   calSP_SSnamesArr.push(thiscalSP_SSFile.displayName);  }    return calSP_SSnamesArr; 
}    var calSP_SSarr1 = fillall_SP_SS();        for(var i=0; i<calSP_SSarr1.length; i++)        {             var calSP_SSitem = calSP_SSarr1[i];            var lbl = calSP_SS_Branch.add ('item', calSP_SSitem);         }
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                     function fillall_SS()
{   
var calSSTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars/Super Size Press N Stick");    var calSSTempFiles = calSSTempPath.getFiles();   var calSSnamesArr = [];   for(var i=0; i<calSSTempFiles.length; i++){   var thiscalSSFile = calSSTempFiles[i];   calSSnamesArr.push(thiscalSSFile.displayName);  }    return calSSnamesArr; 
}    var calSSarr1 = fillall_SS();        for(var i=0; i<calSSarr1.length; i++)        {             var calSSitem = calSSarr1[i];            var lbl = calSS_Branch.add ('item', calSSitem);         }   
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                      function fillall_3month()
{   
var cal3monthTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Calendars/3-Month 8858 & 8860");    var cal3monthTempFiles = cal3monthTempPath.getFiles();   var cal3monthnamesArr = [];   for(var i=0; i<cal3monthTempFiles.length; i++){   var thiscal3monthFile = cal3monthTempFiles[i];   cal3monthnamesArr.push(thiscal3monthFile.displayName);  }    return cal3monthnamesArr; 
}    var cal3montharr1 = fillall_3month();        for(var i=0; i<cal3montharr1.length; i++)        {             var cal3monthitem = cal3montharr1[i];            var lbl = cal3month_Branch.add ('item', cal3monthitem);         }
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                           function fillall_FC_7871()
{   
var calFC_7871TempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/FULL COLOR/V7871");    var calFC_7871TempFiles = calFC_7871TempPath.getFiles();   var calFC_7871namesArr = [];   for(var i=0; i<calFC_7871TempFiles.length; i++){   var thiscalFC_7871File = calFC_7871TempFiles[i];   calFC_7871namesArr.push(thiscalFC_7871File.displayName);  }    return calFC_7871namesArr; 
}    var calFC_7871arr1 = fillall_FC_7871();        for(var i=0; i<calFC_7871arr1.length; i++)        {             var calFC_7871item = calFC_7871arr1[i];            var lbl = calFC_7871_Branch.add ('item', calFC_7871item);         }
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                              function fillall_FC_PnC()
{   
var calFC_PnCTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/FULL COLOR/V7873 PAWS N CLAWS");    var calFC_PnCTempFiles = calFC_PnCTempPath.getFiles();   var calFC_PnCnamesArr = [];   for(var i=0; i<calFC_PnCTempFiles.length; i++){   var thiscalFC_PnCFile = calFC_PnCTempFiles[i];   calFC_PnCnamesArr.push(thiscalFC_PnCFile.displayName);  }    return calFC_PnCnamesArr; 
}    var calFC_PnCarr1 = fillall_FC_PnC();        for(var i=0; i<calFC_PnCarr1.length; i++)        {             var calFC_PnCitem = calFC_PnCarr1[i];            var lbl = calFC_PnC_Branch.add ('item', calFC_PnCitem);         }   
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function fillall_Misc()
{   
var calMiscTempPath = Folder ("S:/Art/ArtDept/  Vitronic Master Templates/CALENDARS/Misc");    var calMiscTempFiles = calMiscTempPath.getFiles();   var calMiscnamesArr = [];   for(var i=0; i<calMiscTempFiles.length; i++){   var thiscalMiscFile = calMiscTempFiles[i];   calMiscnamesArr.push(thiscalMiscFile.displayName);  }    return calMiscnamesArr; 
}    var calMiscarr1 = fillall_Misc();        for(var i=0; i<calMiscarr1.length; i++)        {             var calMiscitem = calMiscarr1[i];            var lbl = calMisc_Branch.add ('item', calMiscitem);         }   
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

okbtn.onClick = function()
{      getchoice()
alert ("who's awesome?" + itemrequested.text + " is your choice")

}

cnlbtn.onClick = function ()
{
    w.close()
}

 w.show ()
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getchoice()
{
    var maxPossible = calPnS_Branch.length;           for (var i = 0, l = maxPossible; i < l; i++) {             if (calPnS_Branch[i].selected == true) {                 itemrequested.text = calPnS_Branch[i].name;                alert ("pns");                               break;            } else if (calMS_Branch[i].selected == true) {                 itemrequested.text = calMS_Branch[i].name;                               break;            } else if (calSS_Branch[i].selected == true) {                 itemrequested.text = calSS_Branch[i].name;                break;            } else if (calSP_Branch[i].selected == true) {                 itemrequested.text = calSP_Branch[i].name;                break;            } else if (calSP_PnS_Branch[i].selected  == true) {                itemrequested.text = calSP_PnS_Branch[i].name;                break;            } else if (calSP_MS_Branch[i].selected  == true) {                 itemrequested.text = calSP_MS_Branch[i].name;                break;            } else if (calSP_SS_Branch[i].selected  == true) {                 itemrequested.text = calSP_SS_Branch[i].name;                break;            } else if (calFC_7871_Branch[i].selected  == true) {                 itemrequested.text = calFC_7871_Branch[i].name;                break;            } else if (calFC_PnC_Branch[i].selected  == true) {                 itemrequested.text = calFC_PnC_Branch[i].name;                break;            } else if (cal3month_Branch[i].selected  == true) {                 itemrequested.text = cal3month_Branch[i].name;                break;            } else if (calMisc_Branch[i].selected  == true) {                 itemrequested.text = calMisc_Branch[i].name;                break;            } else        {            itemrequested.text = "Item Not Found";                               }        }     }

 

 

I'm not sure how to get the selected item, I have the scriptui-2-5 guide from Peter Hahrel and it has been a major help but doesn't say how to get the users choice that I can find.

 

I made a selection part near the bottom that goes through every item of every branch to get the selection but it never works.  I even tried the "cal_Tree.selected" but it only returns the index number not the name.

 

Always thankful

 

-Zantcor-


Viewing all articles
Browse latest Browse all 12845

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>