Overlaying SWF Asset with layer components - Strange behaviors.

Hi !
I am brand new at Flash Builder and Flash Catalyst.
I have been spending most of my time in Catalyst at first and realized later on that I needed some of the nice features inside of FlashBuilder.
I created a few FlashBuilder components and brought them in Catalyst in order to speed up my designing requirements.
After bringing in several SWF assets in Catalyst I stumlbed upon a few curious behavior.
1. If I load SWF assets in a same page and if they are inter mixed with components layers issued either from Photoshop or made from within Catalyst, I am unable to select most of them.  Only and only if I move them away from the other components, I can actually select them. They also become available when I make a test run, which they weren't before, if they were close or under other layerrs,  but stll visible.
2. Is there a reason why the names of the SWF are not visual at the layer level within Catalyst ?  All I see once the SWF are loaded is the terminology SWF Asset with the Skin name Wireframe.  This also seems to be creating a conflict in how the SWF components are selectable, since every time I select one of the SWF Asset, it is the one at the highest level in the layer stack that gets selected and not the one that I am attempting to select.
3. I ran once into a problem which was related to Skin name convention where I was duplicating buttons that always kept the same Skin name, which made it impossible to re-use them, since any modification would affect all of the duplicated components.  Why can't Catalyst create new Skin names in order to avoid this behavior?
I am pretty happy using Catalyst and Builder, but I gotta say that some of those behaviors are putting a dent in my schedule.
Anyone would have a few words of advice ?   I am especially concerned with the "perceived" impossibiliy to use more than one SWF asset within Catalyst.
Thank you.
lg

Oops, on looking back at my original post I can see I was not
clear on an important point. The layers that hold the three
different swf files are in Dreamweaver, one layer holds
Parks_Monuments.swf, another holds Land_Seascapes.swf and the third
holds Cityscapes.swf. As it works now you click on the appropriate
button on the left and through the use of Dreamweaver behaviors it
shows the associated swf by hiding the other two layers. BTW the
buttons are quite crude right now - no over or down states.
I realize I can't use the layers in an Actionscript to do
something but would it be possible to add a script to the down
state of a button so that it would show/hide the Dreamweaver
layers? I guess another way of doing it would be to put each swf on
a seperate page and have the script call up it's URL. Seems like
that would add a lot of overhead and duplicate uploading each time
the user switches photo categories.
Sorry for the confusion and thanks for taking the time to
give me some guidance - much appreciated.
Ed DiTomas

