aboutsummaryrefslogtreecommitdiff
path: root/examples/EndApp.java
diff options
context:
space:
mode:
Diffstat (limited to 'examples/EndApp.java')
-rw-r--r--examples/EndApp.java36
1 files changed, 36 insertions, 0 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
+
+}