srecord noeq JG22ProjectSelector(G22Utils g22utils) is Swingable { transient JLabel lblDB; cachedVisualize { lblDB = toolTip("Currently selected project (" + f2s(concepts.conceptsDir()) + ")", /*boldLabel*/(jSimpleLabel(conceptsDirName(concepts)))); onClick(lblDB, evt -> new PopupMenuMaker(evt, menu -> { for (File otherDB : listMinus(g22utils().masterStuff().openConceptDirs(), concepts.conceptsDir())) addMenuItem(menu, fileName(otherDB)+ " [Open]", rThread { masterStuff().openDatabase(otherDB) }); addMenuItem(menu, "Manage or open projects...", rThread { showUIURL("Projects")}); }).run()); ret lblDB; } }