Top N group

Hi all
I have to create a report for 20 first Division values. DIvision and service requests come from area (we do not have access to RPD. we work with domain only)

How can I display the first 20 values for each division.
I tried with TOPN (COUNT (DISTINCT .SR "Request for Service"), 20). and

COUNT (DISTINCT 'Request for services'.SR "Request for Service".) Division)
but it is not work each division.

Could you please help me on this.

Thanks in advance

Please close the thread...

Tags: Business Intelligence

Similar Questions

  • JavaScript to make the selection of top level group?

    Does anyone know how to select a group of high level by index?

    For example, I have a lot of files with deeply nested groups and I want to select all the illustrations as high-level groups and create a work plan around the visible boundaries of the group.

    I was able to loop through the groupItems from the document, but I can't seem to tell the difference between the higher level groups and subgroups. In other words, the loop works properly, but it is creating a plan to work around the Group of high level and then around each sub-group and each group within this subgroup.

    In the image as an attachment, you can see that there are 5 top-level groups in this document. However, everything else is essentially grouped within these groups. for example, the logo 'Earth' is about 100 + path grouped items. information on the collar are grouped several times in a complex hierarchy as well.

    The obvious solution is to decouple everything and then regroup every piece of shirt in 1 group. Unfortunately, that in itself is a lot more time than to manually create work plans and then the file is not very clean, if never go back inside to change/fix something.

    I guess a way to loop through the subgroups and ignore them if they are in the geometric limits of higher level? But I'm not really sure where to start on this code...

    This is the code that I currently have which creates around each groupItem, work plans, but also around each groupItem in the upper level... it up also a mistake because I think that illustrator can not cope to create work plans that fast? When I run the same script on less complicated work, it works fine.

    var docRef = app.activeDocument;
    var aB = docRef.artboards;
    var gI = docRef.groupItems;
    
    
    for (a = 0; a< gI.length; a++){
        var currentGroup = gI[a];
        currentGroup.selected = true;
        var vB = currentGroup.visibleBounds;
        aB.add(vB);//an Illustrator error occurred: 1346458189 ('MRAP')
    }   
    

    any ideas how to isolate this high-level group and ignore the rest? Thank you people.

    Screen Shot 2015-01-05 at 11.06.17 AM.jpg

    Instead of document.groupItems, try document.layers [0] .groupItems

  • apply a clipping for each top-level group mask in the document

    Sample file: https://drive.google.com/file/d/0BzEoJSYDhH_WcXhIalFRTk9qOGc/view?usp=sharing

    We can assume:

    Art • grouped on configurations with a line called die.

    • All groups exist on "Layer 1"

    I am a loop in groups and work with groups who has relatives is "layer". I have to loop through all the groups in the document, but when I created the clipping mask creates a new group and live my loop. I am now a loop only in groups of "Layer 1"and moving them to a new layer before the clipping mask. My script is breaking after the Group has been moved to the new layer. I have a bunch of alerts in there for debugging.

    #target Illustrator
    
    
    var idocX = app.activeDocument;
    var li = idocX.layers;
    
    
    function meetTheParents(PageItem){
      if (PageItem.parent.typename = "Layer"){
      return "Layer";
      } else if (PageItem.parent.typename = "GroupItem"){
      return "Group";
      } 
    }
    
    function isLayerFree(layer){
      if (layer.locked == false && layer.visible == true){
      var gpa = layer.parent;
      isLayerFree(gpa);
      return true
      } else {
      return false
      }
    }
    
    
    var trLyr = li.add();
    trLyr.name = "TRASH";
    var l1 = li.getByName('Layer 1');
    for (j = l1.groupItems.length -1; j >= 0; j--) {
      app.executeMenuCommand ('deselectall');
      var iGroup = l1.groupItems[j];
      if (iGroup.hidden==false && iGroup.locked==false) {
      if (meetTheParents(iGroup) == "Layer"){
      if (isLayerFree(iGroup.parent)){
      iGroup.move(trLyr, ElementPlacement.PLACEATBEGINNING);
      // set die variable to die in current selection
      alert ("Group " + j + " moved to trash layer");
      alert ("trash layer path items length = " + trLyr.pathItems.length); // I'm getting '0' here even though I just moved items into it.
      var die = trLyr.pathItems.getByName('proofLine'); // script breaks here
      alert ("Die identified for this group");
    
      die.move(trLyr, ElementPlacement.PLACEATBEGINNING);
      for (a = 0; a < trLyr.pageItems.length; a++){
      var thing = trLyr.pageItems[a];
      if (thing.hidden==false && thing.locked==false){
      thing.selected = true;
      }
      }
      var sel = idocX.selection; // get selection
      alert (sel.length + " items in current selection.");
    
      // make clipped group of die with art inside
      if (sel.length==2) {// continue only if 2 objects are selected
      var igroup = idocX.groupItems.add(); // add a group that will be the clipping mask group
    
      var imask = sel[0]; // the mask is the object on top
      var ipath = sel[1]; // the "drawn object" is at the bottom
    
      var idup = imask.duplicate(); // duplicate the mask, to later get the fill and stroke to apply to the clipping path
    
      ipath.move (igroup, ElementPlacement.PLACEATBEGINNING); // add both path to the group
      imask.move (igroup, ElementPlacement.PLACEATBEGINNING);
    
      imask.clipping = true; // make the mask the clipping path
      igroup.clipped = true; // clip the everything in the group to the clipping mask
    
      if (idup.filled == true){
      imask.fillColor = idup.fillColor; // add fill color, same as the dup
      }
      imask.stroked = true; // stroke the mask
      imask.strokeWidth = idup.strokeWidth; // add stroke width, same as the dup
      imask.strokeColor = idup.strokeColor; // add stroke color, seme as the dup
    
      idup.remove(); // remove the duplicate
      }else { // show this message if other than 2 objects are selected
      alert("Select both, the Mask and the object that needs to be 'inside'.\rThe Mask needs to be the top most object.");
      }
      app.executeMenuCommand ('deselectall');
      igroup.move (l1, ElementPlacement.PLACEATBEGINNING);
      }
      }
      }
    }
    trLyr.remove();
    

    Inside of my plu script that it breaks in silence, in this example script is for me a 'no such item. There should be such an element, I just put there. Once the script completes, the Group has been moved, which means that the named path is right where it should be.

    Let's see if this works:

    #target illustrator
    function test(){
        if(app.documents.length < 1){
            return;
        }
        var doc = app.activeDocument;
        var lr = doc.layers[0];
        for(var i=0; i		   
  • TestStand: Create sequence group

    Can I create a sequence in sequence similar to the "Setup", main TestStand group' and groups of 'clean '?

    I would like to have a subgroup of these top-level groups and use them as '#region' is used in the c# language.

    It's not possibe.  You can only have 3 groups of step and they are defined for you.

    What is the reason for this?  Maybe there is a better way to reach your goal.

  • solidarity groups of information

    I'm working on a guarantee system for the third year in a row and there's a piece ion the system which has always been a real pain to manage, the sessions section. Sessions are organized by a core group, and some of these groups have a sub-level of organization outside of it.  Each top-level group is configured to start automatically at the top of a column. Each session includes a title, title of speaker/jobs, business, level of difficulty and a description.  Some have a note of practical training between the level of difficulty and the description.  I want to be able to do is to consider each block session something that breaks as a single unit.  For example, if the description does not fit in the column it breaks not only the description on the next column, it flies over the entire unit of sublevel, title, speaker/job title, etc. to the next column.  I played a little with options keep but this requires you to know how many lines to keep together and I simply do not or cannot know that, when you write the paragraph style.

    If paragraph 1 is set to keep with 1 line and paragraph 2 is to keep all the lines together and keep with 1 line, and paragraph 3 is set on all non-breaking lines, then paragraphs 1, 2 and 3 will always stay together as a single unit.

    The trick is to put all the paragraphs to keep together all the lines and all the paragraphs (except the last) to keep with 1 line.

    I have long wanted a way to set a paragraph to keep with X of the preceding lines, rather than just keep following lines with X. Since this has probably been a requested feature for a long time for PageMaker and InDesign and QuakXPress for more than two decades, I suspect that it is not as easy as it sounds.

    Edit: Stu?

  • Every time Firefox opens, I get new tab, with my desired as a tab page I click on get to. How to get back to how it was in previous versions?

    After updating to the latest version of Firefox, when it opens I get two tabs, and one that appears on my screen is new tab with my homepage on the other, which requires that I click on it to go. Also, when I click on a link, the same thing happens, a new tab page comes up, with what I clicked on as another tab I have to click to get to. It's actually quite boring and inconvenient. How to get back to the way it was, so that when I run Firefox it opens on my homepage, and when a new page opens, I see the content of the link I clicked on? This new and improved IMO is really new and worse.

    A further extension could have snuck in. These can be bundled with other software you may have installed recently.

    Try turning off all non-essential or unrecognized extensions on page modules. Either:

    • CTRL + SHIFT + a
    • Firefox orange (or the Tools menu) button > Add ons

    In the left column, click Extensions. Then, when in doubt, turn off. (Or so completely junk, delete).

    Typically, a link will appear above at least an extension disabled to restart Firefox. You can complete your work on the tab and click one of the links in the last step.

    That get rid of the extra tab?

    Note: I also suggest to visit the Control Panel, uninstall a program and by clicking on the column heading "installed on". This should bring the most recent additions at the top and group by install date so that you can examine the software may have unexpected how have been installed.

  • How are checks on the screen?

    Hello

    I want to add on the screen controls to custom FCP generators and effects. How are controls in movement on the screen?

    Thank you

    Ivan

    Basically, you need to use those already provided in motion (unless you can program the FxPlug plugins).

    You'll find commands to the screen in several filters. The most common is Poke (in the set of filters of distortion.) However, * any * filter CSOS have to publish in its parameter list can be used and there are several different types. ('Exotic' favourites are blur > blur Gradient, tile > Kaleidotile and aesthetic > extrusion.)

    Create a new top-level group - rename CSO (or CSO if you have more than one). In the Group Inspector (you * must *) set a fixed resolution 2D. (Otherwise will be very unexpected effects.)

    The group selected, add filters > distortion > Poke.

    In the Inspector of Poke, find and check CSOS to publish.

    Note: the group still has a length of 0 images. You can in properties > calendar > and set the time to the length of your project (or more) or more simply, just add a shape: rectangle, circle, what is practical and then put it in the wide (or turn off the group so it does not appear). The group will have its length defined for the duration of the project (if your preferences > project > create a new layer at the beginning of the project is on or your playhead is 0.) Onscreen controls appear only in FCPX to the number of frames including the object/group parent in the timeline panel. Simply adding a filter does not add an object and filters have no length if there is nothing to act accordingly.

    Add behaviors to link to the X and the parameters Y of your object under control. (You need add separate links to individual settings, because there is a mismatch of types of settings.)

    In Wells of the behaviour Source object, add the group to the OSC. For the Source parameter in the compatible settings drop-down list, select Filters.Poke.Center.X and Y respectively.  Your object will move to the upper right corner of the canvas. At the bottom of each link behavior Inspector, there is an Offset value. Define each of these to-0.5 (which resets the object in the middle of the canvas.)

    Your object will now be controllable in FCPX with the control on the screen.

    You know how application relates to several destinations resolution and how it applies to what you were doing just a little.

    Motion (very skillfully I must add) treated all resolutions screens as having the coordinates of 0 and 1 (inclusive). No matter what draft resolution you have, SD, HD, 4 K, etc... Controls of the OSC are considered as having the same dimensions. Real pixel values are calculated from the screen resolutions for horizontal and vertical to the destination video (project) dimensions. [Fixed resolution dimensions help you determine the proportions in FCPX, but according to me, are automatically set to adapt to the target FCPX project when it is applied.] Maybe it's not always true, and if you make adjustments, then you essentially override this behavior in your specific model project. See below.]

    In the middle of the canvas to an object, as a form, etc., is (0,0), but for a CSO is 0.5, 0.5. When you create a relationship between an object and the parameters on-screen control center, you're "setting" the Center in a different coordinate system. Compensation for these values to the negative terminal of the Center value resets the position to the original 'normal '.

    Whatever he says, you can actually fool onscreen controls by setting a custom 'resolution' of the group you places in the dimensions of fixed resolution (say: 300x500pixels). So if you want to create something like a "HUD" to appear in FCPX and have the only control flow within its limits and control another object on the screen, which can be done (using the behaviors of clamp to restrict the Center.X and the Center.Y to between 0 and 1 and the OSC will remain within the limits of the resolution group fixed dimensions you set).  If you don't 'get' this still, forget about it then for now, it is not so important and has nothing to do with what you were asking. [In the case of a "HUD" type configuration, you can create another group with other CSO to control the placement of objects on the screen HUD Group, and everything in this group would be sent as CSOS, including the CSOS of the object of HUD designed... get some practice with CSO, then venture into complicated. You are only limited by what you can put together with what you have available in motion if you do not program such things at the level of the application/plugin. [Here is an example of this type of control project - it's very simple and used to define the background color: https://www.youtube.com/watch?v=jpIxuuZuko8 - it has been designed to be taken apart and studied.]

    If you build a model with CSO and the OSC does not appear in FCPX: return in movement and check that his group has length (Timing) and make sure that you have checked the box publish CSOS (and that the effect is selected in the Inspector of FCPX - click the title bar of effect).

    On the resolution fixed. Motion, by default, the account of dynamic groups - they grow and to shrink to just be the bounding box of all that they contain. By setting the fixed resolution, you force Motion to limit the group size to what you have defined. When control of the center of CSOS goes beyond the limits of a dynamic group, it acts as a multiplier of positional - and your purpose (most of the time immediately) disappears very quickly off the screen. If your initial group of the OSC has no physical object in it, it's dynamic ratings are 0 x 0 and * any * movement of the control on the screen increases by whole numbers for each pixel, it moves. If you move the OSC 1/2 pixel in any direction, the object's Center is already aligned with the edge of the canvas.

    If you have any questions, do not hesitate to ask. This topic may be a little hard to grasp until you actually out by yourself and see it in action.

  • TMSPE questions

    Looking at the new version of TMSPE, have a few questions:

    • I take it in the note accompanying or documentation, but it seems you can add is without model or version without configuration parameters... in other words, under TMS Agent I could specify a URI to the top-level group phone book server and leave the model/version not specified, and all models and versions of capable endpoints would receive the setting... I had to set it up in one place.  It seems now I need to provide at least she (even if simply copying) once for each model.  Is this correct?
    • How does the management of versions?  If a video Jabber 4.4 client connects, but there is no model Movi 4.4 applied, should I use the closest lower level model? This seems to be the case, but wanted to confirm.  I don't think he behaved this way according to the model of the Agent of TMS, but not sure.
    • No user level more substitutes!  Any chance this could make in the product?

    Hi, Frédéric

    Sorry, I noticed that what I wrote here is false. It is the opposite of what I said and I'm sorry for the mistake. You can use the client 4.4 jabber using the 4.3 model, but the 4.3 client cannot use the model of 4.4. This is how it works.

    So basically, you can have model 4.2 and 4.4 model. Then you can connect with 4.2, 4.3 and 4.4, but not 4.1 for example.

    Again sorry for the misleading information.

    / Magnus

  • HDR Photoshop script

    Hi, I would need your help. I want to customize this code it will automatically run when I launch immediately click OK plus. Thank you very much.

    #target photoshop
    
    /*********************************************************************
     Batch HDR Script by David Milligan
    *********************************************************************/
    
    /*********************************************************************
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    **********************************************************************/
    
    /*
    // BEGIN__HARVEST_EXCEPTION_ZSTRING
    
    <javascriptresource>
    <name>Batch HDR...</name>
    <menu>automate</menu>
    </javascriptresource>
    
    // END__HARVEST_EXCEPTION_ZSTRING
    */
    
    //these lines import the 'Merge To HDR.jsx' script that is built in to photoshop, we will make calls to that script and some of the scripts that it includes
    var runMergeToHDRFromScript = true;
    var g_ScriptFolderPath = app.path + "/"+ localize("$$$/ScriptingSupport/InstalledScripts=Presets/Scripts");
    var g_ScriptPath = File( g_ScriptFolderPath+'/Merge To HDR.jsx' );
    $.evalFile( g_ScriptPath ); 
    //$.level = 2;
    
    //default settings:
    mergeToHDR.useAlignment = true;
    mergeToHDR.useACRToning = false;
    var numberOfBrackets = 3;
    var userCanceled = false;
    var sourceFolder = new Folder('/d/Automata/LOADING');;
    var outputFolder = new Folder('/d/Automata/LOADING');;
    var saveType = "JPEG";
    var jpegQuality = 80;
    var progress;
    var statusText;
    var progressWindow;
    var fileMask = "*";
    var outputFilename = "hdr_output_";
    var zeroPadding = 2;
    
    var hdrRadius = 100;
    var hdrStrength = 0.5;
    var hdrGamma = 1.0;
    var hdrExposure = 0.0;
    var hdrDetail = 100;
    var hdrShadow = 0;
    var hdrHighlights = 0;
    var hdrVibrance = 20;
    var hdrSaturation = 30;
    var hdrSmooth = false;
    var hdrDeghosting = kMergeToHDRDeghostBest;//kMergeToHDRDeghostOff
    var hdrCurve = "0,0,255,255";
    var estTimeRemaining = "";
    
    var previewDoc;
    var originalDoc;
    
    function main()
    {
        promptUser();
        
        //make sure user didn't cancel
        if(sourceFolder != null && outputFolder != null && sourceFolder.exists && outputFolder.exists && numberOfBrackets > 0)
        {
            initializeProgress();
            var files =  sourceFolder.getFiles(fileMask);
            files.sort();
            var currentFileList = new Array();
    
            var numberOfFiles = files.length;
            
            if (numberOfFiles % 3 == 0)
            {
                numberOfBrackets = 3;
            }
            else
            {
                numberOfBrackets = 2;
            }
    
            /* convert numberOfFiles to a string to make sure zeropaddingis high enough to cover all files */
            
            var numberOfFilesStr = "" + (numberOfFiles / numberOfBrackets);
            if (zeroPadding > 0 && zeroPadding < numberOfFilesStr.length)
            {
                zeroPadding = numberOfFilesStr.length;
            }
    
            for(var index = 0;  index < numberOfFiles; index++)
            {
                if((index % numberOfBrackets) == numberOfBrackets - 1)
                {
                    var start = new Date();
                    progress.value = 100 * index / numberOfFiles;
                    currentFileList.push(files[index]);
                    if(userCanceled) break;
                    if(numberOfBrackets > 1)
                    {
                        statusText.text = "Merging files "+(index-numberOfBrackets+2)+" - "+(index+1)+" of "+numberOfFiles + estTimeRemaining;
                        //for braketed exposures use the mergeToHDR script to merge the files into a single 32 bit image
                        mergeToHDR.outputBitDepth= 32;
                        
                        mergeToHDR.mergeFilesToHDR( currentFileList, mergeToHDR.useAlignment, hdrDeghosting );
                        statusText.text = "Toning files "+(index-numberOfBrackets+2)+" - "+(index+1)+" of "+numberOfFiles+ estTimeRemaining;
                    }
                    else
                    {
                        statusText.text = "Loading file "+(index+1)+" of "+numberOfFiles+ estTimeRemaining;
                        //otherwise just open the file
                        doOpenFile(files[index]);
                        statusText.text = "Toning file "+(index+1)+" of "+numberOfFiles+ estTimeRemaining;
                    }
                    progress.value = 100 * (index + numberOfBrackets / 2 ) / numberOfFiles;
                    if(userCanceled) break;
                    try
                    {
                        if(app.activeDocument != null && outputBitDepth < 32)
                        {
                            //apply the actual tone mapping to the HDR image to get it back down to 8 bits
                            doHDRToning();
                        }
                    }
                    catch(error)
                    {
                        alert(error + "\nCheck number of files in source folder");
                        break;
                    }
                    
                    //save the result and close
                    //TODO: add leading zeros to index in filename
                    
                    if(numberOfBrackets > 1)
                    {
                        statusText.text = "Saving result "+(index-numberOfBrackets+2)+" - "+(index+1)+" of "+numberOfFiles+ estTimeRemaining;
                    }
                    else
                    {
                        statusText.text = "Saving result "+(index+1)+" of "+numberOfFiles+ estTimeRemaining;
                    }
                    if(userCanceled) break;
                    doSaveFile(outputFolder.absoluteURI + "/" + outputFilename + ZeroPad(Math.round((index + 1)/numberOfBrackets), zeroPadding) );
                    activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    
                    //reset our file list
                    currentFileList = new Array();
                    
                    //calculate time remaining
                    var end = new Date();
                    var timeElapsed = end.getTime() - start.getTime();
                    var mins = timeElapsed / 60000 * ((numberOfFiles - index - 1) / numberOfBrackets);
                    estTimeRemaining = " | Remaining: " + ZeroPad((mins / 60).toFixed(0),2) + ":" + ZeroPad((mins % 60).toFixed(0),2);
                }
                else
                {
                    currentFileList.push(files[index]);
                }
            }
            progressWindow.hide();
        }
    }
    
    function doOpenFile(filename)
    {
        
        const eventOpen = app.charIDToTypeID('Opn ');
        var desc = new ActionDescriptor();
        desc.putPath( typeNULL, new File( filename ) );
        desc.putBoolean( kpreferXMPFromACRStr, true ); //not sure what this does or if it is needed
        executeAction( eventOpen, desc, DialogModes.NO );
        //if we don't convert the image to 32bit the mergeToHDR script will not tone our image when we call it, it will simply downconvert it to 8 bit
        convertTo32Bit ();
    }
    
    function convertTo32Bit()
    {
        var idCnvM = charIDToTypeID( "CnvM" );
        var desc6 = new ActionDescriptor();
        var idDpth = charIDToTypeID( "Dpth" );
        desc6.putInteger( idDpth, 32 );
        var idMrge = charIDToTypeID( "Mrge" );
        desc6.putBoolean( idMrge, false );
        var idRstr = charIDToTypeID( "Rstr" );
        desc6.putBoolean( idRstr, false );
        executeAction( idCnvM, desc6, DialogModes.NO );
    }
    
    function doSaveFile(filename)
    {
        if(saveType == "JPEG")
        {
            var jpgSaveOptions = new JPEGSaveOptions();
            jpgSaveOptions.embedColorProfile = true;
            jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
            jpgSaveOptions.matte = MatteType.NONE;
            jpgSaveOptions.quality = jpegQuality;
            activeDocument.saveAs(new File(filename), jpgSaveOptions, true /*Save As Copy*/, Extension.LOWERCASE /*Append Extention*/);
        }
        else if(saveType == "TIFF")
        {
            var tifSaveOptions = new TiffSaveOptions();
            tifSaveOptions.embedColorProfile = true;
            activeDocument.saveAs(new File(filename), tifSaveOptions, true /*Save As Copy*/, Extension.LOWERCASE /*Append Extention*/);
        }
        else if(saveType == "TIFF LZW")
        {
            var tifSaveOptions = new TiffSaveOptions();
            tifSaveOptions.embedColorProfile = true;
            tifSaveOptions.imageCompression = TIFFEncoding.TIFFLZW;
            activeDocument.saveAs(new File(filename), tifSaveOptions, true /*Save As Copy*/, Extension.LOWERCASE /*Append Extention*/);
        }
        else if(saveType == "TIFF ZIP")
        {
            var tifSaveOptions = new TiffSaveOptions();
            tifSaveOptions.embedColorProfile = true;
            tifSaveOptions.imageCompression = TIFFEncoding.TIFFZIP;
            activeDocument.saveAs(new File(filename), tifSaveOptions, true /*Save As Copy*/, Extension.LOWERCASE /*Append Extention*/);
        }
        else
        {
            activeDocument.saveAs(new File(filename), undefined, true /*Save As Copy*/, Extension.LOWERCASE /*Append Extention*/);
        }
    }
    
    function doHDRToning()
    {
        //create the ActionDescriptor that describes the HDR toning settings to use
        var hdDesc = new ActionDescriptor;
        hdDesc.putInteger( stringIDToTypeID( 'version' ), 6 );//I'm not sure what this does
        hdDesc.putInteger(  kmethodStr, 3 );// the toning method to use, 3 = local adaptation
        hdDesc.putDouble( stringIDToTypeID( 'radius' ), hdrRadius );
        hdDesc.putDouble( stringIDToTypeID( 'threshold' ), hdrStrength );// strength
        hdDesc.putDouble( stringIDToTypeID( 'center' ), hdrGamma );// gamma
        hdDesc.putDouble( stringIDToTypeID( 'brightness' ), hdrExposure );// exposure
        hdDesc.putDouble( stringIDToTypeID( 'detail' ), hdrDetail );
        hdDesc.putDouble( stringIDToTypeID( 'shallow' ), hdrShadow );
        hdDesc.putDouble( stringIDToTypeID( 'highlights' ), hdrHighlights );
        hdDesc.putDouble( stringIDToTypeID( 'vibrance' ), hdrVibrance );
        hdDesc.putDouble( stringIDToTypeID( 'saturation' ), hdrSaturation);
        hdDesc.putBoolean( stringIDToTypeID( 'smooth' ), hdrSmooth );
        hdDesc.putBoolean( stringIDToTypeID( 'deghosting' ), hdrDeghosting );
        
        //create the tone curve
        var cDesc = new ActionDescriptor;
        cDesc.putString( stringIDToTypeID( 'name' ), 'Default');
        var cList = new ActionList;
        var points = hdrCurve.split(',');
        for(var i = 0; i < points.length; i++)
        {
            if(i % 2 == 1)
            {
                var pDesc = new ActionDescriptor;
                pDesc.putDouble( stringIDToTypeID( 'horizontal' ), points[i-1] );
                pDesc.putDouble( stringIDToTypeID( 'vertical' ), points[i] );
                pDesc.putBoolean( keyContinuity , false );// ?????
                cList.putObject( charIDToTypeID( 'Pnt ' ), pDesc );
            }
        }
        cDesc.putList( stringIDToTypeID( 'curve' ), cList );
        hdDesc.putObject( kclassContour, classShapingCurve, cDesc );
        
        //call the script that actually invokes the toning plugin
        convertFromHDRNoDialog( outputBitDepth, hdDesc );
    }
    
    function initializeProgress()
    {
        progressWindow = new Window("palette { text:'Meilleure Visite Chargement', \
            statusText: StaticText { text: 'Processing Images...', preferredSize: [350,20] }, \
            progressGroup: Group { \
                progress: Progressbar { minvalue: 0, maxvalue: 100, value: 0, preferredSize: [300,20] }, \
                cancelButton: Button { text: 'Cancel' } \
            } \
        }");
        statusText = progressWindow.statusText;
        progress = progressWindow.progressGroup.progress;
        progressWindow.progressGroup.cancelButton.onClick = function() { userCanceled = true; }
        progressWindow.show();
    }
    
    function promptUser()
    {
        var setupWindow = new Window("dialog { orientation: 'row', text: 'Meilleure Visite', alignChildren:'top', \
            leftGroup: Group { orientation: 'column', alignChildren:'fill', \
                inputPanel: Panel { text: 'Input', \
                    sourceGroup: Group { \
                    }, \
                    bracketGroup: Group{ \
                        bracketLabel: StaticText { text: 'Number of Brackets: ' }, \
                        bracketBox: EditText { characters: 2 }, \
                        filterLabel: StaticText { text: 'File Filter: ' }, \
                        filterText: EditText { characters: 5 }, \
                        alignCheckBox: Checkbox { text: 'Align' }\
                        deghostLabel: StaticText { text: 'Deghost: ' }\
                        deghostDropDown: DropDownList { }, \
                    } \
                }, \
                toningPanel: Panel { text: 'Toning', orientation:'row', alignChildren:'top' } ,\
                outputPanel: Panel { text: 'Output', \
                    outputGroup: Group { \
                        outputBox: EditText { characters: 10, text: '', enabled:false }, \
                    }, \
                    outputOptionsGroup: Group { \
                        outputFilenameLabel: StaticText { text: 'Filename Format: ' }, \
                        outputFilenameText: EditText { characters: 10 }, \
                    }, \
                    saveSettingsGroup: Group { \
                        saveTypeLabel: StaticText { text: 'Save As: ' }, \
                        saveDropDown: DropDownList { }, \
                        jpegQualityLabel: StaticText { text: 'JPEG Quality (1-10): ' }, \
                        jpegQualityText: EditText { characters: 2}, \
                        outputBitDepthLabel: StaticText { text: 'Bit Depth', enabled:false }, \
                        outputBitDepthDropDown: DropDownList { enabled:false }, \
                    } \
                } \
            }, \
            rightGroup: Group { orientation: 'column', alignChildren:'fill', \
                okButton: Button { text: 'OK', enabled: true } \
                cancelButton: Button { text: 'Cancel' } \
            } \
        } ");
        
        generateToningPanel(setupWindow.leftGroup.toningPanel);
        
        //shortcut variables
        var sourceBox = setupWindow.leftGroup.inputPanel.sourceGroup.sourceBox;
        var sourceBrowse = setupWindow.leftGroup.inputPanel.sourceGroup.sourceBrowse;
        var bracketBox = setupWindow.leftGroup.inputPanel.bracketGroup.bracketBox;
        var filterText = setupWindow.leftGroup.inputPanel.bracketGroup.filterText;
        var alignCheckBox = setupWindow.leftGroup.inputPanel.bracketGroup.alignCheckBox;
        var outputBox = setupWindow.leftGroup.outputPanel.outputGroup.outputBox;
        var outputFilenameText = setupWindow.leftGroup.outputPanel.outputOptionsGroup.outputFilenameText;
        var outputFilenamePost = setupWindow.leftGroup.outputPanel.outputOptionsGroup.outputFilenamePost;
        var saveDropDown = setupWindow.leftGroup.outputPanel.saveSettingsGroup.saveDropDown;
        var jpegQualityText = setupWindow.leftGroup.outputPanel.saveSettingsGroup.jpegQualityText;
        var jpegQualityLabel = setupWindow.leftGroup.outputPanel.saveSettingsGroup.jpegQualityLabel;
        var outputBitDepthDropDown = setupWindow.leftGroup.outputPanel.saveSettingsGroup.outputBitDepthDropDown;
        var outputBitDepthLabel = setupWindow.leftGroup.outputPanel.saveSettingsGroup.outputBitDepthLabel;
        var okButton = setupWindow.rightGroup.okButton;
        var cancelButton = setupWindow.rightGroup.cancelButton;
        var toningPanel = setupWindow.leftGroup.toningPanel;
        var deghostDropDown = setupWindow.leftGroup.inputPanel.bracketGroup.deghostDropDown;
        
        //set default values
        bracketBox.text = numberOfBrackets;
        filterText.text = fileMask;
        //mergeToHDR.useAlignment = true;
        alignCheckBox.value = mergeToHDR.useAlignment;
        outputFilenameText.text = outputFilename;
        jpegQualityText.text = jpegQuality;
        saveDropDown.add("item", "TIFF");
        saveDropDown.add("item", "JPEG");
        saveDropDown.add("item", "TIFF LZW");
        saveDropDown.add("item", "TIFF ZIP");
        saveDropDown.selection = 0;
        outputBitDepthDropDown.add("item", "8");
        outputBitDepthDropDown.add("item", "16");
        outputBitDepthDropDown.add("item", "32");
        outputBitDepthDropDown.selection = 0;
        
        var generateDeghostDropDownList = function(count)
        {
            deghostDropDown.removeAll()
            deghostDropDown.add("item", "Best");
            deghostDropDown.add("item", "Off");
            for(var i = 0; i < count; i++)
            {
                deghostDropDown.add("item", i);
            }
            deghostDropDown.selection = 0;
        }
        generateDeghostDropDownList(numberOfBrackets);
        
        //event handlers
        bracketBox.onChange = function()
        { 
            numberOfBrackets = bracketBox.text;
            generateDeghostDropDownList(numberOfBrackets);
        };
        filterText.onChange = function() { fileMask = filterText.text; };
        alignCheckBox.onClick = function() { mergeToHDR.useAlignment = alignCheckBox.value; };
        deghostDropDown.onChange = function() 
        { 
            if(this.selection.text == "Best") 
                hdrDeghosting = kMergeToHDRDeghostBest;
            else if(this.selection.text == "Off")
                hdrDeghosting = kMergeToHDRDeghostOff;
            else
                hdrDeghosting = Number(this.selection.text);
                
        };
        outputBox.onChange = function()
        {
            outputFolder = new Folder(outputBox.text);
            okButton.enabled = sourceFolder != null && outputFolder != null && sourceFolder.exists && outputFolder.exists;
        };
        outputFilenameText.onChange = function() { outputFilename = outputFilenameText.text; };
    
        saveDropDown.onChange = function()
        {
            saveType = saveDropDown.selection.text;
            jpegQualityText.enabled = saveDropDown.selection.text == "JPEG";
            jpegQualityLabel.enabled = saveDropDown.selection.text == "JPEG";
            if(saveDropDown.selection.text == "JPEG")
            {
                outputBitDepthDropDown.selection = 0;
            }
            outputBitDepthDropDown.enabled = saveDropDown.selection.text != "JPEG" && saveDropDown.selection.text != "Radiance" && saveDropDown.selection.text != "OpenEXR";
            outputBitDepthLabel.enabled = outputBitDepthDropDown.enabled;
            
        };
        jpegQualityText.onChange = function() { jpegQuality = jpegQualityText.text; };
        outputBitDepthDropDown.onChange = function()
        { 
            outputBitDepth = outputBitDepthDropDown.selection.text; 
            toningPanel.enabled = outputBitDepth != 32;
        }
        okButton.onClick = function() { setupWindow.hide(); cleanUpPreviews(); };
        cancelButton.onClick = function() { sourceFolder = null, setupWindow.hide(); cleanUpPreviews(); };
        
        saveDropDown.onChange();
        outputBitDepthDropDown.onChange();
        
        setupWindow.show();
    }
    
    function cleanUpPreviews()
    {
        if(originalDoc != null)
        {
            originalDoc.close(SaveOptions.DONOTSAVECHANGES);
            originalDoc = null;
        }
        if(previewDoc != null)
        {
            previewDoc.close(SaveOptions.DONOTSAVECHANGES);
            previewDoc = null;
        }
    }
    
    function generateToningPanel(toningPanel)
    {
        var leftToningGroup = toningPanel.add("group{orientation:'column',alignChildren:'fill'}");
        var rightToningGroup = toningPanel.add("group{orientation:'column',alignChildren:'fill'}");
        var presetGroup = leftToningGroup.add("group{orientation:'row'}");
        var presetDropDown = presetGroup.add("dropdownlist");
        var loadPresetButton = presetGroup.add("button", undefined, "Load Preset");
        var edgePanel = leftToningGroup.add("panel",undefined,"Edge Glow");
        var radiusSlider = createSliderControl(edgePanel.add("group"), "  Radius: ", "px", 0, 500, 0, hdrRadius, function(newValue){ hdrRadius = newValue; });
        var strengthSlider = createSliderControl(edgePanel.add("group"), "Strength: ", "", 0, 4.0, 2, hdrStrength, function(newValue){ hdrStrength = newValue; });
        var edgeGroup = edgePanel.add("group");
        var smoothEdgesBox = edgeGroup.add("checkbox",undefined, "Smooth Edges");
        var detailPanel = leftToningGroup.add("panel",undefined,"Tone and Detail");
        var gammaSlider = createSliderControl(detailPanel.add("group"), "  Gamma: ", "", 0.1, 2.0, 2, hdrGamma, function(newValue){ hdrGamma = newValue; });
        var exposureSlider = createSliderControl(detailPanel.add("group"), "Exposure: ", "", -5.0, 5.0, 2, hdrExposure, function(newValue){ hdrExposure = newValue; });
        var detailSlider = createSliderControl(detailPanel.add("group"), "     Detail: ", "%", -300, 300, 0, hdrDetail, function(newValue){ hdrDetail = newValue; });
        var advancedPanel = leftToningGroup.add("panel",undefined,"Advanced");
        var shadowSlider = createSliderControl(advancedPanel.add("group"), "  Shadow: ", "%", -100, 100, 0, hdrShadow, function(newValue){ hdrShadow = newValue; });
        var highlightSlider = createSliderControl(advancedPanel.add("group"), " Highlight: ", "%",  -100, 100, 0, hdrHighlights, function(newValue){ hdrHighlights = newValue; });
        var vibranceSlider = createSliderControl(advancedPanel.add("group"), "  Vibrance: ", "%",  -100, 100, 0, hdrVibrance, function(newValue){ hdrVibrance = newValue; });
        var saturationSlider = createSliderControl(advancedPanel.add("group"), "Saturation: ", "%",  -100, 100, 0, hdrSaturation, function(newValue){ hdrSaturation = newValue; });
        var toningCurvePanel = leftToningGroup.add("panel{text:'Toning Curve',alignChildren:'fill'}");
        var curveBox = toningCurvePanel.add("edittext", undefined, hdrCurve);
        
        //default values
        smoothEdgesBox.value = hdrSmooth;
        var presetFiles = getPresetFiles();
        var updateSliders = function()
        {
            radiusSlider(hdrRadius);
            strengthSlider(hdrStrength);
            smoothEdgesBox.value = hdrSmooth;
            exposureSlider(hdrExposure);
            gammaSlider(hdrGamma);
            detailSlider(hdrDetail);
            shadowSlider(hdrShadow);
            highlightSlider(hdrHighlights);
            vibranceSlider(hdrVibrance);
            saturationSlider(hdrSaturation);
            curveBox.text = hdrCurve;
        }
        if(presetFiles.length > 0)
        {
            for(var f in presetFiles)
            {
                presetDropDown.add("item", presetFiles[f].displayName.replace(".hdt",""));
            }
            presetDropDown.selection = 0;
            loadPreset(presetFiles[0]);
            presetDropDown.onChange = function()
            {
                loadPreset(presetFiles[presetDropDown.selection.index]);
                updateSliders();
            };
        }
        
        //event handlers
        loadPresetButton.onClick = function()
        {
            loadPreset(null);
            updateSliders();
        };
        smoothEdgesBox.onClick = function () { hdrSmooth = smoothEdgesBox.value; };
        curveBox.onChange = function () { hdrCurve = curveBox.text; };
        
        updateSliders();
    }
    
    
    function createSliderControl(group,label,postLabel,min,max,round,value,onValueChanged)
    {
        var ignoreChange = false;
        group.add("statictext", undefined, label);
        var slider = group.add("slider",undefined,value,min,max);
        slider.alignment = "fill";
        var box = group.add("edittext",undefined,value);
        box.characters = 6;
        group.add("statictext", undefined, postLabel);
        slider.onChange = function()
        {
            if(!ignoreChange)
            {
                ignoreChange = true;
                box.text = slider.value.toFixed(round);
                onValueChanged(slider.value);
                ignoreChange = false;
            }
        };
        box.onChange = function()
        {
            if(!ignoreChange)
            {
                ignoreChange = true;
                slider.value = box.text;
                onValueChanged(box.text);
                ignoreChange = false;
            }
        };
        return function(newValue)
        {
            slider.value = newValue;
            box.text = newValue.toFixed(round);
        };
    }
    
    //forces a redraw while a script dialog is active (for preview)
    var waitForRedraw = function()
    {
        var desc = new ActionDescriptor();
        desc.putEnumerated(charIDToTypeID("Stte"), charIDToTypeID("Stte"), charIDToTypeID("RdCm"));
        executeAction(charIDToTypeID("Wait"), desc, DialogModes.NO);
    }
    
    function getZoomLevel()
    {
        var ref = new ActionReference();
        ref.putEnumerated( charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
        var desc = executeActionGet(ref);
        return Number(desc.getDouble(stringIDToTypeID('zoom'))*100).toFixed(1);
    }
    
    function setZoomLevel( zoom )
    {
        if(zoom < 1 ) zoom =1;
        var ref = new ActionReference();
        ref.putEnumerated( charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
        var getScrRes = executeActionGet(ref).getObjectValue(stringIDToTypeID('unitsPrefs')).getUnitDoubleValue(stringIDToTypeID('newDocPresetScreenResolution'))/72;
        var docRes = activeDocument.resolution;
        activeDocument.resizeImage( undefined, undefined, getScrRes/(zoom/100), ResampleMethod.NONE );
        var desc = new ActionDescriptor();
        ref = null;
        ref = new ActionReference();
        ref.putEnumerated( charIDToTypeID( "Mn  " ), charIDToTypeID( "MnIt" ), charIDToTypeID( 'PrnS' ) );
        desc.putReference( charIDToTypeID( "null" ), ref );
        executeAction( charIDToTypeID( "slct" ), desc, DialogModes.NO );
        activeDocument.resizeImage( undefined, undefined, docRes, ResampleMethod.NONE );
    }
    
    function ZeroPad(number,numZeros)
    {
        var result = number.toString();
        while(result.length < numZeros)
        {
            result = "0" + result;
        }
        return result;
    }
    
    var getPresetFiles = function()
    {
        var presetFolder = new Folder(app.path + "/Presets/HDR Toning");
        return presetFolder.getFiles("*.hdt");
    }
    
    var loadPreset = function(presetFile)
    {
        if(presetFile == null)
        {
            presetFile = File.openDialog("Select Preset","*.hdt");
        }
        if(presetFile != null)
        {
            var tmpStr = new String();
            var binaryData = new Array();
            presetFile.encoding = "BINARY";
            presetFile.open('r');
            while(!presetFile.eof)
            {
                var ch = presetFile.readch();
                if ( ch.charCodeAt(0) == 0 ){
                    tmpStr += ' ';
                }
                else {
                    tmpStr += ch;
                }
                binaryData.push(ch.charCodeAt(0));
            }
            presetFile.close();
            if(binaryData.length >= 40)
            {
                // init start position for reading datas
                // start position for english version ( string "D e f a u l t" is in the preset file )
                var startPos = 38;
                if ( tmpStr.search ("P a r   d é f a u t") > -1 ){
                    // start position for french preset file version ( string "P a r   d é f a u t" is in the preset file ) (==> + 6 bytes)
                    startPos = 44;
                }
                // if your preset file can't be read, try this : open it in notepad to see the string "D e f a u l t" in your language and add the code here to set startPos to 38 + diff between the length of ("D e f a u l t") and length of ("D e f a u l t" in your language)
                var curvePointCount = getUInt16(binaryData, startPos);
                if(binaryData.length >= 104 + curvePointCount * 4)
                {
                    var curvePointStr = "";
                    for(var i = 0; i < curvePointCount; i++)
                    {
                        curvePointStr += getUInt16(binaryData, startPos + 4 + i * 4) + "," + getUInt16(binaryData, startPos + 2 + i * 4) + ((i < curvePointCount - 1) ? "," : "");
                    }
                    hdrCurve = curvePointStr;
                    
                    hdrStrength =  getFloat32(binaryData,8);
                    hdrRadius = getFloat32(binaryData, startPos + 10 + 5 * curvePointCount);
                    hdrExposure = getFloat32(binaryData, startPos + 34 + 5 * curvePointCount);
                    hdrSaturation = getFloat32(binaryData, startPos + 38 + 5 * curvePointCount);
                    hdrDetail = getFloat32(binaryData, startPos + 42 + 5 * curvePointCount);
                    hdrShadow = getFloat32(binaryData, startPos + 46 + 5 * curvePointCount);
                    hdrHighlights = getFloat32(binaryData, startPos + 50 + 5 * curvePointCount);
                    hdrGamma = getFloat32(binaryData, startPos + 54 + 5 * curvePointCount);
                    hdrVibrance = getFloat32(binaryData, startPos + 58 + 5 * curvePointCount);
                    hdrSmooth = getUInt16(binaryData, startPos + 62 + 5 * curvePointCount) != 0;
                }
                else
                {
                    alert("Error Loading File", "Error", true);
                }
            }
            else
            {
                alert("Error Loading File", "Error", true);
            }
        }
    }
    
    function getUInt16(byteArray,offset)
    {
        return byteArray[offset] * 0x100 + byteArray[offset + 1];
    }
    
    function getUInt32(byteArray,offset)
    {
        return byteArray[offset] * 0x1000000 + byteArray[offset + 1] * 0x10000 + byteArray[offset + 2] * 0x100 + byteArray[offset + 3];
    }
    
    function getFloat32(byteArray,offset)
    {
        var bytes = getUInt32(byteArray,offset);
        var sign = (bytes & 0x80000000) ? -1 : 1;
        var exponent = ((bytes >> 23) & 0xFF) - 127;
        var significand = (bytes & ~(-1 << 23));
        
        if (exponent == 128)
            return sign * ((significand) ? Number.NaN : Number.POSITIVE_INFINITY);
        
        if (exponent == -127) {
            if (significand == 0) return sign * 0.0;
            exponent = -126;
            significand /= (1 << 22);
        } else significand = (significand | (1 << 23)) / (1 << 23);
        
        return sign * significand * Math.pow(2, exponent);
    }
    
    main();
    
    

    I do not support exhibitions in order to perform processing HDR.   I don't want to create HDR images. The EXIF data does not have an EV adjustment. You can calculate EV information EXIF information.  Should the process of HDR data EXIF to calculate EV your image file need to have then the metadata.  Your script can be able to be something for the HDR script, I have no idea what the deghostFlag is all. Maybe if you examine the code in the script of David Milligan you can very well how to use the HDR script from another script.

  • Body is fixed regardless of what I do and just Funes dragging. Origin of the head does not work as well.

    Hey!

    In collaboration with Adobe host character Preview 3, made all the tutorials, they are great!

    Head of my character works fine, but the body (arms and torso) are fixed to the bg. I never fired them, they are just firmly stuck.  I've tried everything. removal of all the possible Islands, restart, re import, removal of all layers but a piece of the head and then adding a stick as the body figure... no matter what, the body remains fixed. If I put a player on hand is not distort the body but a piece of the arm... I am at a loss. Any help would be appreciated!

    Another strange aspect is that the head or the neck has no place of origin. I tried to put one in a bunch of times but it does nothing, but head still seem to work perfectly.

    This program so much love. Can't wait to see what he does next!

    -Lechuck11111

    Screen Shot 2016-06-02 at 12.33.38 PM.pngScreen Shot 2016-06-02 at 12.33.16 PM.pngScreen Shot 2016-06-02 at 12.32.20 PM.pngScreen Shot 2016-06-02 at 12.38.39 PM.png

    In addition to the tip of DaveW, also add a '+' in front of the Mervin top-level group.

  • Report - unsubscribe by email

    Hello Eloqua community!

    I'm looking for a report that will give her me cancel the subscription emails from 10 or 15 global albums gave us. In other words, this e-mail had the highest rate of churn during the last month or X calendar. I see a report "Top 15 groups by unsubscribe e-mail" but I want the real email, not the group name.

    Anyone who takes that info and how you do?

    Thanks in advance for your comments!

    Hi Abby,

    Nadine is correct that it is not an out-of-the-box report that provides this information. You can capture this metric by exporting the report "Email overview lot - all lots" for this time range and find the best lots "Churn rate" - it's the column last second in this report. Hope that helps.

    Gaia

  • myDropDownList.onChange buttons hide/visible, staticText etc., but scrolling through albums of all components

    Here is my code, but the thing is when I change my ddList that all objects of the Panel remain in the same place, so the thing is that I want to hide things but scrolling upward things have ordered more of my Panel.

    C5 ToolKit v1.0

    An after effects Script by Adrian Wülfrath

    // [email protected]

    Estudio Voraz

    VARIABLE CALL PARA A LAS DISTINTAS IMAGENES

    var imageName0 = "_vorazimg/voraz.png";

    var imagePath0 = File($.fileName).path + ' / ' + escape (imageName0);

    var imageName1 = "_vorazimg/off.png;

    var imagePath1 = File($.fileName).path + ' / ' + escape (imageName1);

    var imageName2 = "_vorazimg/sni.png";

    var imagePath2 = File($.fileName).path + ' / ' + escape (imageName2);

    var imageName3 = "_vorazimg/sna.png";

    var imagePath3 = File($.fileName).path + ' / ' + escape (imageName3);

    var imageName4 = "_vorazimg/proyectoBtn.png";

    var imagePath4 = File($.fileName).path + ' / ' + escape (imageName4);

    var imageName5 = "_vorazimg/sva.png";

    var imagePath5 = File($.fileName).path + ' / ' + escape (imageName5);

    Voraz Explorer button

    var winBrowserCmd = "C:/Program Files/Internet Explorer/iexplore.exe."

    var macBrowserCmdStart = "osascript-e ' open location------" ";" "

    var macBrowserCmdEnd = ' \ ' "";"

    AQUI BEGINS HAS CREARSE VENTANA DEL PANEL

    {

    function myScript (thisObj) {}

    function myScript_buildUI (thisObj) {}

    var myPanel = (thisObj instanceof Panel)? thisObj: new window ("palette", "Estudio Voraz Panel', undefined, {resizable: true}");

    res = "group {orientation:"column",-}".

    groupOne: Panel {text: 'Master', direction: "column", alignment: ['fill ', ' fill'], alignChildren: ["fill", "fill"],------}

    ddPanel: DropDownList {properties: {items: ['OFF', 'Salida No. Image', 'Salida No. Astérix', 'Salida Ventana Asterix','-']}}, \

    },\

    groupTwo: Panel {text:' template:', direction: "column", the alignment: ['fill', 'top'], alignChildren: ["fill", "fill"],------}

    imageDemo: IconButton {text: 'Model Salida No. Image',}, alignment: ["fill", "fill"],

    },\

    groupThree: Panel {text: 'Color System + line selector', direction: "column", alignment: ['fill ', ' fill'], alignChildren: ["fill", "fill"],------}

    ddColorSystem: DropDownList {properties: {items: ['Amarillo', 'Morado', 'Blue', 'MidBlue', 'DarkBlue','Roj o ']}}, \

    ddLineSelector: DropDownList {properties: {elements: ['line 1' ", ' 1 Hashtag + line" ", ' 1 line + Info", 1 Line + Info + Hashtag ','-', "2 lines","2 lines + Hashtag" ", ' 2 lines + Info", 2 lines + Info + Hashtag ',' '-', ' 3 lines "", ' 3 lines + Hashtag "", ' 3 lines + Info ' ", ' 3 lines + Info + Hashtag"]}},

    },\

    BtnGroup: Panel {text: 'Botones' orientation: 'row', alignment: ['fill', 'top'],------}

    editText: button {text: 'Edit text', alignment: preferredSize ['fill', 'left'],: [80,25]},

    editCaritas: button {text: 'Edit Caritas', alignment: preferredSize ['fill', 'left'],: [80,25]},

    editIconos: button {text: "Edit Iconos", alignment: preferredSize ['fill', 'left'],: [80,25]},

    editImage: button {text: "Change image", alignment: ['fill', 'left'], preferredSize: [100,25]},

    },\

    groupFour: Panel {text:'Caritas / Iconos, direction: "column", alignment: ['fill ', ' fill'], alignChildren: ["fill", "fill"],------}

    ddArreglosAsterix: DropDownList {properties: {items: ['OFF', "Caritas Astérix", 'Iconos Astérix']}}, \

    },\

    groupChecker: Panel {text: 'Options', orientation: 'row', alignment: alignChildren ['fill ', ' fill'],: ["fill", "fill"],------}

    ddPatterns: DropDownList {properties: {items: ['Models OFF', '-', "Acción", "Comedia", "Deportees", "Girly", "Geek", "Todo",' -','EXTRA ','-',' ASTERIX ']}},

    CBfoto: Case {text: "Foto"},

    CBWipper: Case {text: 'Wipper In'}, \

    CBSting: Case {text: 'Hashtag Sting'}, \

    },\

    groupRender: Panel {text: "Add al Render tail", orientation: 'row', alignment: ['fill ', ' fill'], alignChildren: ["fill", "fill"],------}

    renBtn: button {text: 'Add al Render tail'}, \

    },\

    groupVoraz: Panel {text: "www.estudiovoraz.com", of orientation: 'column', alignment: ['fill ', ' fill'], alignChildren: ["fill", "fill"],------}

    myIconButton: IconButton {text: 'IconButton',},

    },\

    }";

    myPanel.grp = myPanel.add (res);

    Default values (Practicamete're nada mas para indicate en position default por goes a permanecer cada cosa).

    myPanel.grp.groupOne.ddPanel.selection = 0

    myPanel.grp.groupFour.ddArreglosAsterix.selection = 0

    myPanel.grp.groupThree.ddColorSystem.selection = 0

    myPanel.grp.groupThree.ddLineSelector.selection = 0

    myPanel.grp.groupChecker.ddPatterns.selection = 0

    myPanel.grp.groupVoraz.myIconButton.image = imagePath0

    myPanel.grp.groupTwo.imageDemo.image = imagePath1

    myPanel.layout.layout (true);

    Home default

    myPanel.grp.groupTwo.visible = true;

    myPanel.grp.groupThree.visible = false;

    myPanel.grp.BtnGroup.visible = false;

    myPanel.grp.groupFour.visible = false;

    myPanel.grp.groupRender.visible = false;

    myPanel.grp.groupChecker.visible = false;

    myPanel.grp.groupTwo.imageDemo.image = imagePath1

    AL HACER CLICK IN THE IMAGEN MANDA UNA ALERTED

    myPanel.grp.groupTwo.imageDemo.onClick = function)

    {

    Alert ("Primero debes seleccionar una opcion del Menu drop-down. ADVERTENCIA esto solo con works the paquetería of channel 5. \

    ("If need more information you can consultarlo con www.estudiovoraz.com");

    }

    From aqui to add todo el código than dedicate con sus variable mandas is a call desde tus variable y functions.

    Sub-panels: (Cuando mandas a con call variable in a number of a specific algo to you UI)

    var BtnURL = myPanel.grp.groupVoraz.myIconButton

    var BtnText = myPanel.grp.BtnGroup.editText

    var BtnCaritas = myPanel.grp.BtnGroup.editCaritas

    var BtnIconos = myPanel.grp.BtnGroup.editIconos

    var BtnImagen = myPanel.grp.BtnGroup.editImage

    var ddSelectPanel = myPanel.grp.groupOne.ddPanel

    var myPanel.grp.groupThree.ddColorSystem = ddColor

    var ddPatterns = myPanel.grp.groupChecker.ddPatterns

    var ddLineSelector = myPanel.grp.groupThree.ddLineSelector

    var ddOpciones = myPanel.grp.groupFour.ddArreglosAsterix

    var rendaBtn = myPanel.grp.groupRender.renBtn

    var myPanel.grp.groupChecker.CBfoto = CFoto

    var CWipper = myPanel.grp.groupChecker.CBWipper

    var CSting = myPanel.grp.groupChecker.CBSting

    var patInp = myPanel.grp.groupFour.patInp

    MANAGER PARA AS VEAN O SE ESCONDAN LAS THINGS LED PANEL

    ddSelectPanel.onChange = function()

    {

    Switch (ddSelectPanel.Selection.Text)

    {

    //PRIMER CASE                                                                                                                                            ---------  SALIDA NO IMAGE   ---------

    case "Salida No. Image":

    myPanel.grp.groupTwo.visible = true;

    myPanel.grp.groupTwo.imageDemo.image = imagePath2

    myPanel.grp.groupThree.visible = true;

    myPanel.grp.BtnGroup.visible = true;

    myPanel.grp.BtnGroup.editImage.visible = false;

    myPanel.grp.groupFour.visible = true;

    myPanel.grp.groupRender.visible = true;

    myPanel.grp.groupChecker.visible = true;

    myPanel.grp.BtnGroup.editCaritas.visible = true;

    myPanel.grp.BtnGroup.editIconos.visible = true;

    myPanel.grp.BtnGroup.editImage.visible = false;

    myPanel.grp.groupChecker.CBSting.visible = false;

    myPanel.grp.groupChecker.CBfoto.visible = false;

    CUANDO SE EN EL MENU SELECT DROPDOWN SALIDA NO. IMAGE O LO THAT MATCH, LO ABRE EN EL VIEWER

    projectItem ("_Render Salida No. Image") .openInViewer ();

    CUANDO SE HACE CLICK IN IMAGE TREE MODEL USED

    myPanel.grp.groupTwo.imageDemo.onClick = function)

    {

    projectItem ("_Render Salida No. Image") .openInViewer ();

    }

    ACCION BOX WIPPER

    CWipper.onClick = function)

    {

    if(CWipper.Value == true)

    {

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([1]);

    }

    if(CWipper.Value == False)

    {

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([0]);

    }

    }

    COLOR SYSTEM OF MENU DROP-DOWN

    ddColor.onChange = function)

    {

    Switch (ddColor.selection.text)

    {

    case "Amarillo":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([1]);

    break;

    case 'Morado ':

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([2]);

    break;

    case "LightBlue":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([3]);

    break;

    case study 'MidBlue ':

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([4]);

    break;

    case "blue":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([5]);

    break;

    case "Rojo":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([6]);

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    LINE SELECTOR DROPDOWN LIST

    ddLineSelector.onChange = function)

    {

    Switch (ddLineSelector.selection.text)

    {

    case "1-line":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([1]);

    break;

    case "1 line + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([2]);

    break;

    case "1 line + Info:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([3]);

    break;

    case "1 line + Info + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([4]);

    break;

    case "2 lines:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([6]);

    break;

    case "2 lines + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([7]);

    break;

    case "2 lines + Info:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([8]);

    break;

    case "2 lines + Info + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([9]);

    break;

    case "3 lines":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([11]);

    break;

    case '3 lines + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([12]);

    break;

    case '3 lines + Info:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([13]);

    break;

    case '3 lines + Info + Hashtag:

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([14]);

    break;

    by default:

    Alert ("error: perhaps not a stereo none option, select una opcion del Line Selector");

    break;

    }

    }

    LIST DROPDOWN CARITAS / ICONOS

    ddOpciones.onChange = function)

    {

    Switch (ddOpciones.selection.text)

    {

    case "OFF":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property (Caritas Asterix").setValue([0])";

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("Iconos Asterix").setValue([0]);

    break;

    case "Caritas Astérix":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property (Caritas Asterix").setValue([1])";

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("Iconos Asterix").setValue([0]);

    break;

    case "Iconos Astérix":

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property (Caritas Asterix").setValue([0])";

    projectItem("Salida_No_Image").layer ("_Control") .property ("Effects").property("Control_v2").property ("Iconos Asterix").setValue([1]);

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    EDIT TEXT BUTTON

    BtnText.onClick = function)

    {

    projectItem ("NIS _EditTxt") .openInViewer ();

    }

    CHANGE CARITAS BOTON

    BtnCaritas.onClick = function)

    {

    projectItem ("NIS _EditCaritas") .openInViewer ();

    }

    CHANGE THE BOTON ICONOS

    BtnIconos.onClick = function)

    {

    projectItem ("NIS _EditIconos") .openInViewer ();

    }

    MODELS OF MENU DROP-DOWN

    ddPatterns.onChange = function)

    {

    Switch (ddPatterns.selection.text)

    {

    case 'OFF models':

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([1]) of control. "

    break;

    case "acción":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([3]) of control. "

    break;

    case "Comedia":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([4]) of control. "

    break;

    case "deportees":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([5]) of control. "

    break;

    case "Girly":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([6]) of control. "

    break;

    case 'Geek ':

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([7]) of control. "

    break;

    case "Todo":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([8]) of control. "

    break;

    case 'EXTRA ':

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([10]) of control. "

    break;

    case "ASTERIX":

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([12]) of control. "

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    ACCION BOX FOTO

    CFoto.onClick = function)

    {

    if(CFoto.Value == true)

    {

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Foto").setValue([1]) of control. "

    }

    if(CFoto.Value == False)

    {

    "projectItem("Salida_No_Image").layer ("_Control").property("Effects").property (v2").property("Foto").setValue([0]) of control. "

    }

    }

    ADD TO RENDER QUEUE

    rendaBtn.onClick = function)

    {

    var QTtemplate = "Lossless." Select el model

    salt1 var = projectItem ("_Render Salida No. Image"); Search the model that will has Renderizar por su number

    var newPath = ('Salida No. Image');  Este are el number del path knew the asigna para salida to

    If (salt1! = null & & salt1 instanceof CompItem) {}

    var theRender = app.project.renderQueue.items.add (salt1);

    If (salt1 == salt1) {}

    theRender.outputModules [1] .applyTemplate (QTtemplate);

    theRender.outputModules [1] mpfprojectdir\dev10\src\csharp\projectbase.file = new queue (newPath);

    }

    }

    }

    break;

    //SEGUNDO CASE                                                                                                                                    ---------  SALIDA NO ASTERIX   ---------

    case "Salida No. Asterix":

    myPanel.grp.groupTwo.visible = true;

    myPanel.grp.BtnGroup.editImage.visible = true;

    myPanel.grp.groupTwo.imageDemo.image = imagePath3

    myPanel.grp.groupThree.visible = true;

    myPanel.grp.BtnGroup.visible = true;

    myPanel.grp.groupFour.visible = true;

    myPanel.grp.groupRender.visible = true;

    myPanel.grp.groupChecker.visible = true;

    myPanel.grp.groupChecker.CBSting.visible = false;

    myPanel.grp.groupChecker.CBfoto.visible = false;

    myPanel.grp.groupFour.visible = false;

    myPanel.grp.BtnGroup.editCaritas.visible = false;

    myPanel.grp.BtnGroup.editIconos.visible = false;

    myPanel.grp.BtnGroup.editImage.visible = false;

    CUANDO SE EN EL MENU SELECT DROPDOWN SALIDA NO. IMAGE O LO THAT MATCH, LO ABRE EN EL VIEWER

    projectItem ("_Render Salida No. Asterix") .openInViewer ();

    CUANDO SE HACE CLICK IN IMAGE TREE MODEL USED

    myPanel.grp.groupTwo.imageDemo.onClick = function)

    {

    projectItem ("_Render Salida No. Asterix") .openInViewer ();

    }

    ACCION BOX WIPPER

    CWipper.onClick = function)

    {

    if(CWipper.Value == true)

    {

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([1]);

    }

    if(CWipper.Value == False)

    {

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([0]);

    }

    }

    COLOR SYSTEM OF MENU DROP-DOWN

    ddColor.onChange = function)

    {

    Switch (ddColor.selection.text)

    {

    case "Amarillo":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([1]);

    break;

    case 'Morado ':

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([2]);

    break;

    case "LightBlue":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([3]);

    break;

    case study 'MidBlue ':

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([4]);

    break;

    case "blue":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([5]);

    break;

    case "Rojo":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([6]);

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    LINE SELECTOR DROPDOWN LIST

    ddLineSelector.onChange = function)

    {

    Switch (ddLineSelector.selection.text)

    {

    case "1-line":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([1]);

    break;

    case "1 line + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([2]);

    break;

    case "1 line + Info:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([3]);

    break;

    case "1 line + Info + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([4]);

    break;

    case "2 lines:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([6]);

    break;

    case "2 lines + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([7]);

    break;

    case "2 lines + Info:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([8]);

    break;

    case "2 lines + Info + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([9]);

    break;

    case "3 lines":

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([11]);

    break;

    case '3 lines + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([12]);

    break;

    case '3 lines + Info:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([13]);

    break;

    case '3 lines + Info + Hashtag:

    projectItem("Salida_No_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([14]);

    break;

    by default:

    Alert ("error: perhaps not a stereo none option, select una opcion del Line Selector");

    break;

    }

    }

    MODELS OF MENU DROP-DOWN

    ddPatterns.onChange = function)

    {

    Switch (ddPatterns.selection.text)

    {

    case 'OFF models':

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([1]) of control. "

    break;

    case "acción":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([3]) of control. "

    break;

    case "Comedia":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([4]) of control. "

    break;

    case "deportees":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([5]) of control. "

    break;

    case "Girly":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([6]) of control. "

    break;

    case 'Geek ':

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([7]) of control. "

    break;

    case "Todo":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([8]) of control. "

    break;

    case 'EXTRA ':

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([10]) of control. "

    break;

    case "ASTERIX":

    "projectItem("Salida_No_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([12]) of control. "

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    EDIT TEXT BUTTON

    BtnText.onClick = function)

    {

    projectItem ("_EditTxt SNA") .openInViewer ();

    }

    ADD TO RENDER QUEUE

    rendaBtn.onClick = function)

    {

    var QTtemplate = "Lossless."   Select el model

    var SEL2 = projectItem ("_Render Salida Asterix No.");  Search the model that will has Renderizar por su number

    var newPath = ('Salida No. Asterix');  Este are el number del path knew the asigna para salida to

    If (sel2! = null & & sel2 instanceof CompItem) {}

    var theRender = app.project.renderQueue.items.add (sel2);

    If (sel2 == sel2) {}

    theRender.outputModules [1] .applyTemplate (QTtemplate);

    theRender.outputModules [1] mpfprojectdir\dev10\src\csharp\projectbase.file = new queue (newPath);

    }

    }

    }

    break;

    //TERCER CASE                                                                                                                                            ---------  SALIDA VENTANA ASTERIX ---------

    case "Salida Ventana Astérix":

    myPanel.grp.groupTwo.visible = true;

    myPanel.grp.groupTwo.imageDemo.image = imagePath5

    myPanel.grp.groupThree.visible = true;

    myPanel.grp.BtnGroup.visible = true;

    myPanel.grp.BtnGroup.editImage.visible = true;

    myPanel.grp.groupFour.visible = false;

    myPanel.grp.groupRender.visible = true;

    myPanel.grp.groupChecker.visible = true;

    myPanel.grp.BtnGroup.editCaritas.visible = false;

    myPanel.grp.BtnGroup.editIconos.visible = false;

    myPanel.grp.BtnGroup.editImage.visible = true;

    myPanel.grp.groupChecker.CBSting.visible = false;

    myPanel.grp.groupChecker.CBfoto.visible = true;

    CUANDO SE EN EL MENU SELECT DROPDOWN SALIDA NO. IMAGE O LO THAT MATCH, LO ABRE EN EL VIEWER

    projectItem ("_Render Salida Ventana Asterix") .openInViewer ();

    CUANDO SE HACE CLICK IN IMAGE TREE MODEL USED

    myPanel.grp.groupTwo.imageDemo.onClick = function)

    {

    projectItem ("_Render Salida Ventana Asterix") .openInViewer ();

    }

    ACCION BOX WIPPER

    CWipper.onClick = function)

    {

    if(CWipper.Value == true)

    {

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([1]);

    }

    if(CWipper.Value == False)

    {

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([0]);

    }

    }

    COLOR SYSTEM OF MENU DROP-DOWN

    ddColor.onChange = function)

    {

    Switch (ddColor.selection.text)

    {

    case "Amarillo":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([1]);

    break;

    case 'Morado ':

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([2]);

    break;

    case "LightBlue":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([3]);

    break;

    case study 'MidBlue ':

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([4]);

    break;

    case "blue":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([5]);

    break;

    case "Rojo":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("colour System").setValue([6]);

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    LINE SELECTOR DROPDOWN LIST

    ddLineSelector.onChange = function)

    {

    Switch (ddLineSelector.selection.text)

    {

    case "1-line":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([1]);

    break;

    case "1 line + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([2]);

    break;

    case "1 line + Info:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([3]);

    break;

    case "1 line + Info + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([4]);

    break;

    case "2 lines:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([6]);

    break;

    case "2 lines + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([7]);

    break;

    case "2 lines + Info:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([8]);

    break;

    case "2 lines + Info + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([9]);

    break;

    case "3 lines":

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([11]);

    break;

    case '3 lines + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([12]);

    break;

    case '3 lines + Info:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([13]);

    break;

    case '3 lines + Info + Hashtag:

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("line Selector").setValue([14]);

    break;

    by default:

    Alert ("error: perhaps not a stereo none option, select una opcion del Line Selector");

    break;

    }

    }

    EDIT TEXT BUTTON

    BtnText.onClick = function)

    {

    projectItem ("SVA _EditTxt") .openInViewer ();

    }

    BtnImagen.onClick = function)

    {

    projectItem ("SVA _EditFootage") .openInViewer ();

    }

    MODELS OF MENU DROP-DOWN

    ddPatterns.onChange = function)

    {

    Switch (ddPatterns.selection.text)

    {

    case 'OFF models':

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([1]) of control. "

    break;

    case "acción":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([3]) of control. "

    break;

    case "Comedia":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([4]) of control. "

    break;

    case "deportees":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([5]) of control. "

    break;

    case "Girly":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([6]) of control. "

    break;

    case 'Geek ':

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([7]) of control. "

    break;

    case "Todo":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([8]) of control. "

    break;

    case 'EXTRA ':

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([10]) of control. "

    break;

    case "ASTERIX":

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Patterns").setValue([12]) of control. "

    break;

    by default:

    Alert ("error: perhaps no none option selected, brought Nuevo...");

    break;

    }

    }

    ACCION BOX FOTO

    CFoto.onClick = function)

    {

    if(CFoto.Value == true)

    {

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Foto").setValue([1]) of control. "

    }

    if(CFoto.Value == False)

    {

    "projectItem("Salida_Ventana_Asterix").layer ("_Control").property("Effects").property (v2").property("Foto").setValue([0]) of control. "

    }

    }

    ACCION BOX FOTO

    CWipper.onClick = function)

    {

    if(CWipper.Value == true)

    {

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([1]);

    }

    if(CWipper.Value == False)

    {

    projectItem("Salida_Ventana_Asterix").layer ("_Control") .property ("Effects").property("Control_v2").property ("Wipper In").setValue([0]);

    }

    }

    ADD TO RENDER QUEUE

    rendaBtn.onClick = function)

    {

    var QTtemplate = "Lossless." Select el model

    salt1 var = projectItem ("_Render Salida Ventana Asterix"); Search the model that will has Renderizar por su number

    var newPath = ('Salida Ventana Asterix');  Este are el number del path knew the asigna para salida to

    If (salt1! = null & & salt1 instanceof CompItem) {}

    var theRender = app.project.renderQueue.items.add (salt1);

    If (salt1 == salt1) {}

    theRender.outputModules [1] .applyTemplate (QTtemplate);

    theRender.outputModules [1] mpfprojectdir\dev10\src\csharp\projectbase.file = new queue (newPath);

    }

    }

    }

    break;

    //DEFAULT CASE                                                                                                                                    ---------  DEFAULT CASE  APAGA TODO  ---------

    by default:

    myPanel.grp.groupTwo.visible = true;

    myPanel.grp.groupThree.visible = false;

    myPanel.grp.BtnGroup.visible = false;

    myPanel.grp.groupFour.visible = false;

    myPanel.grp.groupRender.visible = false;

    myPanel.grp.groupChecker.visible = false;

    myPanel.grp.groupTwo.imageDemo.image = imagePath1

    AL HACER CLICK IN THE IMAGEN MANDA UNA ALERTED

    myPanel.grp.groupTwo.imageDemo.onClick = function)

    {

    Alert ("Primero debes seleccionar una opcion del Menu drop-down. ADVERTENCIA esto solo con works the paquetería of channel 5. \

    ("If need more information you can consultarlo con www.estudiovoraz.com");

    }

    break;

    }

    }

    ACCIÓN PARA EL ESTUDIO VORAZ LINK

    BtnURL.onClick = LinkToURL;

    function LinkToURL()

    {

    alert ("http://www.estudiovoraz.com");

                var URL = " http://www.estudiovoraz.com "; your web page

    If ($.os.indexOf ("Windows")! = - 1).

    system.callSystem (winBrowserCmd + "" + URL);

    on the other

    system.callSystem (macBrowserCmdStart + URL + macBrowserCmdEnd);

    }

    FUNCION WHAT TODOS LOS OF THE INDEX OF THE ITEM PROJECT DETECTA Y IN ASIGNARLE LUGAR DEL LO DETECTA POR SU NUMBER NUMBER

    projectItem (name) function

    {

    var items = app.project.items;

    i = 1;

    While (I < = items.length) {}

    If (items [i] .name = name)

    {

    Return app.project.item (i);

    break;

    }

    i ++ ;

    }

    }

    END PANEL - NO PONER NADA ESTA LINEA ABAJO.

    Return myPanel;

    }

    var myScriptPal = myScript_buildUI (thisObj);

    If ((myScriptPal! = null) & & (myScriptPal instanceof window)) {}

    myScriptPal.center ();

    myScriptPal.show ();

    }

    }

    myScript (this);

    }

    OK, apparently it does work well with panels, because even if the height is 0, something is from the Panel...

    You can try the panels inside the packing groups. It will start to be a little heavy, but it works.

    Here's a toy example to illustrate:

    var w = new Window("palette", "test");
    w.content=w.add("group{orientation: 'column', margins: 0, spacing: 0,\
                                    alignment: ['fill', 'fill'], alignChildren: ['fill', 'top'],\
                                    gr1: Group{orientation: 'row', margins: [0,5,0,5], spacing: 10, alignChildren: ['fill', 'center'],\
                                                    titleST: StaticText{text: 'Option Level', alignment: ['left', 'center']},\
                                                    menu : DropDownList{properties: {items: ['0', '1', '2', '3']}},\
                                                    },\
                                    gr2: Group{orientation: 'row', margins: [0,5,0,5], alignChildren: ['fill', 'center'],\
                                                    content: Panel{orientation: 'row', margins: [5, 10, 5, 5], spacing: 0, alignChildren: ['fill', 'center'],\
                                                                        text : 'Option 1',\
                                                                        menu : DropDownList{properties: {items: ['A', 'B', 'C', 'D', 'E']}},\
                                                                        },\
                                                    },\
                                    gr3: Group{orientation: 'row', margins: [0,5,0,5], alignChildren: ['fill', 'center'],\
                                                    content: Panel{orientation: 'row', margins: [5, 10, 5, 5], spacing: 0, alignChildren: ['fill', 'center'],\
                                                                        text : 'Option 2',\
                                                                        menu : DropDownList{properties: {items: ['A', 'B', 'C', 'D', 'E']}},\
                                                                        },\
                                                    },\
                                    gr4: Group{orientation: 'row', margins: [0,5,0,5], alignChildren: ['fill', 'center'],\
                                                    content: Panel{orientation: 'row', margins: [5, 10, 5, 5], spacing: 0, alignChildren: ['fill', 'center'],\
                                                                        text : 'Option 3',\
                                                                        menu : DropDownList{properties: {items: ['A', 'B', 'C', 'D', 'E']}},\
                                                                        },\
                                                    },\
                                    gr5: Panel{orientation: 'row', margins: [5, 10, 5, 5], spacing: 10, alignChildren: ['fill', 'center'],\
                                                    text : 'Commands',\
                                                    btnA: Button{text: 'A'}, btnB: Button{text: 'B'}, btnC: Button{text: 'C'},\
                                                    },\
                                    }");
    w.content.gr1.menu.onChange = function(){
        // set visibility of options groups (gr2 to gr4)
        var x = this.selection.index + 1;
        var k;
        for (k=1; k<=3; k++){
            w.content.children[k].maximumSize.height = x>k ? 1000 : 0;
            };
        w.layout.layout(true);
        };
    //==============================
    w.content.gr1.menu.selection = 0;
    w.show();
    

    Xavier

  • Pass information from the Panel to the Script?

    Hello

    I wrote a JSX script to automatically generate forms of grid for me, then used 4 configurator to create a panel that triggers the script.

    It would be much more useful if I could have text fields so that users can specify how many grid lines, columns, etc., but I don't see any method to do that in the configurator.

    Is it possible to pass on a panel user input in a script?

    I use CS6.

    Chaila

    Hi eshan.mathur,

    I would say that's not possible, but I'm not a big expert Configurator 4.

    If you need a simple GUI on CS6, I suggest to use a scripted dialog box. It is not difficult if you do not want stuff, to see this code snippet:

    var yourFunction = function(first, second, third) {
        // Do whatever you need here
        alert("Params\nFirst: " + first + "\nSecond: " + second + "\nThird: " + third);
    }
    
    var res = "dialog { \
        margins: 15, spacing: 20, \
        preferredSize: [200,100], \
        orientation: 'column', \
        text: 'Demo Scripted Dialog', \
        alignChildren: ['right', 'top'], \
        \
        firstParam: Group { \
            sText: StaticText { text: 'First Parameter:' }, \
            eText: EditText { \
                characters: 4, \
                text: '10' \
            } \
        }, \
        secondParam: Group { \
            sText: StaticText { text: 'Second Parameter:' }, \
            eText: EditText { \
                characters: 4, \
                text: '20' \
            } \
        }, \
        thirdParam: Group { \
            sText: StaticText { text: 'Third Parameter:' }, \
            eText: EditText { \
                characters: 4, \
                text: '30' \
            } \
        }, \
        buttonsGroup: Group { \
            cancelButton: Button {text: 'Cancel'}, \
            okButton: Button { text: 'OK' } \
        } \
    }"
    
    var w = new Window(res);
    var retVal = w.show();
    
    if (retVal == 1) { // User clicked OK
        var firstParam  = w.firstParam.eText.text,
            secondParam = w.secondParam.eText.text,
            thirdParam  = w.thirdParam.eText.text;
        yourFunction(firstParam, secondParam, thirdParam);
    }
    

    Hope this helps,

    Davide Barranca

    ---

    www.davidebarranca.com

    www.cs-extensions.com

  • Error in rejecting the many dynamic tabs

    Hi all

    On behalf of expanding knowledge, I bring you another question.  We use JDev/JHS 11.1.1.4 and our project is a migration of JHS 11.1.1.3.  This question relates to how JHeadStart treats the opening events and closing associated with the dynamic tabs.

    Our use case, is that there are several top-level groups in a menu to open as their own dynamic tab.  We support having several tabs open at the same time.  We lack in a problem where, after the closure of several tabs quickly, we receive an error similar to the following:

    <LifecycleImpl> <_handleException> ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase APPLY_REQUEST_VALUES 2
    java.lang.IllegalArgumentException: fromIndex(0) > toIndex(-1)
        at java.util.SubList.<init>(AbstractList.java:604)
        at java.util.RandomAccessSubList.<init>(AbstractList.java:758)
        at java.util.AbstractList.subList(AbstractList.java:468)
        at oracle.jheadstart.view.dyntab.DynTabTracker.getActiveTabList(DynTabTracker.java:158)
        at oracle.jheadstart.view.dyntab.DynTabContext.getMatchingTab(DynTabContext.java:354)
        at oracle.jheadstart.view.dyntab.DynTabContext.addOrSelectTab(DynTabContext.java:169)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchActivity(DynamicRegionManager.java:468)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchDynamicTabIfNeeded(DynamicRegionManager.java:505)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.setCurrentTaskFlowName(DynamicRegionManager.java:225)
        at oracle.jheadstart.controller.jsf.application.JhsNavigationHandlerImpl.handleNavigation(JhsNavigationHandlerImpl.java:142)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
        at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
        at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
        at org.apache.myfaces.trinidad.component.UIXTree.broadcast(UIXTree.java:232)
        at oracle.adf.view.rich.component.rich.data.RichTree.broadcast(RichTree.java:248)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:356)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
        at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.jheadstart.controller.jsf.AuthenticationFilter.doFilter(AuthenticationFilter.java:282)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
        at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
        at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
        at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
        at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    <RegistrationConfigurator> <handleError> ADF_FACES-60096:Server Exception during PPR, #1
    java.lang.IllegalArgumentException: fromIndex(0) > toIndex(-1)
        at java.util.SubList.<init>(AbstractList.java:604)
        at java.util.RandomAccessSubList.<init>(AbstractList.java:758)
        at java.util.AbstractList.subList(AbstractList.java:468)
        at oracle.jheadstart.view.dyntab.DynTabTracker.getActiveTabList(DynTabTracker.java:158)
        at oracle.jheadstart.view.dyntab.DynTabContext.getMatchingTab(DynTabContext.java:354)
        at oracle.jheadstart.view.dyntab.DynTabContext.addOrSelectTab(DynTabContext.java:169)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchActivity(DynamicRegionManager.java:468)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchDynamicTabIfNeeded(DynamicRegionManager.java:505)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.setCurrentTaskFlowName(DynamicRegionManager.java:225)
        at oracle.jheadstart.controller.jsf.application.JhsNavigationHandlerImpl.handleNavigation(JhsNavigationHandlerImpl.java:142)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
        at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
        at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
        at org.apache.myfaces.trinidad.component.UIXTree.broadcast(UIXTree.java:232)
        at oracle.adf.view.rich.component.rich.data.RichTree.broadcast(RichTree.java:248)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:356)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
        at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.jheadstart.controller.jsf.AuthenticationFilter.doFilter(AuthenticationFilter.java:282)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
        at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
        at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
        at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
        at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    
    

    From what I've seen, the number of active tabs gets decremented before closing the tab in fact.  This sometimes requires closing a tab more than once (which decrements the number of active tabs less than 0).  Then, when you try to open a new tab, the number of active tabs is passed as argument to the sublist mentioned in the above stack.  If the number is less than 0, the exception above occurs.

    What follows is a variation on the above, the only difference is that if reject you everything except a tab, then try to open a new one, the following error is thrown.

    
    <LifecycleImpl> <_handleException> ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase APPLY_REQUEST_VALUES 2
    java.lang.IllegalStateException: TabList state is corrupted!
        at oracle.jheadstart.view.dyntab.DynTabContext.getFirstInactiveTabOrThrow(DynTabContext.java:252)
        at oracle.jheadstart.view.dyntab.DynTabContext.addTab(DynTabContext.java:221)
        at oracle.jheadstart.view.dyntab.DynTabContext.addOrSelectTab(DynTabContext.java:180)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchActivity(DynamicRegionManager.java:468)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchDynamicTabIfNeeded(DynamicRegionManager.java:505)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.setCurrentTaskFlowName(DynamicRegionManager.java:225)
        at oracle.jheadstart.controller.jsf.application.JhsNavigationHandlerImpl.handleNavigation(JhsNavigationHandlerImpl.java:142)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
        at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
        at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
        at org.apache.myfaces.trinidad.component.UIXTree.broadcast(UIXTree.java:232)
        at oracle.adf.view.rich.component.rich.data.RichTree.broadcast(RichTree.java:248)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:356)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
        at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.jheadstart.controller.jsf.AuthenticationFilter.doFilter(AuthenticationFilter.java:282)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
        at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
        at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
        at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
        at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    <RegistrationConfigurator> <handleError> ADF_FACES-60096:Server Exception during PPR, #1
    java.lang.IllegalStateException: TabList state is corrupted!
        at oracle.jheadstart.view.dyntab.DynTabContext.getFirstInactiveTabOrThrow(DynTabContext.java:252)
        at oracle.jheadstart.view.dyntab.DynTabContext.addTab(DynTabContext.java:221)
        at oracle.jheadstart.view.dyntab.DynTabContext.addOrSelectTab(DynTabContext.java:180)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchActivity(DynamicRegionManager.java:468)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.launchDynamicTabIfNeeded(DynamicRegionManager.java:505)
        at oracle.jheadstart.controller.jsf.bean.DynamicRegionManager.setCurrentTaskFlowName(DynamicRegionManager.java:225)
        at oracle.jheadstart.controller.jsf.application.JhsNavigationHandlerImpl.handleNavigation(JhsNavigationHandlerImpl.java:142)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
        at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
        at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
        at org.apache.myfaces.trinidad.component.UIXTree.broadcast(UIXTree.java:232)
        at oracle.adf.view.rich.component.rich.data.RichTree.broadcast(RichTree.java:248)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
        at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
        at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:356)
        at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
        at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
        at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.jheadstart.controller.jsf.AuthenticationFilter.doFilter(AuthenticationFilter.java:282)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
        at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
        at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
        at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
        at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    

    It is not a lot of info on this there and it seems to relate to internal libraries so I thought I'd ask for advice here.  My first thought was to override the method, passing the number of active tabs to catch if value is less than zero, but which does not take account of the second instance.  Anyone encountered this before?

    Thank you very much

    After considerable efforts, we found a solution if everyone should experience this error.  This code checks simply tab always has a unique identifier, and if so, remove the tab from the active list.

    Note: If your system works well, you may never encounter this error.  But it can be recreated with ease by turning on a lot of logging or by setting a breakpoint in one removeTab method in the class DynTabContext JHS.

    public class CustomDynTabContext extends DynTabContext {
        public CustomsDynTabContext() {
            super();
        }
    
        @Override
        protected void removeTab(DynTab tab, boolean force) {
    
            //Need to first check if tab is already null,
            //this prevents tabList from becoming corrupt
            if (tab.getUniqueIdentifier() != null) {
                super.removeTab(tab, force);
            }
        }
    }
    
  • JavaScript to determine the color of background/outline named pathItem [index]?

    I'm looking to build a control upstream of sorts for my Illustrator workflow (because for some reason... upstream in illustrator does not exist...).

    Essentially, I need to loop through the pathItems on each work plan looking for a specific spot color (first check that the task of color does NOT exist as a fill color in one of the work, then check for any pathItem that contains the task of color such as a stroke).

    This seemed to be a very simple task, but it seems that pathItems.fillColor or pathItems.strokeColor is not a valid property? Which confuses me because she works to apply a color to a pathItem... It seems to me that if you can apply a color via pathItems.fillColor, you should also be able to create an if clause that determines if pathItems.fillColor is (regardless of color). However, test it in the simplest of documents in which I know what the result of the if clause should be, it does not work. is there something I'm missing here on the fillColor/strokeColor property?

    Here's the code I'm working with. Thank you, all.

    #target Illustrator
    
    
    
    
    var docRef = app.activeDocument;
    var aB = docRef.artboards;
    var swatchList = docRef.swatches;
    var tC = swatchList.getByName("Thru-cut");
    var tCCount = 0; //how many artboards/top level groups contain at least 1 Thru-cut stroke?
    var artLayers = docRef.layers;
    var groups = artLayers[0].groupItems; 
    var aBtCCount = 0; // how many artboards have 
    var aBnoTC = []; //  which artboards/top level groups (by index) do not contain at least 1 Thru-cut stroke?
    
    
    for (a = 0; a < aB.length; a++){
        aBtCCount = 0
        var items = groups[a].pathItems;
        for (b = 0; b < items.length; b ++){
            if (items[b].fillColor == swatchList.getByName("Thru-cut")){
                alert("You have Thru-cut fills in your document!!");
                break;
                } //end if // thru-cut is fill
            else if (items[b].strokeColor == swatchList.getByName("Thru-cut")){
                tCCount++;
                break;
                } //end if // thru-cut is stroke
            else{
                tCCount = 0;
                } //end else // set counter to 0
            }//end for loop B // checking items on each artboard
        if(tCCount == 0){
            aBnoTC.push(" " + a);
            }//end if // artboard has no cut line
        else{
            aBtCCount++;
            }//end else // add to counter for total artboards w/ thru-cut
        alert(tCCount);
            
        }//end for loop A
    
    
    if (aBtCCount < aB.length){
        alert("Artboard/s " + aBnoTC + " are missing Thru-cut lines");
        }//end if // not enough cut lines
        
    

    Access to the task of color by color background or outline of a path element when it is a spot color is just a little bit more complicated, you've got to go pathItem.fillColor.spot.name.

    To see if an undesirable color is found in the document, you can use a more effective method by analyzing the InkList of the document - it has the information you see in the print output dialog box.
    alert (document.inkList) will show you the collection of ink plates.

Maybe you are looking for