view test/sematest/testGUI.java @ 281:c3969dd625b2

GUIless test routine.
author kono
date Sat, 27 Sep 2008 22:55:13 +0900
parents a549bd4dadb8
children 4b773ba03556
line wrap: on
line source

package test.sematest;

import java.util.LinkedList;

import rep.Editor;
import rep.SelectButtonEvent;
import rep.Session;
import rep.SessionManagerEvent;
import rep.SessionManagerEventListener;
import rep.SessionManagerGUI;

/**
 * @author kono
 * Dummy GUI for test
 * 
 *    perform auto select operation
 */

public class testGUI implements SessionManagerGUI {
	public LinkedList<Session> slist;
	public LinkedList<Editor> elist;
	SessionManagerEventListener manager;
	int count = 0;

	public testGUI(SessionManagerEventListener manager) {
		this.manager = manager;
	}
	
	public void invokeLater(Runnable doRun) {
		doRun.run();
	}

	public void update(LinkedList<Session> slist, LinkedList<Editor> elist) {
		this.slist = slist;
		this.elist = elist;
		// fair and determistic select session for an empty editor
		if (slist.size()==0) return;
		Session s = slist.get(count++ % slist.size());
		for(Editor e :elist) {
			if (!e.hasSession()) {
				SessionManagerEvent event = new SelectButtonEvent(e, s, manager);
				System.out.println("Select session "+s.getSID()+" and editor "+e.getEID());
				manager.buttonPressed(event);
				s = slist.get(count++ % slist.size());
			}
		}
	}

}