public static void waitForTree(GTree gTree) {

		/*  // Debug timing of waiting for tree
			long start = System.nanoTime();
			doWaitForTree(gTree);
			long end = System.nanoTime();
			Msg.out(
				"waitForTree() - " + TimeUnit.MILLISECONDS.convert(end - start,
				TimeUnit.NANOSECONDS));
		*/
		doWaitForTree(gTree);

		// some client tree operations will launch tasks that wait for the tree and then call a 
		// Swing task to run at some point after that.  waitForSwing() is not good enough for these,
		// since the tree may be using a timer that has not yet expired.
		waitForExpiringSwingTimers();
	}
Returns a pretty-print string of all found windows that are showing, nesting by
parent-child relationship.

@return the result string
Ghidra/Framework/Docking/src/main/java/docking/test/AbstractDockingTest.java