CS4 Actions change "Show Current Layer, Toggle With Others" MIA

Greetings forumers,
I have been using Photoshop for years as a hobby and professionally. My employer recently upgraded our Mac Pro Quad-Core Intel Xeon computers to Photoshop CS4. The transition has been mostly painless accept for all the changes to the keyboard shortcuts (I'll live).
Recently we have come across an issue with one of our customer's workflows that we have not been able to get by using CS4. Or customer has a workflow that we must work within in order to provide them with the artwork files in a way they can use for other processes. The main parts of this workflow involve layer structure and a set of actions that they have been using since Photoshop 7. Our customer uses Photoshop CS3.
With the transition to Photoshop CS4 in our shop, one line of their action does not function in CS4.
Show Current Layer
Toggle With Others
What needs to happen is at the end of the action all layers need to be turned visible. In CS3, in the layer palette, by Control & Clicking the eye and selecting "Show/Hide all other layers" produced the recorded action 'Show Current Layer, Toggle With Others'. The names of the layers are not recorded. This is good because the action will work on any layer no matter what the name of the layer is. In essence all layers are made visible.
In CS4 performing the same above clicks produces a recorded action 'Show , ...' The diference is that in CS4 the action is recording the name of every layer that it is showing/hiding. Simply change the name of one of your layers and running the action again produces a verbose error box.
So any thoughts on how to make visible all layers in a document using an action that will work on any layered file?
We are constructing our files in CS4 and opening them in CS3 to run the action for our customer as a work around. Or we are manually toggling the visibility, but what fun is that when it used to be automatable?
Any help would be greatly appreciated.

You could try this script (CS4 only) to make all layers/groups visible. If it works for you, you could then call it as part of your action.
selectAllLayers();
var sl = getSelectedLayersIdx();
var sLayers = new Array();
for( var i = 0; i < sl.length; i++ ){
   makeActiveByIndex( [ sl[ i ] ], false );
   sLayers.push( activeDocument.activeLayer.name );
ShowAllLayers(sLayers);
function ShowAllLayers(layerNames) {
    var desc = new ActionDescriptor();
        var list = new ActionList();
            var ref = new ActionReference();
   for(var a in layerNames){
            ref.putName( charIDToTypeID('Lyr '), layerNames[a] );
   $.writeln(layerNames[a] );
        list.putReference( ref );
    desc.putList( charIDToTypeID('null'), list );
    executeAction( charIDToTypeID('Shw '), desc, DialogModes.NO );
function selectAllLayers(){ 
   var desc = new ActionDescriptor();
        var ref = new ActionReference();
        ref.putEnumerated( charIDToTypeID( "Lyr " ), charIDToTypeID( "Ordn" ), charIDToTypeID( "Trgt" ) );
    desc.putReference( charIDToTypeID( "null" ), ref );
executeAction( stringIDToTypeID( "selectAllLayers" ), desc, DialogModes.NO );
   function getSelectedLayersIdx(){
      var selectedLayers = new Array;
      var ref = new ActionReference();
      ref.putEnumerated( charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
      var desc = executeActionGet(ref);
      if( desc.hasKey( stringIDToTypeID( 'targetLayers' ) ) ){
         desc = desc.getList( stringIDToTypeID( 'targetLayers' ));
          var c = desc.count
          var selectedLayers = new Array();
          for(var i=0;i<c;i++){
            try{
               activeDocument.backgroundLayer;
               selectedLayers.push(  desc.getReference( i ).getIndex() );
            }catch(e){
               selectedLayers.push(  desc.getReference( i ).getIndex()+1 );
       }else{
         var ref = new ActionReference();
         ref.putProperty( charIDToTypeID("Prpr") , charIDToTypeID( "ItmI" ));
         ref.putEnumerated( charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
         try{
            activeDocument.backgroundLayer;
            selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" ))-1);
         }catch(e){
            selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" )));
      return selectedLayers;
function makeActiveByIndex( idx, visible ){
   for( var i = 0; i < idx.length; i++ ){
      var desc = new ActionDescriptor();
      var ref = new ActionReference();
      ref.putIndex(charIDToTypeID( "Lyr " ), idx[i])
      desc.putReference( charIDToTypeID( "null" ), ref );
      if( i > 0 ) {
         var idselectionModifier = stringIDToTypeID( "selectionModifier" );
         var idselectionModifierType = stringIDToTypeID( "selectionModifierType" );
         var idaddToSelection = stringIDToTypeID( "addToSelection" );
         desc.putEnumerated( idselectionModifier, idselectionModifierType, idaddToSelection );
      desc.putBoolean( charIDToTypeID( "MkVs" ), visible );
      executeAction( charIDToTypeID( "slct" ), desc, DialogModes.NO );

Similar Messages

  • Can i change the current email adress with a different one and still keep my purchases?

    can i change the current email adress with a different one and still keep my purchases?

    You can change your email address as much as you want in your support profile: https://supportprofile.apple.com/
    Purchases are linked to your Apple ID, not your email address. They are not necessarily identical.

  • In the latest iOS updates, did Apple change the way Airplay communicate with other devices through Wifi?

    Short :
    In the latest iOS updates, did Apple change the way Airplay communicate with other devices through Wifi?
    Detailed:
    We had a glitch with our Apple TV 3A 3-4 weeks ago and had to factory reset it (we reconfigured it with the exact same configuration than before the crash), it's now running iOS 7.0.2, I can't saw which version it ran before the problem though.
    It's used in a business environment with 30+ iPads 2, half of them are updated to 8.1.1 and the other half to 8.1.2. We use the latest iTunes version.
    Before the glitch that required a reset, all the iPads were detecting and mirroring when needed to the Apple TV, but now the iPads don't see the Apple TV in their list of Airplay devices anymore (but they detect various other devices inside our network).
    I have to add that our Apple TV is able to navigate the movie store correctly, so I assume that it's not an internet restriction issue from our end (also, the APple TV do not see either any of the many iPads on its device-detection screen.
    We successfully connected an iPhone 5S and an iPhone 6 through P2P Airplay, so it's not the issue, but when we connected the iPhones to our Wifi network (Same as all the other devices are using) the Apple TV suddenly disappeared from the choices.
    Hence the reason why I inquire to the possibility that some changes were made in one of the latest iOS revisions, if so, we would require some details so we can adjust our Wifi configuration accordingly to allow the proper detection of devices.
    P.S. I tried the basic troubleshooting of Airplay problems with no avail. Airplay button is displaying on the control panel, Airplay do not show the Apple TV at all (so it's not either the trick to display the Mirroring button), we also already proceeded to the suggested devices reboots, so my issue is quite more complex I believe.
    Thanks in advance.

    PhotogYogi wrote:
    I Have the same issue on a brand new iPad mini 2. My battery is only lasting up to 5 hours. I went on chat with Apple last night and they said my battery is fine and its a Safari issue. I'm literally losing 1% every 3-4 minutes. I tried recalibrating my battery, signing out of iCloud, shutting off all locations, turning off background app refresh, restoring network settings, restoring all, and finally restoring from iTunes with no luck. This is just awful. I got this iPad so I could use it on my long flight for a trip I have coming up, and unfortunately, it's not going to last that long, plus I'm concerned about how many times i will be recharging my battery because of this since battery's do have a life cycle dependent on the number of charges. This is frustrating and needs to be fixed ASAP and addressed by Apple.
    By the way, Apple told me to bring my device to the Apple Store because it's still under warranty. That's great and all, but I'm going to waste my time if there is no fix for this issue.
    Ok so you want Apple to address the problem, but yet you don't want to take it to them just in case they can't fix it? What if they can fix it? Complaining here certainly won't fix it.

  • CS4- CS5: changed behavior in file handling with points (".")

    ... oh, no, it's horrible -- new version, new problems
    I have such file names: 1_xxx_26.08.10.jpg, 2_xxx_26.08.10.jpg, ...
    I am creating an action which saves this file in a specific directory (after several editing steps) by using e.g. the first file and "Save for web".
    I want to execute this action via batch processing on all these files.
    Now the changed behaviour in CS5: all the files were saved as "1_xxx_26.08.jpg" in my selected directory and not as several files with the "old" file name. Only files without "my points", e.g. "1_test.jpg" where saved correctly -- as it was in CS4.
    Example action:
    -> "save vor web" doesn't use only the target directory to save the file with their own names. Insted they were all saved as "xxx_22.08.jpg"
    I don't want to change the name of all my files... so, any ideas?
    Thanks a lot.
    Carlos (0:20 am -- only because of this bug; yes, it's a bug for me )

    Are you sure?
    Yes, with these default settings and with other settings the file name is always xxx_26.08.jpg
    -> the result is always the same:
    I got around "my" problem by using a harmless file name ("temp.jpg") during recording of the action. Now I have only the directory specified in this action command without a filename:
    Maybe the only solution
    Thanks again
    carlos

  • Dvt:schedulingGantt : to show current date directly with the week

    Hello everyone,
    i use Jdeveloper 11g and ADF.
    I use this component: "dvt:schedulingGantt" and
    Q1: I would like to know if I can show directly when I'm going on this page the current week.
    Q2: Is it possible to put on "Start time" field the current date minus one month? and "End time" field the current date plus one year?
    Thank you
    Regards

    Are you sure you haven't committed one of the cardinal sins of the Java-ignorant by confusing it with Javascript?

  • JS CS4: Create variable for current layer then select the layer at the end of a script

    I'm coming up blank with the verbiage and spinning my wheels with the OMV and script guide.
    var myOriginalLayer = app.activeDocument.layers.item(0);
    alert(myOriginalLayer)
    returns "object layer" and not the layer's name.
    var myOriginalLayer = app.activeDocument.layers.lastItem().name;
    Does return the layer name I want but not by selection.
    I'm challenged on how to select the layer.

    Hi John,
    The difference lies in that the [Object Layer] is the actual object, and the 'name' is just a property -- just like its color.
    You can use one of these two approaches:
    var myOriginalLayer = app.activeDocument.layers.item(0);
    alert(myOriginalLayer.name);
    will hold the original layer object, and you can see the name if required :-)
    To re-select the layer, use
    app.activeDocument.activeLayer = myOriginalLayer;
    Alternatively, selecting by name goes like
    var myOriginalLayerNAME = app.activeDocument.layers.lastItem().name;
    app.activeDocument.activeLayer = app.activeDocument.layers.item(myOriginalLayerNAME);
    I also noticed the following:
    app.activeDocument.layers.item(0) points to the first layer of your document; not the 'active' one. Similarly, app.activeDocument.layers.lastItem() just points to the very last one. I'm not sure if the order of the activeDocument.layers array mimicks the order as shown in the Labels palette, but I would hope it does :-)
    To get/set the active layer, use app.activeDocument.activeLayer as shown above.

  • Oracle Sales Integration with other modules - Flow Diagam

    Hi,
    Where can i find a flow chart showing Oracle Sales Integration with other modules?
    Thanks,
    Hari

    Hi
    You can refer to my publishing in this site which might help you to some extent
    http://apps2fusion.com/at/sk
    Hope this helps
    Regards
    Sivakumar

  • I want to change apple ID to new gmail addr. But it wont let me swap my current ID address with new one because the new one is default one and in use so it's not accepted.  Imget themessage already in use so how do I simply swap positions of 2 email adr?

    How tonswap new email address for old one in apple ID.  When I try to make my new gmail address my apple ID it won't accept it because it's already in use as my rescue email.  I'd like my other email to be rescue email and gmail to be apple ID but their edit account area won't take the address simce it's already in use. I just want to swap them!

    Welcome to the Apple community Yao.
    If you mean that Find My Phone is asking for a password to a different Apple ID to your current Apple ID.
    This feature has been introduced to make stolen phones useless to those that have stolen them.
    However it can also arise when the user has changed their Apple ID details with Apple and not made the same changes to their iCloud account/Find My Phone on their device before upgrading to iOS 7, or if you restore from a previous back up made before you changed your details.
    The only solution is to change your Apple ID back to its previous state with Apple at My Apple ID using your current password, you don’t need access to this address if it’s previously been used with your Apple ID, once you have saved these details enter the password as requested on your device and then turn off "find my phone" and delete the account from your device.
    You should then change your Apple ID back to its current state, save it once again and then log back in using your current Apple ID. Finally, turn "find my phone" back on once again.
    This article provides more information about Activation Lock.

  • My iCloud is defaulting to an old Hotmail address that I no longer use, my apple ID is currently functioning fine with a gmail account.  I'm not able to change my iCloud email on my phone or on desktop... Any advice?

    My iCloud is defaulting to an old Hotmail address that I no longer use, my apple ID is currently functioning fine with a gmail account.  I'm not able to change my iCloud email on my phone or on desktop... Any advice?

    You would have to change your Apple ID back to your old hotmail address (https://appleid.apple.com ) in order to turn off "Find My iPhone" and change the iCloud ID. After you changed it back and verified your old hotmail address you should be able turn off "Find My iPhone" and to temporarily delete your iCloud account from your devices. After that you can change your Apple ID back to your gmail address again. After it is verfied, you could add back your iCloud account by using your gmail address.

  • Changes to a layer Ph cs4 js

    Hi, I need to make several changes to a layer, but none of them are working. Here what I have:
    doc = app.activeDocument;
    var myLayer = doc.activeLayer;   // I need to specify the layer
    or
    var myLayer = doc.layers.itemByName("Vector Smart Object");     // I need to specify the layer
    myLayer.insertLabel ("INSTRUCTIONS (TURN OFF)");     // I need to rename the layer
    myLayer.move (LocationOptions.AT_BEGINNING);      // I need to move the layer to the very bottom
    myLayer.printable = false;     //  I need to set the layer not to print if possible
    myLayer.locked = true;      //  I need to lock the layer
    Your help is highly appreciated.
    Yulia

    It seems you are again trying to use improper terminology.
    Photoshop’s Document Object Model is different from Illustrator’s and Indesign’s!
    In ESTK consult Help – Object Model Viewer to see what the items and operations are called.
    As for the matter at hand:
    You could either create a Solid Color Layer (using ScriptingListener-code for example) with the intended values, or fill the artLayer.
    var myWhiteLayer = doc.artLayers.add();
    myWhiteLayer.name =  "WHITE LAYER";
    var myWhite = new CMYKColor ();
    myWhite.cyan = 0.0;
    myWhite.magenta = 0.0;
    myWhite.yellow = 0.0;
    myWhite.black =0.0;
    doc.selection.selectAll();
    doc.selection.fill(myWhite);
    doc.selection.deselect();

  • I bought a 4G SIM activation kit on the advice of a CS rep, who said I could change out the SIM card on my Verizon Droid X (currently in use with a customer loyalty plan) and switch it to a prepaid plan. But now it appears there is no SIM card to switch o

    I bought a 4G SIM activation kit on the advice of a CS rep, who said I could change out the SIM card on my Verizon Droid X (currently in use with a customer loyalty plan) and switch it to a prepaid plan. But now it appears there is no SIM card to switch out. Google search finds several others have asked that question and the Droid X doesn't have a SIM card, apparently. But, the 4G SIM activation kit "Compatibility" tab claims that it is compatible with the Droid X, so what is the real story here? Do I have to send this kit back to you?

    No. Call Apple Care and give them the serial number. They may be able to tell you who it is locked to.

  • I was upgrading my iOS last night but when I checked to see the progress ,the home page refused to show. After d apple icon comes on the screen immediately changes to show the iTunes icon with a charging port cable

    I was upgrading my iOS last night but when I checked to see the progress ,the home page refused to show. After d apple icon comes on the screen immediately changes to show the iTunes icon with a charging port cable. What should I do?

    That means that you have to connect your iPad to your computer and you need to use iTunes to restore the iOS. Software. Read this for the instructions.
    iTunes: Restoring iOS software - Support - Apple

  • HT204053 I want to change the apple ID for iCloud in my iPhone so that it's the same ID used with my iPad and Mac. When I go to settings and iCloud in the iPhone, it won't let me change the current apple ID - how can I do this?

    I'm hoping to sync iCal via my four apple devices through the iCloud.
    Unfortunately, I used two different Apple IDs when setting up the iCloud accounts on the devices.
    How can I change the Aplle ID associated with my iPhone so that it's the same one used for my iPad and desktop?
    When I go to settings and iCloud in the iPhone, the apple ID that appears is greyed-out and will not let me click on it to change it.
    Any suggestions?

    To change the iCloud ID you have to go to Settings>iCloud, tap Delete Account, then sign back in with the other ID.  When you delete the account it will prompt you about what to do with the iCloud data.  If you need to migrate it and merge it with the data in the new account choose Keep on My iDevice; then choose Merge to upload the data and merge it with the new account.  If your data is already in the other account and you don't need to migrate it to the other account, choose Delete from My iDevice.

  • CS4 Brushes don't seem to work with Wacom Mouse

    Ok, so since I've upgraded to CS4 about 3 months ago my Wacom Mouse (Intuos 3) doesn't seem to do anything with any brush tool. My attempts at brushing or stamping show in the history, but nothing changes to my document. I'm hoping this is a simple check box I'm missing or something of that nature.
    Before someone asks...
    -I am in normal masking mode.
    -I am brushing/clone stamping on the layer I want to be on with 'Current Layer' selected.
    -I am in the RGB Channel.
    -My opacity and flow are set to 100%.
    -Brush tools work just fine with the Pen.
    -I've actually replaced my mouse for a new one, same issue.
    Any help would certainly be appreciated. Thanks much!

    Check out the brush engine; specifically the shape dynamics with pen pressure selected. If the minimum diameter setting is a 0% then although the pen works with this, the mouse doesn't.
    Anthony.

  • Set current layer question

    I've noticed in an action I have, it has a step that says "Set current layer".
    What exactly is that and how do you use it?  I want to add it to an action I'm creating.

    That usally means setting a layer property of the layer that is
    active in that action step.
    If you click the little flyout arrows in that step (set current layer),
    most of the time you can see what the actual step is.
    If you want to know just about everthing that has to do with actions,
    take a look at action central. Go to the lnk that says "Mother of all Tutorials" and download it.
    It's kind of a hard read, but very complete.
    http://www.atncentral.com/links.htm
    Also the help for cs4 is good for the basics.
    MTSTUNER

Maybe you are looking for