Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2015
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function () {
  2.     "use strict";
  3.  
  4.     var path = require("path");
  5.  
  6.     var MENU_ID = "lalala";
  7.     var MENU_LABEL = "$$$/JavaScripts/Generator/shotthumb/Menu=lalala";
  8.  
  9.     var _menuState = true; //menuState
  10.  
  11.     function init (generator, config) {
  12.         //(name, displayName, enabled, checked)
  13.         generator.addMenuItem(MENU_ID, MENU_LABEL, true, true).then(
  14.             function () {
  15.                 console.log("[CREATE]", MENU_ID);
  16.             },
  17.             function () {
  18.                 console.log("[FAILED]", MENU_ID);
  19.             }
  20.         );
  21.  
  22.         generator.onPhotoshopEvent("generatorMenuChanged", handleGeneratorMenuChanged(generator));
  23.  
  24.         function initLater() {
  25.             generator.onPhotoshopEvent("imageChanged", handleImageChanged(generator));
  26.         }
  27.  
  28.         process.nextTick(initLater);
  29.     }
  30.  
  31.     function handleGeneratorMenuChanged (generator) {
  32.         return function (event) {
  33.           console.log("menuChanged");
  34.           var menu = event.generatorMenuChanged;
  35.           if (!menu || menu.name !== MENU_ID) {
  36.               return;
  37.           }
  38.    
  39.           var menuState = generator.getMenuState(menu.name);
  40.           console.log("Menu event %s, starting state %s", stringify(event), stringify(menuState));
  41.    
  42.           //toggleChecked
  43.           //var params = {name: MENU_ID, enabled: menuState.enabled, checked: menuState.checked};
  44.           generator.toggleMenu(MENU_ID, menuState.enabled, !menuState.checked);
  45.    
  46.           //menuStateChecked
  47.           var menuState = generator.getMenuState(menu.name);
  48.           _menuState = menuState.checked;
  49.           console.log("_menuState: " + _menuState);
  50.         };
  51.     }
  52.  
  53.     function handleImageChanged (generator) {
  54.         return function (document) {
  55.           console.log("Image " + document.id + " was changed:");
  56.           if (!_menuState) {
  57.               console.log('handleImageChanged : canceled');
  58.               return;
  59.           } else {
  60.               var jsxFile = path.resolve(__dirname, "jsx/hostscript.jsx")
  61.               generator.evaluateJSXFile(jsxFile);
  62.           }
  63.         };
  64.     }
  65.  
  66.     /*********** HELPERS ***********/
  67.     function stringify(object) {
  68.         try {
  69.             return JSON.stringify(object, null, "       ");
  70.         } catch (e) {
  71.             console.error(e);
  72.         }
  73.         return String(object);
  74.     }
  75.  
  76.     exports.init = init;
  77. }());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement