@Override
	public void onUpdatePath(@Nonnull PathNode<?> path) {
		if (path instanceof ClassPathNode classPath) {
			this.path = classPath;
			WorkspaceTreeNode root = new WorkspaceTreeNode(classPath);
			ClassInfo classInfo = classPath.getValue();
			for (InnerClassInfo innerClass : classInfo.getInnerClasses()) {
				if (innerClass.isExternalReference()) continue;
				InnerClassPathNode innerNode = classPath.child(innerClass);
				root.addAndSortChild(new WorkspaceTreeNode(innerNode));
			}
			for (FieldMember field : classInfo.getFields()) {
				ClassMemberPathNode memberNode = classPath.child(field);
				root.addAndSortChild(new WorkspaceTreeNode(memberNode));
			}
			for (MethodMember method : classInfo.getMethods()) {
				ClassMemberPathNode memberNode = classPath.child(method);
				root.addAndSortChild(new WorkspaceTreeNode(memberNode));
			}
			FxThreadUtil.run(() -> tree.setRoot(root));
		}
	}
@return Box containing tree display options.
recaf-ui/src/main/java/software/coley/recaf/ui/pane/editing/tabs/FieldsAndMethodsPane.java