home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text;
-
- import java.util.Vector;
-
- public class LayoutQueue {
- Vector tasks = new Vector();
- Thread worker;
- static LayoutQueue defaultQueue;
-
- public static LayoutQueue getDefaultQueue() {
- if (defaultQueue == null) {
- defaultQueue = new LayoutQueue();
- }
-
- return defaultQueue;
- }
-
- public static void setDefaultQueue(LayoutQueue var0) {
- defaultQueue = var0;
- }
-
- public synchronized void addTask(Runnable var1) {
- if (this.worker == null) {
- this.worker = new LayoutThread(this);
- this.worker.start();
- }
-
- this.tasks.addElement(var1);
- this.notifyAll();
- }
-
- protected synchronized Runnable waitForWork() {
- while(this.tasks.size() == 0) {
- try {
- this.wait();
- } catch (InterruptedException var2) {
- return null;
- }
- }
-
- Runnable var1 = (Runnable)this.tasks.firstElement();
- this.tasks.removeElementAt(0);
- return var1;
- }
- }
-