A few more things, I understand if you guys are busy, or dont want to implement these changes as they are probably more for people who want to tweek the AppletLoader experience.

Sorry for constantly bugging you guys on the topic of the AppletLoader, its just that I want to port my game over, and would like to make sure its as smooth as possible, so im finding a few concerns as I go.
1. resizable applet, as the loader screen doesn't resize. This code should update once every second (If needed).
/** time stamp for last screen resize check */
protected long lastResize;
/*
* @see java.awt.Container#paint(java.awt.Graphics)
*/
public void paint(Graphics g) {
// don't paint loader if applet loaded
if(state == STATE_DONE) {
return;
}
// create offscreen if missing
if (offscreen == null) {
offscreen = createImage(getWidth(), getHeight());
lastResize = System.currentTimeMillis();
} else {
if (offscreen.getWidth(null) < getWidth() || offscreen.getHeight(null) < getHeight()) {
if (System.currentTimeMillis() > lastResize + 1000) {
lastResize = System.currentTimeMillis();
offscreen.flush(); // :ADDED FOR MACOSX_IMAGE MEMORY FIX
offscreen = createImage(getWidth(), getHeight());
System.gc();// :ADDED FOR MACOSX_IMAGE MEMORY FIX
System.runFinalization();// :ADDED FOR MACOSX_IMAGE MEMORY FIX
}
}
}
should also clip to the applet size, the complete code is included in the attached AppletLoader.txt
2. I understand the red error writing for most cases, but in regards to the security certificate being declined i was thinking maybe use a nicer error popup.
tends to give the user a "I Killed the virus before it killed my computer" feeling.
3. Adding a "al_redirect" url
if the security popup is declined, offer a "redirect url" option. If the seperate_jvm tag is used on the platforms that support it, applets can just be reloaded without a browser restart, simple solution is to redirect to getDocumentBase().
fine for most cases, except IE Java 1.6(another IE applet lingering bug requires a querystring cache fix)
4. More of a question. Why is the applet loader "Applet" and not "JApplet". One reason JApplet is better, on Windows Java 1.6 there is less flicker on resizing and drawing. What are the reasons for Applet?
5. There is a problem on Internet Explorer with lingering applets. you can prevent this by calling super.destroy(): at the end of destroy method (also i include super.destroy at the start of init());
not sure how this will effect other platforms, if users decline the security dialog, helps to make sure that they will get a popup next time they load the browser (at least using IE).
I included all these changes in the attached AppletLoader.txt for those that are interested.
Test it here:
http://have2chat.net/rts, make sure to "CANCEL" the security certificate popup, to test the applet error case.
edit:Also forgot this one. allows the applet to be resizable, if the user decides to use the appletloader as webstart application.
should be called via a parameter (I didnt include one), as a resizable frame is not always desirable.
/** check if applet is running in Frame and resize paramater **/
boolean resizeCheck = true;
/*
* @see java.applet.Applet#start()
*/
public void start() {
if (resizeCheck) {
resizeCheck = false;
Component parent = getParent();
Frame root = null;
while(parent.getParent()!=null) {
parent = parent.getParent();
if (parent instanceof Frame) {
root = (Frame)parent;
}
}
if (root!=null) {
root.setResizable(true);
}
}
removed the appletLoader.txt, proper version in other post