@Override
		public boolean acceptsRow(ResourceFile script) {
			ScriptInfo info = infoManager.getExistingScriptInfo(script);
			String[] category = getSelectedCategoryPath();

			if (category == null) { // root node
				return matchesRootNode(info);
			}

			// matches the category?
			boolean isMatch = info.isCategory(category);
			return isMatch;
		}
Table filter that uses the state of the tree to further filter
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/script/GhidraScriptComponentProvider.java