Tony's Orange.class (Applet replacement) Documentation
public class Orange by Tony Swain

This is an "almost" verbatim drop in replacement for Applet.class
It differs in that a couple of the deprecated classes in java 12 have been replaced in order to retain previous functionality.
void halt()  // replaces   stop()
void expunge() // replaces destroy()
Sound getSound(URL url, String name)
Replaces: //AudioClip getAudioClip(URL url, String name)

et al :)

import java.awt.*;

// Orange.class. A java 12 compatible component based Applet replacement

public class Orange

public void epunge() // replaces destroy()

AccessibleContext getAccessibleContext()


ComponentContext getComponentContext()
Replaces getAppletContext()


String     getOrangeInfo()


Sound getSound
(URL url, String name)
Replaces: //AudioClip getAudioClip(URL url, String name)


URL getCodeBase()


URL getDocumentBase()
  Returns the directory of Orange.class's locale.

Image getImage(URL url)

Image getImage(URL url, String name)

Locale getLocale()

String getParameter(String name)

String[][] getParameterInfo()

void init()

boolean isActive()

boolean isValidateRoot()

void play(URL url)
void play(URL url, String name)

// Play the sound from the file stored at URL
NOTE: ATM only 8bit uLaw format
// I may removed this as it has it download and then play the sound.
// This is way to heavyweight and if the connection is too slow will fail.
use instead.

What it says ;)
void resize(Dimension d)

void resize(int width, int height)

This is done internally. You could however use it to switch the IO handler.
Not sure why one would want to but nonetheless the functionality is there :)

void setStub(ComponentStub stub)
// set the CoreFrame.class Component Reference.

void showStatus(String msg)
// 1 line string message at bottom of window.
//formerly the web browser's status text.

void start()

void halt()  // replaces Thread.stop