diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/EndApp.java | 36 | ||||
-rw-r--r-- | examples/Makefile | 50 | ||||
-rw-r--r-- | examples/TestIvySwing.java | 8 | ||||
-rw-r--r-- | examples/TranslateXML.java | 33 |
4 files changed, 63 insertions, 64 deletions
diff --git a/examples/EndApp.java b/examples/EndApp.java new file mode 100644 index 0000000..df18201 --- /dev/null +++ b/examples/EndApp.java @@ -0,0 +1,36 @@ +/** + * example of close code + * (c) CENA + * Changelog: + * 1.2.12 + */ +import fr.dgac.ivy.* ; +import javax.swing.*; + +public class EndApp extends IvyApplicationAdapter { + + public static void main(String[] args) throws IvyException { + Ivy bus=new Ivy("EndApp","EndApp ready",null); + EndApp e = new EndApp(bus); // a frame is opened, and the Swing Thread is started + bus.addApplicationListener(e); + bus.start(Ivy.getDomain(null)); // Ivy threads are up and running + // the control flow won't stop until the end of all above threads + } + + private Ivy bus; + JFrame f; + + public EndApp(Ivy b) { + this.bus=b; + f=new JFrame("test"); + f.getContentPane().add(new JLabel("some label"),java.awt.BorderLayout.CENTER); + f.pack(); + f.setVisible(true); + } + + public void die(IvyClient client, int id,String msgarg) { + System.out.println("received die msg from " + client.getApplicationName()); + f.dispose(); // closes the only window, thus quitting the swing thread + } // end of die callback, the Ivy threads are stopped + +} diff --git a/examples/Makefile b/examples/Makefile index 4918928..923b69e 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -1,53 +1,13 @@ +include ../java.mk + .SUFFIXES: .java .class - SRCS = TestIvy.java TestIvySwing.java Counter.java ivyTranslater.java Translate.java TranslateXML.java + SRCS = TestIvy.java TestIvySwing.java Counter.java ivyTranslater.java Translate.java TranslateXML.java EndApp.java OBJS = $(SRCS:.java=.class) -NANOXMLPATH=/export/home/jestin/java/Jars/nanoxml-2.2.1.jar -GNUPATH=/usr/share/java/regexp.jar:/usr/share/java/gnu.getopt.jar -BUILDPATH=../lib/ivy-java.jar -ADD=$(GNUPATH):$(BUILDPATH):$(NANOXMLPATH) - -####################################### -# jikes setup on my box -####################################### -# RTPATH = /usr/lib/j2re1.3/lib/rt.jar -# RTPATH = /usr/local/j2sdk1.4.1/jre/lib/rt.jar -#JIKESPATH = ${RTPATH}:/usr/share/java/gnu.getopt.jar:/usr/share/java/repository -#JAVACOPTS = -d . -deprecation -# JAVAC = jikes -classpath $(JIKESPATH):$(ADD) - -####################################### -# generic setup -####################################### - JAVAC = javac -JAVACOPTS = -d . -deprecation -CLASSPATH = -classpath .:$(ADD) - -####################################### -# blackdown jdk118 setup -####################################### -# JAVAC = /usr/local/jdk118_v3/bin/javac -#CLASSPATH = -classpath .:/usr/local/jdk118_v3/lib/classes.zip:/home/jestin/java/Jars/swingall.jar:$(ADD) -#JAVACOPTS = -d . - -###################################### -# local Blackdown linux 1.2.2 -###################################### -#CLASSPATH = -classpath .:$(ADD) -#JAVACOPTS = -deprecation -d . -# JAVAC = /usr/local/jdk1.2.2/bin/javac - -###################################### -# local Blackdown linux 1.3.1 -###################################### -#CLASSPATH = -classpath .:$(ADD) -#JAVACOPTS = -deprecation -#JAVAOPTS = -#JAVA = /usr/local/j2sdk1.3.1/bin/java -#JAVAC = /usr/local/j2sdk1.3.1/bin/javac +BUILDPATH=../ivy-1.2.12.jar .java.class: - $(JAVAC) $(JAVACOPTS) $(CLASSPATH) $< + $(JAVAC) $(JAVACOPTS) -classpath $(BUILDPATH):$(GNUPATH) $< all: $(OBJS) diff --git a/examples/TestIvySwing.java b/examples/TestIvySwing.java index cb3eca5..31a54a9 100644 --- a/examples/TestIvySwing.java +++ b/examples/TestIvySwing.java @@ -122,9 +122,9 @@ class TestIvySwing extends JPanel implements IvyApplicationListener { ports.addActionListener(new ComboCB()); p.add(ports); add(p,BorderLayout.SOUTH); - tfRegex.setNextFocusableComponent(tfSend); - tfSend.setNextFocusableComponent(tfRegex); - tfSend.setRequestFocusEnabled(true); + //tfRegex.setNextFocusableComponent(tfSend); + //tfSend.setNextFocusableComponent(tfRegex); + //tfSend.setRequestFocusEnabled(true); localname = "TestIvySwing "+Ivy.libVersion+" ("+index+")"; index++; bus = new Ivy(localname,localname+" ready",this); @@ -232,7 +232,7 @@ class TestIvySwing extends JPanel implements IvyApplicationListener { if (--nbTIS == 0) System.exit(0); // I leave when the last TestIvySwing exits System.out.println("closed"); } - public void windowActivated(WindowEvent e) {tfSend.grabFocus();} + public void windowActivated(WindowEvent e) {tfSend.requestFocus();} } private class SPAWN implements ActionListener { diff --git a/examples/TranslateXML.java b/examples/TranslateXML.java index b7ec8fb..9dc3283 100644 --- a/examples/TranslateXML.java +++ b/examples/TranslateXML.java @@ -8,6 +8,8 @@ * this program is LGPL ... etc etc * * New: + * 1.2.12 + * leaving NanoXML in favor to the full featured xpath etc... * 1.2.6 * get compatible with new Ivy version * 1.2.3 @@ -16,10 +18,14 @@ * */ import fr.dgac.ivy.* ; +import gnu.getopt.Getopt; import java.io.* ; -import net.n3.nanoxml.*; import java.util.*; -import gnu.getopt.Getopt; +import javax.xml.parsers.*; +import javax.xml.xpath.*; +import org.xml.sax.*; +import org.w3c.dom.*; + class TranslateXML { @@ -42,19 +48,16 @@ class TranslateXML { private void parseFile(String filename) { try { - IXMLParser parser = XMLParserFactory.createDefaultXMLParser(); - IXMLReader reader = StdXMLReader.fileReader(filename); - parser.setReader(reader); - IXMLElement xml = (IXMLElement) parser.parse(); - // checks if everything is OK - // XMLWriter writer = new XMLWriter(System.out); - // writer.write(xml); - Vector translations = xml.getChildrenNamed("translate"); - for (int i=0;i<translations.size();i++) { - IXMLElement trans = (IXMLElement)translations.elementAt(i); - String from = trans.getAttribute("from",null); - String to = trans.getAttribute("to",null); - if ((from!=null)&&(to!=null)) { + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + DocumentBuilder builder = factory.newDocumentBuilder(); + Document trans = builder.parse(new File(filename)); + XPath xpath = XPathFactory.newInstance().newXPath(); + NodeList list = (NodeList)xpath.evaluate("/translations/translate",trans,XPathConstants.NODESET); + for (int i=0;i<list.getLength();i++) { + NamedNodeMap nnm = list.item(i).getAttributes(); + String from = nnm.getNamedItem("from").getNodeValue(); + String to = nnm.getNamedItem("to").getNodeValue(); + if ((from!=null)&&(to!=null)&&(!from.equals(to))) { System.out.println("translating every \""+from+"\" in \""+to+"\""); bus.bindMsg(from,new TALK(to)); } |