public void busRemoved (Bus bus)
	throws IOException
	{
	    if (model == null)
		return;

	    synchronized (busses) {
		Bus		newBusses [] = new Bus [busses.length - 1];
		HubNode		newHubs [] = new HubNode [newBusses.length];
		int		index, nodeIndex = -1;
		HubNode		node = null;

		// which one went?
		for (int i = index = 0; i < busses.length; i++) {
		    if (busses [i] == bus) {
			nodeIndex = i;
			node = hubs [i];
		    } else {
			newBusses [index] = busses [i];
			newHubs [index] = hubs [i];
			index++;
		    }
		}

System.err.println ("rm bus: " + node);

		busses = newBusses;
		hubs = newHubs;
		if (model != null)
		    model.nodesWereRemoved (this,
			new int [] { nodeIndex },
			new TreeNode [] { node });
	    }
	}