private void calcWindow()
	{
		// get current dims
		width = getWidth();
		height = getHeight();
		
		// do some checks to see if we need a new draw buffer
		if(buf == null
			|| width < buf.getWidth() - 40
			|| width > buf.getWidth()
			|| height < buf.getHeight() - 40
			|| height > buf.getHeight()
		){
			buf = new BufferedImage(width+20, height+20, BufferedImage.TYPE_INT_ARGB);
		}
		
		// calculate list boxes
		for(int x = 0; x <= 6; x++)
			lbx[x] = (x*width*2+1)/(6*2);
		
		lby = (16*(TrackerFont.FNT_XAIMUS.getHeight()+1)+1);
		
		for(int i = 0; i < 6; i++)
		{
			if(lbsel[i] < lboffs[i])
				lboffs[i] = lbsel[i];
			if(lbsel[i] > lboffs[i]+15)
				lboffs[i] = lbsel[i]-15;
		}
	}