Similar Messages

  • Process over BPM with message split: strange behavior

    Hi everybody,
    introduction:
    We poll a file from a file-server and pass it to BPM. in BPM there is a multimapping. With each single message a WebService is called.
    Now we see that after a special amount of messages, each message is send (from BPM to WebService) four-times; other 3 times.
    This is the error: Every message should be send one time.
    There is no error in multimapping!
    I wonder, why I see more than <b>ONE entry</b> in SXMB_MONI_BPE.
    I compared the errorness process with another process, that was OK
    In the process that was OK, I see just ONE entry in SXMB_MONI_BPE.
    Any suggestions?
    Thanks a lot
    Regards Mario

    Hi,
    I hope this is not BUG.
    For every message from IP and to IP two messages will be generated each time.
    so total four.. this is the process of the IP..
    Please read the below link and page no .11
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c071d7bb-0601-0010-d6b8-f4e4dc7f1e20
    Points rewarded please if it is usefull..
    Regards
    Chilla..

  • Strange behavior when I try to match a mpeg2 video with the menu size image

    hello all,
    got a strange behavior when I try to match a mpeg2 video with the menu size image,
    menu size is 1920 x 1080 (photoshop file)
    mpeg2 video 1920 x 1080 (1second 19 frames)
    the idea is to go from the menu link to the next sub menu with a video as transition, using the same image on the video as the menu and then zooming in (in my case through a door) to end up after the zoom in the next level menu.
    I try to achieve a smooth change from the first play menu picture to the video image into the next level menu picture,
    everything works good but when I watch it on the preview mode on the left and right side of the video it shows a black bar at least 15 to 25 pixel wide, that means the video image appears smaller and it causes a little jump what is preety disturbing and can not be sold as a professional work.
    why encore treats the video size and picture differently?
    it's gratful appreciated if somebody who got experience in a transition I mentioned obove posting any solution,
    thankl you all

    Hi all
    I'm having a very similar problem with Encore. My menu items are distorting (a minor but infuriating squashing top and bottom) when previewed.
    Using Encore,PS,AE CS4
    DVD format SD PAL DV widescreen
    I created 3 menu frameworks and 3 video transistions to link them in AE. On the final frame of each transistion in AE I saved the frame with Composition>Save Frame to> Photoshop Layers. In PS i added the button functionality and saved.
    In Encore I use Dynamic link to import AE transistions as timelines and imported each PS menu twice, once as "menu" and once as an asset.
    When I link the timeline transistions to the menu and preview at the point the menu begins the whole image is squashed. When the next transistion is activated the image returns to its original size.
    Thinking it was the use of PS that was causing the menus to distort I used the menu asset directly in the time line. Obviously no menu functionality but also no distortion. The AE transistion flowed straight into the "menu" just as I expected.
    In the properties panel the menu Aspect Ratio 16:9
    The AE transistions PAR is SD PALwidescreen 1.4587.
    I did try the Blu Ray suggestion above but the same distortion was apparent.
    Any suggestions short of squashing the video to match the menu would be welcomed.
    Thanks

  • Strange Behavior with gMSA in Server 2012 R2

    Greetings,
    I have been doing some testing with gMSA Accounts in a Server 2012 R2 environment (two separate environments, actually), and I have noticed something very strange that occurred in both environments, which does not appear to be occurring in one of our customer's
    self-managed environments.
    We created a Group Managed Service Account using the following article:
    http://blogs.technet.com/b/askpfeplat/archive/2012/12/17/windows-server-2012-group-managed-service-accounts.aspx
    Everything went smoothly, and the account installs/tests successfully on both of the hosts that we are testing on. I am able to set my services to run under the account, and most of them appear to work fine. I am having some issues with a few of my services,
    and I believe that the strange behavior I am seeing may have something to do with this - described below: 
    As soon as I set the service's Log On Account (via the Log On Tab under the Service's Properties), the entirety of the "Log On" tab changes to "greyed out," and I am unable to change the Log On account back via the GUI (Screenshot
    attached).
    I found that I am able to successfully change the account via Command Line using sc.exe, but the Log On tab remains greyed out! So far, I have found nothing to remedy this, but confirmed that it happens for any service I set to use the gMSA as the Logon
    Account, and that it happens in 2 separate test environments, but not in a Customer's production environment - very strange.
    All servers in this environment are running Server 2012 R2, and domain Functional Level is currently Server 2012.
    I have been unable to find any information online about this behavior, so I am hoping someone has seen this before, and can explain why this is happening.
    Nick

    VIvian,
    Yes, we used the Install-AdServiceAccount gMSA command on each host using the gMSA account, and then ran Test-AdServiceAccount gMSA, which returned "True."
    However, one thing I noticed is that if I run Test-ADServiceAccount gMSA as a Local Administrator, it fails with the following:
    PS C:\Users\Administrator> Test-AdServiceAccount gMSA$
    Test-AdServiceAccount : The server has rejected the client credentials.
    At line:1 char:1
    + Test-AdServiceAccount gMSA$
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : SecurityError: (:) [Test-ADServiceAccount], AuthenticationException
        + FullyQualifiedErrorId : ActiveDirectoryCmdlet:System.Security.Authentication.AuthenticationException,Microsoft.A
       ctiveDirectory.Management.Commands.TestADServiceAccount
    If I run Test-ADServiceAccount gMSA as Domain Administrator, it returns true:
    PS C:\Users\Administrator.<domainname>> Test-AdServiceAccount gMSA$
    True
    Is this normal?
    Overall, I think the issue I am running into is at the Application Level, and not a problem with the gMSA, as it appears to be working. (Can Start/Stop services without any issues). I will be investigating my issue further with 3rd-party vendors, unless
    you think there is something wrong with my gMSA accounts based on the information I have provided.
    Nick

  • Strange behavior with Zoom and Image control

    HELP - I have a strange behavior (bug?) with using Zoom
    effect on an Image that has been placed on a Canvas. I am using
    dynamically instantiated images which are placed on a canvas inside
    a panel. I then assign a Zoom IN and Zoom Out behavior to the
    image, triggered by ROLL_OVER and ROLL_OUT effect triggers. THE BUG
    is that the image jumps around on the Zoom OUT and lands on a
    random place on the canvas instead of coming back to the original
    spot. This is especially true if the mouse goes in and out of the
    image very quickly. HELP -- what am I doing wrong? Computer = Mac
    OS X 10.4.9 Flex 2.0.1
    Here's a simple demo of the bug -- be sure to move the mouse
    in and out rapidly:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml"
    layout="absolute" creationComplete="setUp();">
    <mx:Script><![CDATA[
    import mx.events.EffectEvent;
    import mx.effects.Fade;
    import mx.effects.Zoom;
    import mx.rpc.events.ResultEvent;
    import flash.display.Sprite;
    import mx.core.UIComponent;
    import mx.controls.Image;
    private var zoomIn:Zoom;
    private var zoomOut:Zoom;
    private function setUp():void {
    var image:Image = new Image();
    image.id = "album_1_1";
    image.x = 200;
    image.y = 200;
    image.width = 64;
    image.height = 64;
    image.source = "
    http://s3.amazonaws.com/davidmccallie/album-128.jpg";
    image.addEventListener(MouseEvent.ROLL_OVER, doZoom);
    image.addEventListener(MouseEvent.ROLL_OUT, doZoom);
    myCanvas.addChild(image);
    zoomIn = new Zoom();
    zoomIn.zoomHeightTo = 2.0;
    zoomIn.zoomWidthTo = 2.0;
    zoomIn.captureRollEvents = true;
    zoomIn.suspendBackgroundProcessing = true;
    zoomOut = new Zoom();
    zoomOut.zoomHeightTo = 1.0;
    zoomOut.zoomWidthTo = 1.0;
    zoomOut.captureRollEvents = true;
    zoomOut.suspendBackgroundProcessing = true;
    private function doZoom(event:MouseEvent):void {
    var image:Image = Image(event.currentTarget);
    if (event.type == MouseEvent.ROLL_OVER) {
    zoomIn.target = event.currentTarget;
    zoomIn.play();
    } else if (event.type == MouseEvent.ROLL_OUT) {
    zoomOut.target = event.currentTarget;
    zoomOut.play();
    ]]>
    </mx:Script>
    <mx:Panel width="100%" height="100%"
    layout="absolute">
    <mx:Canvas id="myCanvas" width="100%" height="100%">
    </mx:Canvas>
    </mx:Panel>
    </mx:Application>

    There must be bugs in the Zoom effect code -- I changed the
    Zoom to Resize in the above code, and it works perfectly. Of
    course, Resize is not as nice as Zoom because you can't set the
    resize to be around the center of the image, but at least it works.
    Does anyone know about bugs in the Zoom effect?

  • Strange behavior in a table with dropTarget and delete action

    I am having a strange behavior in a table with drag and drop and action component to delete row.
    Steps:
    Drag the first row to the table and appears in the destination table (works well)
    Select and change the value by 156, appears an error (works fine)
    delete the row, the row disappears (works well)
    Add the first row again and the value is 156 instead of 158 (why ????)
    I guess the error is the deletion that is not correct, but do not know how?
    Can anyone help?
    I add the source code if you see where I'm wrong
    Java class:
    +public class BeanExample {+
    private ArrayList<RowExample> starttValues;
    private ArrayList<RowExample> endValues;
    +public BeanExample() {+
    super();
    +}+
    +public void setStarttValues(ArrayList<BeanExample.RowExample> starttValues) {+
    this.starttValues = starttValues;
    +}+
    +public ArrayList<BeanExample.RowExample> getStarttValues() {+
    +if (starttValues == null) {+
    starttValues = new ArrayList<BeanExample.RowExample>();
    starttValues.add(new RowExample("1", new Number(158)));
    starttValues.add(new RowExample("21", new Number(12565464)));
    +}+
    return starttValues;
    +}+
    +public void setEndValues(ArrayList<BeanExample.RowExample> endValues) {+
    this.endValues = endValues;
    +}+
    +public ArrayList<BeanExample.RowExample> getEndValues() {+
    +if (endValues == null) {+
    endValues = new ArrayList<BeanExample.RowExample>();
    +}+
    return endValues;
    +}+
    +public void validatorExample(FacesContext facesContext, UIComponent uIComponent, Object object) {+
    Number number = (Number)object;
    +if ((number.longValue() % 2) == 0) {+
    FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, "ES PAR", "ES PAR");
    throw new ValidatorException(message);
    +}+
    +}+
    +public DnDAction handleDrop(DropEvent dropEvent) {+
    Transferable transferable = dropEvent.getTransferable();
    DataFlavor<RowKeySet> rowKeySetFlavor = DataFlavor.getDataFlavor(RowKeySet.class, "loteDrag");
    RowKeySet rowKeySet = transferable.getData(rowKeySetFlavor);
    +if (rowKeySet != null) {+
    CollectionModel dragModel = transferable.getData(CollectionModel.class);
    +if (dragModel != null) {+
    Object currKey = rowKeySet.iterator().next();
    dragModel.setRowKey(currKey);
    RowExample table = (RowExample)dragModel.getRowData();
    getEndValues().add(new RowExample(table.getId(), table.getValue()));
    return dropEvent.getProposedAction();
    +}+
    +}+
    return DnDAction.NONE;
    +}+
    +public void borrarFila(ActionEvent actionEvent) {+
    endValues.remove(0);            RequestContext.getCurrentInstance().addPartialTarget(FacesContext.getCurrentInstance().getViewRoot().findComponent("pc1:t2"));
    +}+
    +public static class RowExample {+
    private String id;
    private Number value;
    +public RowExample(String id, Number value) {+
    super();
    this.id = id;
    this.value = value;
    +}+
    +public void setId(String id) {+
    this.id = id;
    +}+
    +public String getId() {+
    return id;
    +}+
    +public void setValue(Number value) {+
    this.value = value;
    +}+
    +public Number getValue() {+
    return value;
    +}+
    +}+
    +}+JSF
    +<?xml version='1.0' encoding='windows-1252'?>+
    +<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"+
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    +<jsp:directive.page contentType="text/html;charset=windows-1252"/>+
    +<f:view>+
    +<af:document id="d1">+
    +<af:form id="f1">+
    +<af:panelGroupLayout id="pgl1">+
    +<af:table value="#{beanExample.starttValues}" var="row"+
    rowBandingInterval="0" id="t1" rowSelection="single"
    displayRow="selected" contentDelivery="immediate">
    +<af:column sortable="false" headerText="Id" align="start" id="c2">+
    +<af:outputText value="#{row.id}" id="ot1"/>+
    +</af:column>+
    +<af:column sortable="false" headerText="Value" align="start" id="c1">+
    +<af:outputText value="#{row.value}" id="ot2"/>+
    +</af:column>+
    +<af:collectionDragSource actions="COPY" modelName="loteDrag"/>+
    +</af:table>+
    +<af:panelCollection id="pc1">+
    +<f:facet name="toolbar" >+
    +<af:toolbar id="dc_t2" >+
    +<af:commandToolbarButton shortDesc="Delete"+
    icon="/imagesDemo/delete_ena.png"
    id="dc_ctb3" immediate="true"
    +actionListener="#{beanExample.borrarFila}"/>+
    +</af:toolbar>+
    +</f:facet>+
    +<af:table value="#{beanExample.endValues}" var="row"+
    +rowBandingInterval="0" id="t2">+
    +<af:column sortable="false" headerText="Id" align="start" id="c3">+
    +<af:outputText value="#{row.id}" id="ot3"/>+
    +</af:column>+
    +<af:column sortable="false" headerText="Value" align="start" id="c4" >+
    +<af:inputText value="#{row.value}" autoSubmit="true" id="it1" validator="#{beanExample.validatorExample}"/>+
    +</af:column>+
    +<af:collectionDropTarget actions="COPY" modelName="loteDrag"+
    +dropListener="#{beanExample.handleDrop}"/>+
    +</af:table>+
    +</af:panelCollection>+
    +</af:panelGroupLayout>+
    +</af:form>+
    +</af:document>+
    +</f:view>+
    +</jsp:root>+

    I think the problem is the validator
    I changed the practical case, I added an InputText to enter new values in the first row.
    +<af:inputText immediate="true" label="new value" id="it2"+
    +valueChangeListener="#{beanExample.newvalue}" autoSubmit="true"/>+
    +public void newvalue (ValueChangeEvent valueChangeEvent) {+
    +String valor = (String)valueChangeEvent.getNewValue();+
    +Number valorNumber=null;+
    +try {+
    +valorNumber = new Number (valor);+
    +} catch (SQLException e) {+
    +}+
    +RowExample example = (RowExample) endValues.get(0);+
    +example.setValue(valorNumber);+
    +example.setId(valorNumber.toString());+
    +RichTable table = (RichTable)FacesContext.getCurrentInstance().getViewRoot().findComponent(id);+
    +RequestContext.getCurrentInstance().addPartialTarget(table);+
    +}+
    Case 1
    I drag the first row to the target table (ok)
    The new row appears (ok)
    Enter the value 77 in the InputText (ok)
    id content and value change (ok)
    Case2
    I drag the first row to the destination table
    The new row appears (ok)
    Change the value of the first row by 80 (ok)
    errors appears (by validator) (ok)
    Enter the value 77 in the InputText (ok)
    the id is changed but the value NO (*KO*)
    I do not understand the behavior
    Edited by: josefuente on 27-oct-2010 16:03

  • Strange behavior with Firefox

    Hi Team,
    I am using HTMLDB V2.0 and Firefox V1.5.0.1. I used wizard to create a report/form application. However, when I press a button to update the form all the buttons line up in a vertical row and I then have to press the same button again.
    My application is 30412 at htmldb.oracle.com. The problem is occurring at page 4. Go to page 3 (2nd tab) and select any record. You will be directed to page 4. Then when you press any button (cancel, create, delete, apply changes) on page 4, page 4 is refreshed and the buttons strangely line up in a vertical column. I then have to press the same button again before the update occurs.
    I have the same report/form setup on pages 1 and 2 and it is working fine on those pages.
    This strange behavior is not occurring in IE. I also notice that the font size is bigger in IE .
    I would appreciate any help you might offer.
    I really enjoy working with HTMLDB.
    Thanks, Andy

    Sorry about that. I removed all the authorization schemes from the application. I also changed the authentication scheme to HTMLDB. Let me know if I need to do something more for you to get access.
    Thanks for looking at it.
    I think it may have something to do with the "button, alternative 3" template from theme 3 that I am using. When I switch to the "button" template from theme 3 then the strange behavior goes away in Firefox.
    Andy

  • Strange behavior with obssocookie on different browser

    Hi,
    I am trying to integrate OAM with our application deployed on WLS. I have set up an IIS proxy server and installed a web gate on it. I have seen a couple of strange behavior
    1) If I try to access some static image file, SSO keeps asking for authentication. It happens for both firefox and IE, but it doesn't happen for chrome though. Looks like for image file request, the obssocookie is not passed correctly. Anyone sees that before?
    2) If I use firefox on the machine where WLS app server is installed to connect to proxy server, if I use hostname in the URL, I don't see the obssocookie. If I use IP address in the URL, I can see obssocookie. If I use IE or any browser from any other machine, obssocookie is always available
    thanks.
    -Wei

    I found it in the document
    B.1 How Logout Works
    The WebGate logs a user out when it receives a URL containing "logout." (including the "."), with the exceptions of logout.gif and logout.jpg, for example, logout.html or logout.pl. When the WebGate receives a URL with this string, the value of the ObSSOCookie is set to "logout."
    The Access System sets an obSSOCookie for each user or application that accesses a resource protected by a WebGate. The obSSOCookie enables users to access resources that are protected by the Access System that have the same or a lower authentication level. Removing the ObSSOcookie causes the WebGate to log the user out and requires the user to re-authenticate the next time he or she requests a resource that is protected by the Access System.
    Well, I havn't got that far in the document:)
    Thanks a lot for your help.
    -Wei

  • Strange behavior with DefaultCellEditor

    Hello everybody,
    I found a strange behavior with DefaultCellEditor using a JTextField in a JTable. The following line will show, what I mean:
    setDefaultCellEditor(String.class,new DefaultCellEditor(new JTextField()));
    Imho this should do the same as JTable does already, when it installs a JTextField as default cell editor for cell values of the String class. But, it seems, that it is not the same:
    When I add this line in the constructor of a JTable subclass the editor component seems to be less wide and less high to the right and bottom - it looks so with Win95 with JDK 1.4.0 - but with Win2000 it is correct for example.
    My question is - how can it be, that the normal default cell editor does not have this behavior but when I use the line above, it is displayed in the wrong way?- What does the default cell editor in another way than I do it, that it has not this ugly display?
    I would like to look in the sources, but unfortunately I can't find the source code in JDK 1.4.0 - perhaps you have a hint, where to find it.
    greetings Marsian

    It seems the Label doesn't like it, that it is in a GridCell with rowspan = 2
    If it is in a normal cell (no rowspan), it works.
    If I add ColumnConstraints to the gridpane, it kind of works, but the Label still occupies more space than it should.
    Edited by: csh on 19.07.2012 03:51

  • Strange behavior with Collections

    Hello!
    I have a - from my point of view - strange behavior with a List (same also applies to Vector, LinkedList, and others):
    List<String> myList = new myList<String>;
    myList.add("One");
    while (true) {
    try {
    System.out.println(myList.size());
    throw new Exception();
    } catch (Exception e) {
    e.printStackTrace();
    }And the result is 1, 2, 2, 2, ...although I added only one element. The two elements in the List point to the same object.
    What could case this issue?
    Regards,

    len00x wrote:
    List<String> myList = new myList<String>;This doesn't even look like it will compile for at least one reason, easily two.

  • Strange behavior with Label#setWrapText(true) in GridPane.

    I've got a strange behavior with a Label, which has setWrapText(true) in a GridPane.
    Check out the sample and click the button.
    You see, that the GridPane suddenly behaves as if it had GridPane.setVGrow and HGrow set for the lblStatus.
    (it takes the full available space).
    Furthermore the first column shrinks to a minimum, so that lblText1 can't display its text anymore.
    Tested with 2.1 GA.
    Any help with that?
    import javafx.application.Application;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.geometry.Insets;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.control.Label;
    import javafx.scene.layout.GridPane;
    import javafx.stage.Stage;
    public class TestApp4 extends Application {
        public static void main(String[] args) {
            launch(args);
        @Override
        public void start(final Stage stage) throws Exception {
            GridPane gridPane = new GridPane();
            gridPane.setPadding(new Insets(2, 2, 2, 2));
            Label lblText1 = new Label();
            lblText1.textProperty().set("Some text");
            Label lblText2 = new Label();
            lblText2.textProperty().set("Some other text");
            Button btnClick = new Button();
            btnClick.textProperty().set("Click me");
            final Label lblStatus = new Label();
            lblStatus.setWrapText(true);
            gridPane.add(lblText1, 0, 0, 1, 1);
            gridPane.add(lblText2, 1, 0);
            gridPane.add(lblStatus, 0, 2, 2, 1);
            gridPane.add(btnClick, 0, 3, 2, 1);
            btnClick.setOnAction(new EventHandler<ActionEvent>() {
                @Override
                public void handle(ActionEvent actionEvent) {
                    lblStatus.setText("very long text, very long text, very long text, very long text,very long text, very long text");
            gridPane.setGridLinesVisible(true);
            Scene scene = new Scene(gridPane, 300, 300);
            stage.setScene(scene);
            stage.show();
    }Edited by: csh on 19.07.2012 03:35

    It seems the Label doesn't like it, that it is in a GridCell with rowspan = 2
    If it is in a normal cell (no rowspan), it works.
    If I add ColumnConstraints to the gridpane, it kind of works, but the Label still occupies more space than it should.
    Edited by: csh on 19.07.2012 03:51

  • Strange behavior with Bindings??

    Hello to all JavaFX 2 Binding experts,
    I have a strange behavior with Bindings in JavaFX 2.2 (Java 1.7 update 21). Please have a look at the following source code:
    package test;
    import javafx.application.Application;
    import javafx.beans.binding.BooleanBinding;
    import javafx.beans.property.SimpleBooleanProperty;
    import javafx.beans.value.ChangeListener;
    import javafx.beans.value.ObservableValue;
    import javafx.fxml.FXML;
    import javafx.fxml.FXMLLoader;
    import javafx.scene.Parent;
    import javafx.scene.Scene;
    import javafx.scene.control.Label;
    import javafx.scene.control.RadioButton;
    import javafx.stage.Stage;
    public class BindingVsProperty extends Application
        @FXML
        private RadioButton opt11;
        @FXML
        private RadioButton opt12;
        @FXML
        private RadioButton opt21;
        @FXML
        private RadioButton opt22;
        @FXML
        private Label lbl11And21;
      @Override
        public void start(Stage arg0) throws Exception
            FXMLLoader l_loader = new FXMLLoader();
            l_loader.setLocation(BindingVsProperty.class.getResource("BindingVsproperty.fxml"));
            l_loader.setController(this);
            l_loader.load();
            Scene l_scene = new Scene((Parent)l_loader.getRoot());
            arg0.setScene(l_scene);
            useBinding1();
            //useBinding2();
            //useBinding3();
            arg0.show();
        private void useBinding1() // NOT WORKING - ChangeListener.changed(..) is not called
            BooleanBinding l_andOpt11Opt21 = opt11.selectedProperty().and(opt21.selectedProperty());
            l_andOpt11Opt21.addListener(new ChangeListener<Boolean>()
                @Override
                public void changed(ObservableValue<? extends Boolean> arg0, Boolean arg1, Boolean arg2)
                    System.out.println("Opt 1.1 AND Opt 2.1 changed to: " + arg2);
        private void useBinding2() // OK - ChangeListener.changed(..) is called
            BooleanBinding l_andOpt11Opt21 = opt11.selectedProperty().and(opt21.selectedProperty());
            lbl11And21.visibleProperty().bind(l_andOpt11Opt21);
            l_andOpt11Opt21.addListener(new ChangeListener<Boolean>()
                @Override
                public void changed(ObservableValue<? extends Boolean> arg0, Boolean arg1, Boolean arg2)
                    System.out.println("Opt 1.1 AND Opt 2.1 changed to: " + arg2);
        private void useBinding3() // NOT WORKING - ChangeListener.changed(..) is not called
            BooleanBinding l_andOpt11Opt21 = opt11.selectedProperty().and(opt21.selectedProperty());
            new SimpleBooleanProperty(false).bind(l_andOpt11Opt21);
            l_andOpt11Opt21.addListener(new ChangeListener<Boolean>()
                @Override
                public void changed(ObservableValue<? extends Boolean> arg0, Boolean arg1, Boolean arg2)
                    System.out.println("Opt 1.1 AND Opt 2.1 changed to: " + arg2);
        public static void main(String[] args)
            launch(args);
    <?xml version="1.0" encoding="UTF-8"?>
    <?import java.lang.*?>
    <?import java.util.*?>
    <?import javafx.scene.control.*?>
    <?import javafx.scene.layout.*?>
    <?import javafx.scene.paint.*?>
    <BorderPane id="BorderPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefWidth="371.0" xmlns:fx="http://javafx.com/fxml">
      <center>
        <AnchorPane prefHeight="200.0" prefWidth="200.0">
          <children>
            <Label id="lblAnd" fx:id="lbl11And21" layoutX="82.0" layoutY="121.0" text="Group1 Opt1 AND Group2 Opt1 is true" textFill="#41cc00" visible="false" />
            <RadioButton fx:id="opt21" layoutX="216.0" layoutY="24.0" mnemonicParsing="false" text="Group 2 - Opt 1">
              <toggleGroup>
                <ToggleGroup fx:id="group2" />
              </toggleGroup>
            </RadioButton>
            <RadioButton fx:id="opt22" layoutX="216.0" layoutY="67.0" mnemonicParsing="false" text="Group 2 - Opt 2" toggleGroup="$group2" />
            <RadioButton fx:id="opt11" layoutX="29.0" layoutY="24.0" mnemonicParsing="false" text="Group 1 - Opt 1">
              <toggleGroup>
                <ToggleGroup fx:id="group1" />
              </toggleGroup>
            </RadioButton>
            <RadioButton fx:id="opt12" layoutX="29.0" layoutY="67.0" mnemonicParsing="false" text="Group 1- Opt 2" toggleGroup="$group1" />
          </children>
        </AnchorPane>
      </center>
    </BorderPane>
    What I need for my application is the use case in useBinding1(), i.e., a BooleanBinding where several listeners are attached to. The problem is that I never get a callback in the ChangeListener if one of the RadioButton.selectedProperty() is changed.
    Now I tried what happens if I use the same BooleanBinding for another binding to a property plus the listener, now the listener gets callbacks as expected! (see useBinding2() )
    Than I thought may be Bindings must be bound in order to trigger listeners and tried useBinding3() where I bind the BooleanBinding to a new BooleanProperty, in this case the listener doesn't get callback anymore...
    And now I'm very frustrated and hope that anyone out there can help me to understand this strange behavior.
    Thanks a lot!
    WhiteAntelope

    All these work just fine for me: the listeners are all called as expected. Note that the listener is only invoked when the value of the binding actually changes, which doesn't happen every time a radio button is pressed. (For example, if both buttons are unselected, the binding is false. If one button is selected, the binding remains false and the listener is not invoked. When the second button is selected, the binding becomes true, and the listener is invoked.)

  • Strange Behavior with Rectangle in BorderPane

    I'm creating a Rectangle, filling it with a gradient, and setting it as the top component of a BorderPane. Then, when the BorderPane expands I also want the Rectangle to expand. And when the BorderPane shrinks I want the rectangle to shrink. The code looks like:
    BorderPane mainLayout = new BorderPane();
            VBox.setVgrow(mainLayout, Priority.ALWAYS);
            getChildren().add(mainLayout);
            Text title = new Text("New Entry");
            title.setFont(Font.font(title.getFont().getName(), title.getFont().getSize() * 1.6));
            HBox titlePanel = new HBox();
            titlePanel.setAlignment(Pos.CENTER);
            //titlePanel.getChildren().add(title);   
            // TODO: How to make this rectangle grow to always fill the form title?
            Stop[] stops = new Stop[] { new Stop(0, Color.STEELBLUE), new Stop(1, Color.WHITE)};
            LinearGradient gradient = new LinearGradient(0, 0, 1, 0, true, CycleMethod.NO_CYCLE, stops);
            final Rectangle r = new Rectangle() {
                @Override
                public boolean isResizable() {
                    return true;
            setFillHeight(true);
            mainLayout.widthProperty().addListener(
                    new ChangeListener<Number>() {
                        @Override
                        public void changed(
                                ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                            System.out.println("Setting width to " + newValue);
                            // r.setWidth(newValue.intValue());
            r.widthProperty().bind(widthProperty());
            r.setHeight(100);
            r.setFill(gradient);
            titlePanel.getChildren().add(r);
            mainLayout.setTop(titlePanel);----
    Strangely enough this code works if the BorderPane is expanded to a greater size than it was previously. In this case the ChangeListener will be invoked and widthProperty will But if the BorderPane shrinks then nothing shrinks and the ChangeListener is never called. Is this a bug? Why would the BorderPane be able to expand but to never shrink?
    Any help appreciated, thanks.
    Edited by: ocean on Aug 27, 2011 9:22 AM
    Edited by: ocean on Aug 27, 2011 9:22 AM

    Not sure why, but I managed to fix this issue. The BorderPane in the code snippet above was itself embedded inside a HBox that was itself being embedded inside the center of another BorderPane. I removed the titlepanel from the embedded BorderPane and put it in the top-level BorderPane. There I was able to get the Rectangle to expand and contract as the window was received. This seems to be another "nesting thing" with JavaFX and it's not the first such issue I've run into, particularly with respect to resize behavior. I wish the documentation could be updated so that it's clear how the different nodes, particularly layouts, behave with respect to resizing. Thanks.

  • Strange behavior of entourage with shared IMAP folders

    Hi the list,
    I have a strange behavior with entourage 11.2.5 with shared IMAP folders. Here's what I'd like to do :
    All this has to do with spamassassin and spamtrainer. Some of our mails accounts are IMAP ones, but most are POP only and I don't want them to be IMAP. But I also want both IMAP and POP users to have some IMAP access to shared mailboxes for spam and ham to be learned. For those who are using IMAP accounts, that's not a problem with shared mailboxes. But, considering those with only POP accounts, I decided to create a dedicated user called anti_spam, using IMAP access, with two mail boxes that are spam and non_spam, so that all POP users could share this account.
    Using SirAdmin, I set l/p/i ACL rights for anyone and the same for anti-spam user so that mail can't be read back with this shared account. Everything just works fine with Mail, but it doesn't work with Entourage. I set up an IMAP account for anti_spam to get an access to shared mailboxes even if main account is a POP one. Everything's fine except I can't write anything on mailboxes : I get an error 1025 and a denied access for writing. The only way to get write access to these mailboxes is to add "r" ACL to them with SirAdmin, which is NOT the solution as it would allow anybody to read mails. It's obvious it has more to do with Entourage than OS X mail service, all the more trying the same conf in Thunderbird is OK as expected.
    I was just wondering if somebody here would have some idea of what could be wrong ...

    I'd be interested to hear if anyone has a solution too as am having the same problem of not being able to write to IMAP mailboxes.
    JJJ

  • Strange behavior of stop control with events

    I have found some strange behavior while using stop controls. I have a main vi which has two while loops. One of them is used to continuosly acquire the images. The other while loop has event structure that has several booleans which trigger different events. Both the while loops are operated using the same stop. My problem is this. None of the events get triggered when I press the buttons for them. However if I keep the stop value true( which stops the acquisition) and then click the event buttons all of them work fine. so every time I want an event to run I first change this stop value to true and then press the button for the event to fire. I want to know what is causing this? Why is th stop button influencing the behavior
    of other events?

    If your while loops are completely independent then it whould work. I've attached a simple example in LabVIEW 6.1 that shows a while loop with an event structure and another running continuously. A single stop button stops both but until then, the event structure will respond to clicking on two other Booleans in the VI.
    Attachments:
    Two_While_Loops.vi ‏24 KB

Maybe you are looking for

  • Data form crashes at connect window

    I have used the form wissard and created a simple form. When I compile the form I get warnings and when I run the form I can see the connect screen but I can not type anything in this window null

  • Selection of range in variable

    Hi Gurus I have following requirment regarding the selection in variable. We want to populate the exit variable on the employee and populate it with the all the employees in the cube for particular fund center based on the fund center selected in the

  • Spanish login-doesn't show up descriptions on VL10D while doing F4 on plant

    Hi, When I login in ECC 6.0 system through Spanish it does'nt show the descriptions of plants. When I log in english it shows up? Where do i need to look in? I want them to show-up english when not maintained in spanish. Any ideas? Rgds Praveen

  • HR Mini Master link to SAP HR???

    My client have HR MiniMaster on ERP system, and now they want to implement SAP HR (PA, OM, Payroll...) on separated system. The situation is going to be like this: 1. ERP system (FI CO MM SD...HR MiniMaster) 2. HR system The problem is they want to k

  • Error when synchronise outlook and iphone

    Hello, I have a problem with an iPhone 4. I synchronise my Outlook calendar with iTunes on USB. The synchro does not work since some weeks, and I found a log file with this error : 2012-08-20 17:37:38.968|AppleMobileSync.exe|1592:3560424|CalendarsDat