From 1b34576b61e8ef98eadce9e6cbb8ed8ce8a79e00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20V=C3=A1squez=20P=C3=A9rez?= Date: Thu, 13 Apr 2017 18:17:42 -0700 Subject: [PATCH] Fixed a mislabeling of a UI input field that rendered the Prefixing function unusable. --- yScripts/y_CompHerder.jsx | 244 +------------------------------------- 1 file changed, 1 insertion(+), 243 deletions(-) diff --git a/yScripts/y_CompHerder.jsx b/yScripts/y_CompHerder.jsx index c8c1721..6bad2fc 100644 --- a/yScripts/y_CompHerder.jsx +++ b/yScripts/y_CompHerder.jsx @@ -1,243 +1 @@ -#include "../yScripts/y_JSExtensions.jsx"; - -function CompHerder() -{ - this.info = - { - name : "CompHerder", - version : 0.1, - stage : "development", - description : "Tool to manage project items.", - url : "yorchnet.com" - }; - this.appearence = - { - buttonHeight : 30, - buttonWidth : 126 - }; - this.resources = - { - icon : new File('yNet.png'), - }; - this.methods = - { - pad : function ( n , pad ) { - zeros = ""; - for ( i = 0 ; i < pad ; i ++ ) - { - zeros+="0"; - } - n = String(n); - padded = zeros.substr( 0, pad - n.length ) + String(n) ; - return padded - }, - replace: function( items , string , newString ){ - for ( i = 0 ; i < items.length ; i ++ ){ - var item = items[i]; - item.name = item.name.replace( string , newString ); - } - return true; - }, - getSelectedProjectItems: function (){ - var items = []; - var p = app.project; - for ( var i = 1 ; i <= p.numItems ; i ++ ){ - var item = p.item(i); - if ( item.selected ){ - items.push(item); - } - } - //items = items.concat( app.project.activeItem.selectedItems ); - return items; - }, - suffix: function ( items , suffix ){ - for ( i = 0 ; i < items.length ; i ++ ){ - var item = items[i]; - if ( item.name.search( suffix ) != (item.name.length - suffix.length) ){ - item.name+= "_"+suffix; - } - - } - return true; - }, - prefix : function( items , prefix ){ - for ( i = 0 ; i < items.length ; i ++ ) - { - var item = items[i]; - if ( item.name.search( prefix ) != 0 ){ - item.name = prefix + "_" + item.name; - } - } - return true; - }, - rename: function ( items , new_name ){ - for ( i = 0 ; i < items.length ; i ++ ){ - var item = items[i]; - item.name = new_name + "_" + i; - } - - } - - } - this.init = function init() - { - - this.btnLauyout = - "button\ - {\ - preferredSize: ['" + this.appearence.buttonWidth + "','" + this.appearence.buttonHeight + "'],\ - text:'" + this.info.name + "',\ - helpTip:'" + this.info.description + "'\ - }"; - - this. res = - "window\ - {\ - type:'palette',\ - text:'" + this.info.name + ' ' + this.info.ver + ' ' + this.info.stage + "',\ - info: Group \ - {\ - alignment:['center','bottom'],\ - icon: Image \ - {\ - icon:'" + this.resources.icon.path + '/' + this.resources.icon.name + "',\ - preferredSize: [15, 18]\ - },\ - website: StaticText\ - {\ - text:'" + this.info.url + "',\ - alignment:['fill','center']\ - },\ - }\ - }"; - } - this.createUI = function createUI( ) - { - var myUI = this; - var res = - "window { \ - text: 'CompHerder',\ - alignment: ['fill','fill'], \ - alignChildren: ['center','top'], \ - orientation: 'column', \ - resizeable: 'true',\ - tabs: Panel {\ - type: 'tabbedpanel',\ - alignment: ['fill','fill'], \ - alignChildren: ['center','top'], \ - search_tab: Panel {\ - type: 'tab',\ - text: 'Search & Replace',\ - orientation: 'column', \ - alignChildren: ['center','top'], \ - searchGrp: Group {\ - alignment: ['fill','fill'], \ - alignChildren: ['center','top'], \ - orientation: 'column', \ - searchString: EditText {text:'SEARCH FOR TEXT',alignment: ['fill','center']}, \ - },\ - replaceGrp: Group {\ - alignment: ['fill','fill'], \ - alignChildren: ['center','center'], \ - orientation: 'column', \ - replaceString: EditText {text:'REPLACE WITH TEXT',alignment: ['fill','center']}, \ - }\ - doItBtn: Button {text: 'Replace in selected Comps', alignment: ['center','center']} , \ - }\ - suprefix: Panel {\ - type: 'tab',\ - text: 'Suffix / Prefix',\ - orientation: 'column', \ - suprefixGrp: Group {\ - alignment: ['fill','fill'], \ - alignChildren: ['left','center'], \ - orientation: 'column', \ - pre:Group {\ - alignment: ['fill','fill'], \ - alignChildren: ['left','center'], \ - orientation: 'row', \ - prefixString: EditText {text:'PREFIX',alignment: ['fill','center']}, \ - prefixBtn: Button {text: 'Preffix'} , \ - },\ - su:Group{\ - alignment: ['fill','fill'], \ - alignChildren: ['left','center'], \ - orientation: 'row', \ - sufixString: EditText {text:'SUFIX',alignment: ['fill','center']}, \ - sufixBtn: Button {text: 'Sufix'} , \ - }\ - },\ - },\ - rename_tab: Panel {\ - type: 'tab',\ - text: 'Rename',\ - renameGrp: Group {\ - alignment: ['fill','fill'], \ - alignChildren: ['left','center'], \ - orientation: 'row', \ - renameString: EditText {text:'NEW NAME',alignment: ['fill','center']}, \ - renameBtn: Button {text: 'Rename'} ,\ - }\ - }\ - },\ - }"; - - myUI.window = new Window( res ); - myUI.window.layout.layout(true); - - myUI.window.show(); - - myUI.window.layout.onResizing = myUI.window.layout.onResize = function () { myUI.layout.resize();} - - //EVENT HANDLERS - myUI.window.tabs.search_tab.doItBtn.onClick = function(){ - var search_str = myUI.window.tabs.search_tab.searchGrp.searchString.text; - var replace_str = myUI.window.tabs.search_tab.replaceGrp.replaceString.text; - myUI.methods.replace( myUI.methods.getSelectedProjectItems() , search_str , replace_str ); - }; - - myUI.window.tabs.suprefix.suprefixGrp.pre.prefixBtn.onClick = function(){ - var pre = myUI.window.tabs.suprefix.suprefixGrp.su.prefixString.text; - myUI.methods.prefix( myUI.methods.getSelectedProjectItems() , pre ); - }; - - myUI.window.tabs.suprefix.suprefixGrp.su.sufixBtn.onClick = function(){ - var su = myUI.window.tabs.suprefix.suprefixGrp.su.sufixString.text; - myUI.methods.suffix( myUI.methods.getSelectedProjectItems() , su ); - }; - - myUI.window.tabs.rename_tab.renameGrp.renameBtn.onClick = function(){ - var new_name = myUI.window.tabs.rename_tab.renameGrp.renameString.text; - myUI.methods.rename( myUI.methods.getSelectedProjectItems() , new_name ); - }; - - return(this); - } - this.replaceInSelectedItems = function(){ - var search_string = "GFX"; - var replace_string = "VFX"; - } - - this.yMainFunction = function yMainFunction() - { - w = this.createUI(); - } - this.activate = function activate() - { - this.yTool.yMainFunction(); - } - - this.init(); - return this; -} - -//CHECKS that the toolbox exists, and if it doesn´t it runs the script on its own. -if (typeof(YTB)=='undefined') -{ - CompHerder = new CompHerder(); - CompHerder.activate(); -} -else -{ - YTB.addTool(new CompHerder()); -} +#include "../yScripts/y_JSExtensions.jsx"; function CompHerder() { this.info = { name : "CompHerder", version : 0.1, stage : "development", description : "Tool to manage project items.", url : "yorchnet.com" }; this.appearence = { buttonHeight : 30, buttonWidth : 126 }; this.resources = { icon : new File('yNet.png'), }; this.methods = { pad : function ( n , pad ) { zeros = ""; for ( i = 0 ; i < pad ; i ++ ) { zeros+="0"; } n = String(n); padded = zeros.substr( 0, pad - n.length ) + String(n) ; return padded }, replace: function( items , string , newString ){ for ( i = 0 ; i < items.length ; i ++ ){ var item = items[i]; item.name = item.name.replace( string , newString ); } return true; }, getSelectedProjectItems: function (){ var items = []; var p = app.project; for ( var i = 1 ; i <= p.numItems ; i ++ ){ var item = p.item(i); if ( item.selected ){ items.push(item); } } //items = items.concat( app.project.activeItem.selectedItems ); return items; }, suffix: function ( items , suffix ){ for ( i = 0 ; i < items.length ; i ++ ){ var item = items[i]; if ( item.name.search( suffix ) != (item.name.length - suffix.length) ){ item.name+= "_"+suffix; } } return true; }, prefix : function( items , prefix ){ for ( i = 0 ; i < items.length ; i ++ ) { var item = items[i]; if ( item.name.search( prefix ) != 0 ){ item.name = prefix + "_" + item.name; } } return true; }, rename: function ( items , new_name ){ for ( i = 0 ; i < items.length ; i ++ ){ var item = items[i]; item.name = new_name + "_" + i; } } } this.init = function init() { this.btnLauyout = "button\ {\ preferredSize: ['" + this.appearence.buttonWidth + "','" + this.appearence.buttonHeight + "'],\ text:'" + this.info.name + "',\ helpTip:'" + this.info.description + "'\ }"; this. res = "window\ {\ type:'palette',\ text:'" + this.info.name + ' ' + this.info.ver + ' ' + this.info.stage + "',\ info: Group \ {\ alignment:['center','bottom'],\ icon: Image \ {\ icon:'" + this.resources.icon.path + '/' + this.resources.icon.name + "',\ preferredSize: [15, 18]\ },\ website: StaticText\ {\ text:'" + this.info.url + "',\ alignment:['fill','center']\ },\ }\ }"; } this.createUI = function createUI( ) { var myUI = this; var res = "window { \ text: 'CompHerder',\ alignment: ['fill','fill'], \ alignChildren: ['center','top'], \ orientation: 'column', \ resizeable: 'true',\ tabs: Panel {\ type: 'tabbedpanel',\ alignment: ['fill','fill'], \ alignChildren: ['center','top'], \ search_tab: Panel {\ type: 'tab',\ text: 'Search & Replace',\ orientation: 'column', \ alignChildren: ['center','top'], \ searchGrp: Group {\ alignment: ['fill','fill'], \ alignChildren: ['center','top'], \ orientation: 'column', \ searchString: EditText {text:'SEARCH FOR TEXT',alignment: ['fill','center']}, \ },\ replaceGrp: Group {\ alignment: ['fill','fill'], \ alignChildren: ['center','center'], \ orientation: 'column', \ replaceString: EditText {text:'REPLACE WITH TEXT',alignment: ['fill','center']}, \ }\ doItBtn: Button {text: 'Replace in selected Comps', alignment: ['center','center']} , \ }\ suprefix: Panel {\ type: 'tab',\ text: 'Suffix / Prefix',\ orientation: 'column', \ suprefixGrp: Group {\ alignment: ['fill','fill'], \ alignChildren: ['left','center'], \ orientation: 'column', \ pre:Group {\ alignment: ['fill','fill'], \ alignChildren: ['left','center'], \ orientation: 'row', \ prefixString: EditText {text:'PREFIX',alignment: ['fill','center']}, \ prefixBtn: Button {text: 'Preffix'} , \ },\ su:Group{\ alignment: ['fill','fill'], \ alignChildren: ['left','center'], \ orientation: 'row', \ sufixString: EditText {text:'SUFIX',alignment: ['fill','center']}, \ sufixBtn: Button {text: 'Sufix'} , \ }\ },\ },\ rename_tab: Panel {\ type: 'tab',\ text: 'Rename',\ renameGrp: Group {\ alignment: ['fill','fill'], \ alignChildren: ['left','center'], \ orientation: 'row', \ renameString: EditText {text:'NEW NAME',alignment: ['fill','center']}, \ renameBtn: Button {text: 'Rename'} ,\ }\ }\ },\ }"; myUI.window = new Window( res ); myUI.window.layout.layout(true); myUI.window.show(); myUI.window.layout.onResizing = myUI.window.layout.onResize = function () { myUI.layout.resize();} //EVENT HANDLERS myUI.window.tabs.search_tab.doItBtn.onClick = function(){ var search_str = myUI.window.tabs.search_tab.searchGrp.searchString.text; var replace_str = myUI.window.tabs.search_tab.replaceGrp.replaceString.text; myUI.methods.replace( myUI.methods.getSelectedProjectItems() , search_str , replace_str ); }; myUI.window.tabs.suprefix.suprefixGrp.pre.prefixBtn.onClick = function(){ var pre = myUI.window.tabs.suprefix.suprefixGrp.pre.prefixString.text; myUI.methods.prefix( myUI.methods.getSelectedProjectItems() , pre ); }; myUI.window.tabs.suprefix.suprefixGrp.su.sufixBtn.onClick = function(){ var su = myUI.window.tabs.suprefix.suprefixGrp.su.sufixString.text; myUI.methods.suffix( myUI.methods.getSelectedProjectItems() , su ); }; myUI.window.tabs.rename_tab.renameGrp.renameBtn.onClick = function(){ var new_name = myUI.window.tabs.rename_tab.renameGrp.renameString.text; myUI.methods.rename( myUI.methods.getSelectedProjectItems() , new_name ); }; return(this); } this.replaceInSelectedItems = function(){ var search_string = "GFX"; var replace_string = "VFX"; } this.yMainFunction = function yMainFunction() { w = this.createUI(); } this.activate = function activate() { this.yTool.yMainFunction(); } this.init(); return this; } //CHECKS that the toolbox exists, and if it doesn´t it runs the script on its own. if (typeof(YTB)=='undefined') { CompHerder = new CompHerder(); CompHerder.activate(); } else { YTB.addTool(new CompHerder()); } \ No newline at end of file