summaryrefslogtreecommitdiffstats
path: root/src/main/java/nn/pp/rc/u.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/nn/pp/rc/u.java')
-rw-r--r--src/main/java/nn/pp/rc/u.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/main/java/nn/pp/rc/u.java b/src/main/java/nn/pp/rc/u.java
new file mode 100644
index 0000000..c5c08d4
--- /dev/null
+++ b/src/main/java/nn/pp/rc/u.java
@@ -0,0 +1,55 @@
+package nn.pp.rc;
+
+import java.applet.Applet;
+import java.awt.Frame;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+
+/**
+ * This is a simple class to override the nn.pp.rc.u class from the applet.
+ *
+ * We need to do this, because the original class is doing some nasty things in
+ * the processWindowEvent method. This class has the same name (and the same
+ * package) and is somewhere before the applet in the classpath. So we cannot
+ * import the original class here, but the class is so simple, that we can
+ * implement it from scratch.
+ */
+public class u extends Frame
+{
+ ServerConsolePanelBase consolePanel;
+
+ public u(Applet applet, String title, ServerConsolePanelBase consolePanel)
+ {
+ super(title + " Remote Console");
+ this.consolePanel = consolePanel;
+ this.add(consolePanel, "Center");
+
+ this.addWindowListener(new WindowAdapter()
+ {
+ @Override
+ public void windowClosing(WindowEvent windowEvent)
+ {
+ applet.stop();
+ }
+ });
+ }
+
+ /**
+ * Close this frame.
+ */
+ public void a()
+ {
+ this.setVisible(false);
+ this.setState(0);
+ this.dispose();
+
+ // "Close" the console panel
+ consolePanel.r();
+ }
+
+ public void a(String path, String target)
+ {
+ // Nothing here, because we do not need the redirection to another page
+ // when the applet exists.
+ }
+}