Trouble building multiple buttons in extension panel

Any advice as to how to make multiple buttons active and operational in a new extension panel?  New to scripting and struggling here!

Hi,
try to post here: Extension Builder 3 (more appropriate Adobe forum) with more details about what you're after.
Regards
Davide Barranca
www,davidebarranca.com
www.cs-extensions.com

Similar Messages

  • Resizing Extension Panel does not layout Flex controls at all, simply scales stage

    Hello,
    I'm having this issue with Extension Panels in Fireworks compiled with the Flex 4 SDK. When the panel is first opened, it has the correct dimensions and controls are laid out correctly. If I resize it at all, it scales itself instead of laying out it's controls to take advantage of the new space. This doesn't seem to occur when using Flex 3's mx:Application, only Flex 4. Any ideas?
    Before Resize:
    After Resize:
    This occurs no matter the Application container control I use - mx:Application, mx:ApplicationWindow, cs:CSXSWindowedApplication, and so on.
    My Application MXML is as follows:
    <?xml version="1.0" encoding="utf-8"?>
    <cs:CSXSWindowedApplication
      xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx"
      xmlns:cs="com.adobe.csxs.core.*" xmlns:s="library://ns.adobe.com/flex/spark"
      <!-- Setting width & height are the only way I can get it to show properly when first opened. -->
      width="200" height="200" historyManagementEnabled="false" showStatusBar="false">
      <s:Button label="Click Me" />
    </cs:CSXSWindowedApplication>

    So they key is apparently to have this as a compiler flag:
    -includes=mx.managers.systemClasses.MarshallingSupport
    And in applicationComplete:
    CSInterface.instance.autoThemeColorChange = true;
    Also use CSExtension as your base application class/component.

  • Multiple Buttons in JTable Headers:  Listening for Mouse Clicks

    I am writing a table which has table headers that contain multiple buttons. For the header cells, I am using a custom cell renderer which extends JPanel. A JLabel and JButtons are added to the JPanel.
    Unfortunately, the buttons do not do anything. (Clicking in the area of a button doesn't appear to have any effect; the button doesn't appear to be pressed.)
    Looking through the archives, I read a suggestion that the way to solve this problem is to listen for mouse clicks on the table header and then determine whether the mouse clicks fall in the area of the button. However, I cannot seem to get coordinates for the button that match the coordinates I see for mouse clicks.
    The coordinates for mouse clicks seem to be relative to the top left corner of the table header (which would match the specification for mouse listeners). I haven't figured out how to get corresponding coordinates for the button. The coordinates returned by JButton.getBounds() seem to be relative to the top left corner of the panel. I hoped I could just add those to the coordinates for the panel to get coordinates relative to the table header, but JPanel.getBounds() gives me negative numbers for x and y (?!?). JPanel.getLocation() gives me the same negative numbers. When I tried JPanel.getLocationOnScreen(), I get an IllegalComponentStateException:
    Exception in thread "AWT-EventQueue-0" java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
    Can someone tell me how to get coordinates for the button on the JTableHeader? Or is there an easier way to do this (some way to make the buttons actually work so I can just use an ActionListener like I normally would)?
    Here is relevant code:
    public class MyTableHeaderRenderer extends JPanel implements TableCellRenderer {
    public MyTableHeaderRenderer() {
      setOpaque(true);
      // ... set colors...
      setBorder(UIManager.getBorder("TableHeader.cellBorder"));
      setLayout(new FlowLayout(FlowLayout.LEADING));
      setAlignmentY(Component.CENTER_ALIGNMENT);
    public Component getTableCellRendererComponent(JTable table,
                                                     Object value,
                                                     boolean isSelected,
                                                     boolean hasFocus,
                                                     int row,
                                                     int column){
      if (table != null){
        removeAll();
        String valueString = (value == null) ? "" : value.toString();
        add(new JLabel(valueString));
        Insets zeroInsets = new Insets(0, 0, 0, 0);
        final JButton sortAscendingButton = new JButton("1");
        sortAscendingButton.setMargin(zeroInsets);
        table.getTableHeader().addMouseListener(new MouseAdapter(){
          public void mouseClicked(MouseEvent e) {
            Rectangle buttonBounds = sortAscendingButton.getBounds();
            Rectangle panelBounds = MyTableHeaderRenderer.this.getBounds();
            System.out.println(Revising based on (" + panelBounds.x + ", "
                               + panelBounds.y + ")...");
            buttonBounds.translate(panelBounds.x, panelBounds.y);
            if (buttonBounds.contains(e.getX(), e.getY())){  // The click was on this button.
              System.out.println("Calling sortAscending...");
              ((MyTableModel) table.getModel()).sortAscending(column);
            else{
              System.out.println("(" + e.getX() + ", " + e.getY() + ") is not within "
                                 + sortAscendingButton.getBounds() + " [ revised to " + buttonBounds + "].");
        sortAscendingButton.setEnabled(true);
        add(sortAscendingButton);
        JButton button2 = new JButton("2");
        button2.setMargin(zeroInsets);
        add(button2);
        //etc
      return this;
    }

    I found a solution to this: It's the getHeaderRect method in class JTableHeader.
    table.getTableHeader().addMouseListener(new MouseAdapter(){
      public void mouseClicked(MouseEvent e) {
        Rectangle panelBounds = table.getTableHeader().getHeaderRect(column);
        Rectangle buttonBounds = sortAscendingButton.getBounds();
        buttonBounds.translate(panelBounds.x, panelBounds.y);
        if (buttonBounds.contains(e.getX(), e.getY()) && processedEvents.add(e)){  // The click was on this button.
          ((MyTableModel) table.getModel()).sortAscending(column);
    });

  • Multiple buttons for a given validation

    I want the same validation to be done on the click of two buttons. In the "Conditional Validation Processing", I see we can
    "select a button" which allows us to select only one button.
    How can I select multiple buttons for a given validation?
    Is there a way or do I need to create another validation for the second button.
    Please advice.

    When you submit a page with a button the "request" value is set to the button name (not the displayed button label). After-submit events can check the request using :REQUEST or v('REQUEST') so you can build a condition like:   :REQUEST in ('APPLY','CREATE')..or you can use a built-in condition type that checks the request value like 'Request is Contained within Expression 1'.
    Scott

  • How to create one Help button on front panel of VI??

    Hello,
    I want to create one button for example one help button on front panel of VI so by pressing that any new user can open folder in which I have store some help guide.
    Means I have make one folder on my desktop in that I have save all the data which should be useful for new user so if some new user want to run the programm and if he has no idea that how to run program then he can simply press help button and after pressing that helping folder will be open then reading then instruction user can start the program.
    Hope you will get my point.
    Thank you very much.
    Solved!
    Go to Solution.

    The Help that aCe posted will not work if you intend for the help to be displayed immediately. Since it is queued it will not be processed until the run is complete if it is currently running. This also means that if the Pause button is pressed the help will be delayed for quite some time. Also, you should avoid the use of local variables to control state information. The state machine should maintain all of your state information. The producer should only detect the events and pass the messages to the consumer. What you are encountering is a classic issue with the producer/consumer with the consumer acting as a state machine. Interrupting the flow of states with new events of a higher priority can be problematic. Simply placing items in the front of the queue may not always work correctly. There are some examples of implementations that use multiple queues which can create prioritized messages.
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot

  • Notes interaction pauses slide that contains multiple buttons

    I have several slides, each with a Notes Interaction. As advised, each of the notes is set to Rest of Project and are not resized.
    On the slides with a Notes Interaction, there are multiple buttons made out of Smart Objects. When a button is clicked, an advanced action causes a certain text caption to appear.
    The problem is that the buttons work UNTIL the Notes Interaction appears on the slide. As soon as the Notes Interaction appears, the slide seems to be paused and the buttons that are supposed to show text captions no longer work.
    I'm hoping that someone can help with a solution to this.
    By the way, this only seems to happy when previewing in HTML web browser.

    Jay,
    I had replied in an earlier thread that you need to have ONLY ONE notes interaction in the entire project - Not on every slide. The interaction is designed to be placed only once inside a project. So, placing it in the first slide of your project and setting 'Rest of Project' on it should cater to your need.
    You can choose slide notes or project based notes in the edit panel of the interaction.
    Marcellus

  • No login available in Business Catalyst extension panel in Dreamweaver CS5.

    I am not getting the login form in the Business Catalyst Extension panel in Dreamweaver CS5.
    I have added the extension and restarted Dreamweaver, but the panel still shows two buttons: Get Started ( taking me to download the extension) and Learn More ( taking me to a page that does not exist anymore).
    Does anyone know how to make the login form appear so that I can get Business Catalyst integrated with Dreamweaver CS5?
    Evan

    Try to restore the Dreamweaver Preferences as given in the link below, and see if that helps
    http://helpx.adobe.com/dreamweaver/kb/restore-preferences-dreamweaver-cs4-cs5.html

  • How to enable/disable a button in Photoshop panel?

    Anyone know how you'd create the proper code in a Photoshop extension panel so that certain buttons in the panel could be enabled or disabled dynamically as needed? 

    Hi Sonunew2flex,
    Write one public function in main application file as below...
    // In main application file
    public function changeButtonDisableStatus(bool:Boolean):void
         yourNuutonId.enabled = bool;
    //In your hear renderer do this
    if(cb.selected=true)
       Application.application.changeButtonDisableStatus(true);
    else
       Application.application.changeButtonDisableStatus(false);
    Thanks,
    Bhasker

  • Buttons showing in panel help

    HI,
    This was my final year project and im trying to tidy it up a bit so I can add it to my protfolio but im having a big problem with the following:
    I have several panels all in a container, one is a button panel and one is a screen which shows an algorithm running. When you press or hover over a button in the button panel, it is displayed in the top left corner of the screen panel.
    the applet is here: http://homepage.ntlworld.com/k.wood143/FinalCopy/algo.html
    to get to the source just take off algo.html
    the classes you want are algoApp.java, and /runjava/GrahamScan.java
    any help or questions will be greatly appreciated, thanks in advance

    this edited version of your code does not show the buttons in the panel. The problem was your incorrect implementation of JPanels. You should never override paint(..) but paintComponent(..) instead. your implementation would have been ok for AWT but not Swing. get rid of all of your update and paint functions. put your 'update' code in paintComponent() save the call to repaint(). The DefaultPoints Panel is unnecessary. here is a revision of GrahamScan:
    package runjava;
    * Author Paul wood
    * This class is a JPanel used to display all of the steps
    * involved in the Grahams Scan algorithm. It addds an animation
    * feature to the JPanel using threads
    import javax.swing.JOptionPane;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    public class GrahamScan extends JPanel implements Runnable {
         //Edited by BlairTheMagician
         static int[][]coords = new int[][]{ {20, 90}, {100, 140}, {25, 200}, {150, 140},
                        {120, 220}, {115, 200}, {150, 55}, {125, 120},
                        {200, 140}, {250, 210},{220, 265}, {240, 240} };
         // Create an array of type Point
         static Point[] defaultPoints = new Point[coords.length];
         static
              //     add the points of the coords 2d array into the point array
             for(int i = 0; i < defaultPoints.length; i++)
                 defaultPoints[i] = new Point(coords[0],coords[i][1]);
         }// end edit by the Magician
    // initialise constants used for button presses
    public final static int COMPLETE = 1;
    public final static int ANCHOR = 2;
    public final static int ANGLE = 3;
    public final static int CONVEX = 4;
    public final static int ANIMATION = 5;
    public final static int STOPANIM = 6;
    public final static int STEP = 7;
    public final static int BUILD = 8;
    private int complete;
    private int anchor;
    private int angle;
    private int build;
    private int convex;
    private int step;
    private int nextStep;
    Point test1;
    Point test2;
    // these are used to get the sets of points
    DefaultPanel defaultPanel;
    OwnPointsDemo ownPointsPanel;
    Point[] points;
              // this is still not workink
    //Point[] points = ownPointPanel.points;
    int draw = 2;
    int count = 2;
    int val = 0;
    int[][] lineDraw;
    boolean completeHull = false;
    int start = 0;
    // default delay
    int delay = 1000;
    // animation stuff
    int frameNumber = 0;
    volatile Thread animatorThread = null;
    boolean threadSuspended = false;
         // create an array to hold the final convex hull points
         Point[] convexHull;
         ArrayStack S;
    public GrahamScan(DefaultPanel defaultPanel, OwnPointsDemo ownPointsPanel )
    // add demo panel
    // JPanel grahamScanPanel = new JPanel();
    this.defaultPanel = defaultPanel;
    this.ownPointsPanel = ownPointsPanel;
    points = defaultPanel.points;
    convexHull = new Point[points.length];
         S = new ArrayStack(points.length);
    //Point[] points = ownPointPanel.points;
    lineDraw = new int[points.length][points.length];
    public void startAnimation()
    //Create and start the animating thread.
              if (animatorThread == null) {
                   animatorThread = new Thread(this);
                   animatorThread.start();
    public void stopAnimation() {
    //Stop the animating thread.
    if (animatorThread != null) {
                   animatorThread = null;
         public void run()
              final Thread currentThread = Thread.currentThread();
              reset();
              step = STEP;
              while( animatorThread == currentThread) {
                   try{
                        currentThread.sleep(delay);
                        synchronized(this) {
                             while (threadSuspended && animatorThread == currentThread)
                                  wait();
                   }catch( InterruptedException ex ){}
                   frameNumber++;
                   nextStep++;
                   repaint();
    public void paint( Graphics g )
         update(g);
         public void paintComponent( Graphics g )
         Graphics2D g2 = (Graphics2D)g;
    //super.paint( g2 );
         g2.setColor(Color.white);
         g2.fillRect(0,0,this.getWidth(),this.getHeight());
         g2.setColor(Color.black);
         // edit by BTM begin
         // draw default points
         for(int i = 0; i < defaultPoints.length; i++)
    g2.fillOval( defaultPoints[i].x, defaultPoints[i].y, 4, 4 );
         // end edit by BTM
    // initialise a polygon for visual testing of the algorithm
    Polygon polygon1 = new Polygon();
    g2.drawString("frame = " + frameNumber, ( 200 ),( 300 ) );
    if( anchor == ANCHOR )
              // now start the algoithm by finding the anchor point
              findAnchorPoint();
              g2.setColor(Color.blue);
              g2.drawString("<-- Anchor point", ( points[0].x + 5 ),( points[0].y +5 ) );
         if( angle == ANGLE )
              // next sort the array into angular order
              angleSort( points );
              for(int i = 1; i < points.length; i++)
              g2.drawLine(points[0].x, points[0].y, points[i].x, points[i].y );
    if( step == STEP )
              g2.drawString("step = " + nextStep, ( 100 ),( 300 ) );
              if( nextStep == 1 )
                   anchor(ANCHOR);
                   // this is needed to stop the image being repainted until
                   // step is pressed again
                   nextStep++;
              else if( nextStep == 3 )
                   angle( ANGLE );
              // this is needed to stop the image being repainted until
                   // step is pressed again
                   nextStep++;     
              else if( nextStep == 5 )
                        buildConvex( BUILD );
                        // this is needed to stop the image being repainted until
                   // step is pressed again
                   nextStep++;      
    if( build == BUILD )
         convexHull( points );
                   if (completeHull == true)
                        // add the points in the point array to the polygon
         for ( int i = 0; i < convexHull.length && convexHull[ i ] != null; i++ )
         polygon1.addPoint( convexHull[ i ].x, convexHull[ i ].y );
         // draw the polygon
         g2.drawPolygon( polygon1 );
    else
    //     g2.drawLine(points[0].x, points[0].y, points[1].x, points[1].y);
         test1 = S.top();
                        test2 = S.secTop();
                        if( val < 1 )
                             lineDraw[0][0] = points[0].x;
                             lineDraw[0][1] = points[0].y;
                        //     lineDraw[1][0] = points[1].x;
                        //     lineDraw[1][1] = points[1].y;
                             lineDraw[1][0] = test2.x;
                             lineDraw[1][1] = test2.y;
                             lineDraw[2][0] = test1.x;
                             lineDraw[2][1] = test1.y;
                             val++;
                        if(test1.x == lineDraw[draw][0] && test1.y == lineDraw[draw][1] )
                             //just draw what we've already got
                             for( int i = 1; i < lineDraw.length && lineDraw[i][0] > 0; i++ )
                                  g2.setColor( Color.blue );
                                  g2.drawLine(lineDraw[i-1][0], lineDraw[i-1][1], lineDraw[i][0], lineDraw[i][1] );
                        else
                             //add to lineDraw then draw lines
                             lineDraw[draw][0] = test1.x;
                             lineDraw[draw][1] = test1.y;
                             lineDraw[draw][0] = test2.x;
                             lineDraw[draw][1] = test2.y;
                             for( int i = 1; i < lineDraw.length && lineDraw[i][0] > 0; i++ )
                                  g2.setColor( Color.blue );
                                  g2.drawLine(lineDraw[i-1][0], lineDraw[i-1][1], lineDraw[i][0], lineDraw[i][1] );
         g2.setColor( Color.red );     
                        g2.drawLine(test1.x, test1.y, test2.x, test2.y);
    if( convex == CONVEX )
         // finally find which points are on the convex hull
              testMeth( points );
    // add the points in the point array to the polygon
    for ( int i = 0; i < convexHull.length && convexHull[ i ] != null; i++ )
    polygon1.addPoint( convexHull[ i ].x, convexHull[ i ].y );
    // draw the polygon
    g2.setColor(Color.blue);
    g2.drawPolygon( polygon1 );
    // these next methods all relate to button presses in he main AlgoApp class
    public void anim ( int animation )
         convex = 0;
         angle = 0;
         anchor = 0;
         if( animation == ANIMATION )
              threadSuspended = false;
    startAnimation();
         else if( animation == STOPANIM )
              threadSuspended = true;
    stopAnimation();
    public void anchor ( int anchorPoint )
         convex = 0;
         angle = 0;
         anchor = anchorPoint;
         repaint();
    public void angle ( int angleSort )
         convex = 0;
         angle = angleSort;
         repaint();
    public void step ( int stepByStep )
         convex = 0;
         step = stepByStep;
         nextStep++;
         repaint();
    public void buildConvex( int buildHull )
         angle = 0;
         build = buildHull;
         repaint();
    public void convex ( int convexHull )
         angle = 0;
         convex = convexHull;
         repaint();
    public void sliderValue( int slider )
         delay = slider;
    public void reset()
         complete = 0;
         anchor = 0;
         angle = 0;
         build = 0;
         convex = 0;
         step = 0;
         nextStep = 0;
         frameNumber = 0;
         start = 0;
         draw = 2;
         count = 2;
         val = 0;
         completeHull = false;
         // used to delete lineDraw array so it redraws from the start
         for( int i = 0; i < lineDraw.length; i++)
              lineDraw[i][0] = 0;
              lineDraw[i][1] = 0;
         repaint();
    *This is where Graham's Scan algorithm is
    // first we find the anchor point
    public void findAnchorPoint()
    int min = points[0].y;
    int max = points[0].x;
    int anchorPoint = 0;
    int anchorIndex = 0;
    for (int i = 0; i < points.length && points[i] != null; i++)
    if (points[i].y > min)
    min = points[i].y;
    max = points[i].x;
    anchorPoint = i;
    else if (points[i].y == min)
    if (points[i].x > max)
    min = points[i].y;
    max = points[i].x;
    anchorPoint = i;
    // puts the anchor point at the beginning of the array
    swapPoint( points, anchorPoint, anchorIndex );
    public void swapPoint( Point pointArray[], int first, int second )
    Point hold;
    hold = pointArray[ first ];
    pointArray[ first ] = pointArray[ second ];
    pointArray[ second ] = hold;
    public void swapDouble( double doubleArray[], int first, int second )
    double temp;
    temp = doubleArray[ first ];
    doubleArray[ first ] = doubleArray[ second ];
    doubleArray[ second ] = temp;
    public double[] arraySort(double sortArray[])
    for( int pass = 0; pass < sortArray.length; pass++)
    for(int i = 2; i < sortArray.length; i++)
    if(sortArray[i] > sortArray[i-1] )
    swapPoint(points, i, i-1);
    swapDouble(sortArray, i, i-1);
    return sortArray;
    // next we calculate the angles
    public void angleSort( Point arr2[] )
    double angleArray[] = new double[arr2.length];
    double orderArray[] = new double[arr2.length];
    int indexOfAngle = 0;
    // works out angle of every point with x0 and y0 as the anchor point
    for (int i = 0; i < arr2.length; i++) {
    double pointAngle = Math.atan2((arr2[i].y - arr2[0].y), (arr2[ i ].x - arr2[0].x));
    // if its on the line with the anchor point at 180 degrees, this equals PI.
    // to make this come last in the array change PI to minus PI
    if ( pointAngle == Math.PI)
    pointAngle = -Math.PI;
    angleArray[i] = pointAngle;
    // call sortArray to sort the array angularly
    orderArray = arraySort(angleArray);
         // finally we claculate the final convex hull
    public void convexHull(Point stackArr[] )
    float leftCheck;
    if ( start == 0 )
              S.push(stackArr[0]);
              S.push(stackArr[1]);
              start += 1;
         if ( draw < stackArr.length )
              Point pt1 = S.top();
              Point pt2 = S.secTop();
              leftCheck = isLeft(pt1,pt2,stackArr[draw]);
              if ( leftCheck > 0)
                   S.push(stackArr[draw]);
                   count++;
                   draw++;
              else
              S.pop();
              count--;
         if ( draw == stackArr.length )
    completeHull = true;
              // stack called temp is used to get elements output in the correct order
              ArrayStack temp = new ArrayStack(stackArr.length);
              for ( int counter = 0; counter < count; counter++ )
              Point tempPoint = S.pop();
              temp.push(tempPoint);
              // put the coordinate onto final convex hull array
              for (int j = 0; j < count; j++)
              convexHull[j] = temp.pop();
              draw++;
    // this testMeth is used to allow the Get Convex Hull button to work
    public void testMeth(Point stackArr[] )
    int count = 2;
    int i = 2 ;
    float leftCheck;
    ArrayStack S = new ArrayStack(stackArr.length);
    S.push(stackArr[0]);
    S.push(stackArr[1]);
    while ( i < stackArr.length)
    Point pt1 = S.top();
    Point pt2 = S.secTop();
    leftCheck = isLeft(pt1,pt2,stackArr[i]);
    if ( leftCheck > 0)
    S.push(stackArr[i]);
    count++;
    i++;
    else
    S.pop();
    count--;
    // stack called temp is used to get elements output in the correct order
    ArrayStack temp = new ArrayStack(stackArr.length);
    String testOutput = "\nConvex Hull = \n ";
    for ( int counter = 0; counter < count; counter++ )
    Point tempPoint = S.pop();
    temp.push(tempPoint);
    // put the coordinate onto final convex hull array
    for (int j = 0; j < count; j++)
    convexHull[j] = temp.pop();
    //==============================================================================
    // Copyright 2001, softSurfer (www.softsurfer.com)
    // This code may be freely used and modified for any purpose
    // providing that this copyright notice is included with it.
    // SoftSurfer makes no warranty for this code, and cannot be held
    // liable for any real or imagined damage resulting from its use.
    // Users of this code must verify correctness for their application.
    // This is a C++ implementation which I, Paul Wood have modified slighty
    // for use in Java (07/03/2005).
    // isLeft(): tests if a point is Left|On|Right of an infinite line.
    // Input: three points P0, P1, and P2
    // Return: >0 for P2 left of the line through P0 and P1
    // =0 for P2 on the line
    // <0 for P2 right of the line
    public float isLeft( Point P0, Point P1, Point P2 )
    return (P1.x - P0.x)*(P2.y - P0.y) - (P2.x - P0.x)*(P1.y - P0.y);
    //==============================================================================

  • Set multiple buttons emphasized = true

    Hi, I have a Panel and added many Buttons in it as Children.
    I would like to set multiple buttons with emphasized = true. I
    found, however, if I set one Button emphasized = true, it will set
    all other Buttons emphasized = false automatically. Why?
    Thanks,
    ff

    Hi
    By default emphasized is false for each button.
    for every button add emphasized="true"
    If it not works post the sample code.

  • Test Extension Panel doesn't open

    I have a test extension panel which is not working properly. The extension appears in the "Extensions" menu, but when the item is clicked, nothing happens.
    Here is the manifest:
    <?xml version="1.0" encoding="UTF-8"?>
    <ExtensionManifest ExtensionBundleId="com.test.test" ExtensionBundleName="test" ExtensionBundleVersion="1.0" Version="4.0">
      <ExtensionList>
        <Extension Id="com.test.test" Version="1.0"/>
      </ExtensionList>
      <ExecutionEnvironment>
        <HostList>
          <Host Name="ILST" Version="[18.0,18.9]"/>
        </HostList>
        <LocaleList>
          <Locale Code="All"/>
        </LocaleList>
        <RequiredRuntimeList>
          <RequiredRuntime Name="CSXS" Version="5.0"/>
        </RequiredRuntimeList>
      </ExecutionEnvironment>
      <DispatchInfoList>
        <Extension Id="com.test.test">
          <DispatchInfo>
            <Resources>
              <MainPath>./index.html</MainPath>
            </Resources>
            <UI>
              <Type>Panel</Type>
              <Menu>Hello world</Menu>
              <Geometry>
                <Size>
                  <Height>400</Height>
                  <Width>400</Width>
                </Size>
              </Geometry>
            </UI>
          </DispatchInfo>
        </Extension>
      </DispatchInfoList>
    </ExtensionManifest>
    Here is the index.html:
    <!doctype html>
    <html>
        <body>
            <button id="btn">Click me</button>
        </body>
    </html>
    Also, I set the debug flag in the com.adobe.CSXS.2.5.plist file to 1 and the log level to 6, but no log is being generated.

    I could observe few discrepancies in your directory structure snap shot and manifest.xml file.
        Your directory structure should look like:
        /Library/Application Support/Adobe/CEP/extensions/com.test.test
        /CSXS
              /manifest.xml
        /index.html
    Here is the manifext.xml file, replace this with your manifest.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <ExtensionManifest Version="5.0" ExtensionBundleId="com.test.test" ExtensionBundleVersion="1.0.0"
      ExtensionBundleName="Test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ExtensionList>
      <Extension Id="com.test.test" Version="1.0" />
    </ExtensionList>
    <ExecutionEnvironment>
      <HostList>
                <!-- Illustrator -->
                <Host Name="ILST" Version="[18.0,18.9]" />
      </HostList>
      <LocaleList>
      <Locale Code="All" />
      </LocaleList>
      <RequiredRuntimeList>
      <RequiredRuntime Name="CSXS" Version="5.0" />
      </RequiredRuntimeList>
    </ExecutionEnvironment>
    <DispatchInfoList>
      <Extension Id="com.test.test">
      <DispatchInfo >
      <Resources>
      <MainPath>./index.html</MainPath>
      </Resources>
      <Lifecycle>
      <AutoVisible>true</AutoVisible>
      </Lifecycle>
      <UI>
      <Type>Panel</Type>
      <Menu>Test</Menu>
      <Geometry>
      <Size>
      <Height>400</Height>
      <Width>400</Width>
      </Size>
                        <MinSize>
                                <Height>400</Height>
                                <Width>400</Width>
                            </MinSize>
                            <MaxSize>
                                <Height>400</Height>
                                <Width>400</Width>
                            </MaxSize>
      </Geometry>
      </UI>
      </DispatchInfo>
      </Extension>
    </DispatchInfoList>
    </ExtensionManifest>
    Here is the HTML file I used:
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Test</title>
    </head>
    <body>
       <button id="btn">Click me</button>    
    </body>
    </html>
    Also please make sure your are opening this extension in Illustrator 18.0 or later.
    Its working for me as above!

  • Illustrator CS6 loses keyboard focus when using an extension panel

    OS10.8.2 CS6. When clicking a button on any extension panel (even supplied Kuler), it seems that Illustrator can't get keyboard focus until something else on the screen is clicked. Anyone know a way to fix this? I need to be able to use the keyboard to copy or delete a selected object right after running script....
    Tried running a javascript inline with app.activate() command. Didn't work. Help!!!!

    I noticed the problem too. Is there any fix or workaround? Friends using Windows say that all is ok.
    Linux x86_64 (Gentoo), Firefox 3.5.1, jre 1.6.0.15.

  • How do you scroll multiple buttons/interactive content???

    Hi, I'm having a lot of trouble trying to figure out how to
    make multiple buttons(my content) scroll through the use of an
    invisible scroller that works on rollover. I've figured out how to
    make text and movie clips scroll but not buttons. Please
    help!

    Take a look at this tutorial and see if it helps

  • Can't use mouse cursor to select windows buttons from XFCE panel

    The problem is weird but the behaviour is as follow: let say I have sultiple copies of the same software (Firefox, for instance) or when the software has multiple windows (for example Pidgin main windows and its other chat windows). Wwhen I try to click on the windows button on the panel in order to navigate to the window of such software, it won't work. nothing would happen. On the other hand, Alt+Tab works for switching to the desired windows. However, if the software only has one window running (for example, only one Firefox window) then the mouse click would work.
    It's a strange behaviour and I got this on both my PC which runs Arch 64 bit and my laptops with Arch.
    Anyone has the same problem?

    Inxsible wrote:Do you have conky running -- maybe that's covering the panel and eating up the mouse click events. Try killing conky and see if it works.
    Nope, thx Inxsible but conky's not running here.
    Right-click menu (minimize, maximize, etc...) works for each of the multiple entries, though.
    I just tried recompiling xfce4-panel 4.8.2-1 with no apparent error message or any change in behaviour... hm...
    [Edit] It seems like a bug's already been filed: http://bugzilla.xfce.org/show_bug.cgi?id=7383
    Last edited by gnidam (2011-03-09 17:40:46)

  • IPhone SDK - Multiple buttons calling the same IBAction

    Hi,
    Can I call the same action with multiple buttons? I´ve just connected
    the action to the buttons in interface builder, but in the header file
    I can´t use - (IBAction)setOperator: (id)sender; as the parameter to the function, it always crash due to uncaught exception. If I use - (IBAction)setOperator; it
    works, but i can´t differentiate wich button was pressed.
    I don´t know if i can set the (id)sender parameter in the interface
    builder. Can anyone help me?
    Thanks,
    Pitteri

    .h file:
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
    @interface CalculatorView : UIView {
    IBOutlet UITextField *txtResult;
    IBOutlet UIButton *btnMult;
    IBOutlet UIButton *btnDiv;
    @property (nonatomic, retain) UITextField *txtResult;
    @property (nonatomic, retain) UIButton *btnMult;
    @property (nonatomic, retain) UIButton *btnDiv;
    - (IBAction)setOperator:(id)sender;
    @end
    .m file:
    #import "CalculatorView.h"
    @implementation CalculatorView
    @synthesize btnDiv, btnMult, txtResult;
    - (IBAction)setOperator:(id)sender{
    //if btnMult pressed
    //bla bla bla
    //if btnDiv pressed
    //bla bla bla
    that´s my code. Hope u can help.
    thanks
    @end

Maybe you are looking for

  • How to set your timed access default to no access?

    Hi, I deleted my default no access entry on timed access tab on my router, and now i can't add another default no access, since it requires a Mac address to save it. what do i do? how do i set the default to no acceess again to prevent unwated access

  • How to decide the size of MTU when writing an interface ?

    I have very little knowledge about network interface. But I want to write a network interface. But I am not getting how the MTU for an interface is decided depending upon the network physical capabilities. Like : localhost has 1500 bytes But this siz

  • What is an easy web-page creation program for use with MacBook Pro?

    Can anyone suggest an easy web-page creation program for use with MacBook Pro?  I have used FrontPage with my PC, but am changing to a MacBook Pro.

  • How to find out which users are using SharePoint Designer to make changes in SharePoint 2010 site?

    Hi there, How to find out which users are using SharePoint Designer to make changes in SharePoint 2010 site? Thanks.

  • Set report header text.VI

    OFFICE TOOLKIT内VI(Set report header(footer) text.VIにてEXCELへヘッダーフッターを挿入したいのですが.フォントサイズが大きくなってしまいます.ヘッダーフッターに対するフォントサイズを制御する方法もしくは.上述VIの使用方法に何らかの制限があるのでしょうか. 宜しくお願い致します. Attachments: ヘッダーサンプル.vi ‏37 KB