Package test.core

Source Code of test.core.TestGlobalDOMListener

/*
* OnClickFireEventFromServerTest.java
*
* Created on 6 de agosto de 2007, 15:19
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/

package test.core;


import java.io.Serializable;
import org.itsnat.core.ItsNatDocument;
import org.itsnat.core.event.ItsNatEvent;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Text;
import org.w3c.dom.events.Event;
import org.w3c.dom.events.EventListener;
import org.w3c.dom.events.EventTarget;
import test.shared.EventListenerSerial;

/**
*
* @author jmarranz
*/
public class TestGlobalDOMListener implements EventListener,Serializable
{
    protected ItsNatDocument itsNatDoc;
    protected Element link;

    /** Creates a new instance of OnClickFireEventFromServerTest */
    public TestGlobalDOMListener(ItsNatDocument itsNatDoc)
    {
        this.itsNatDoc = itsNatDoc;
        load();
    }

    public void load()
    {
        final Document doc = itsNatDoc.getDocument();
        this.link = doc.getElementById("testGlobalDOMListenerId");
        ((EventTarget)link).addEventListener("click",this,false);

        EventListener global = new EventListenerSerial()
        {
            public void handleEvent(Event evt)
            {
                if (evt.getCurrentTarget() != link) return;
                ItsNatEvent itsNatEvt = ((ItsNatEvent)evt);
                itsNatEvt.setUserValue("test_global_dom_listener_doc",Boolean.TRUE);
            }
        };
        itsNatDoc.addEventListener(global);


        global = new EventListenerSerial()
        {
            public void handleEvent(Event evt)
            {
                if (evt.getCurrentTarget() != link) return;
                ItsNatEvent itsNatEvt = ((ItsNatEvent)evt);
                itsNatEvt.setUserValue("test_global_dom_listener_client",Boolean.TRUE);
            }
        };
        itsNatDoc.getClientDocumentOwner().addEventListener(global);
    }

    public void handleEvent(Event evt)
    {
        ItsNatEvent itsNatEvt = ((ItsNatEvent)evt);
        Boolean objDoc = (Boolean)itsNatEvt.getUserValue("test_global_dom_listener_doc");
        Boolean objClient = (Boolean)itsNatEvt.getUserValue("test_global_dom_listener_client");
        String msg;
        if ((objDoc != null)&&(objClient != null)) msg = "OK";
        else msg = "WROOOOONG";
        Text text = (Text)link.getFirstChild();
        text.setData(text.getData() + " => " + msg);
    }
}
TOP

Related Classes of test.core.TestGlobalDOMListener

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.