How to change Windows Bar at top of Example Project?

Automatic dropdown navigation menu (only adds folders one level deep):

from javax.swing import SwingUtilities, JMenu, JMenuBar, JMenuItem
from functools import partial

window = system.nav.getWindow("somewindow")
root = SwingUtilities.getRoot(window)
menu = root.getJMenuBar()	

navmenu = JMenu("Navigation");

def handleSelect(event, target):
	system.nav.swapTo(target)

trees = {}
leaves = []

for window in system.gui.getWindowNames():
	winsplit = window.split('/')
	if winsplit[0] != 'Nav':
	
		menuItem = JMenuItem(winsplit[-1], actionPerformed=partial(handleSelect, target=window))
		if len(winsplit) > 1:
			if trees.get(winsplit[0]) is not None:
				trees[winsplit[0]].add(menuItem)
			else:
				submenu = JMenu(winsplit[0])
				submenu.add(menuItem)
				trees[winsplit[0]] = submenu
		else:
			leaves.append(JMenuItem(window, actionPerformed=partial(handleSelect, target=window)))
		
for tree in trees:
	navmenu.add(trees[tree])
	
for leaf in leaves:
	navmenu.add(leaf)

menu.add(navmenu)
4 Likes