Categories would be nice, too, but tags are the first. I roughly imagine what’s to be done here already.
If we don’t allow space or other char in tags, we may free yourself from representing all tags of a plugin by set, list, array etc., and we can use ordinary string of form " tag1 tag2 ... tagN " (with spaces at the ends) instead, and search for a substring " sometag " to test if specified tag is in there. I think, a plugin would rarely have more than ten or so tags, so it’s not very slow compared to binary search in a string array. So:
• In VstPluginLib, add a field for tag string and code to read it from app settings.
• In CSelectPluginDlg is the rest. Later I’ll maybe try also to add a small multi-select list with all currently used tags to select from (as in GIMP). Its state would mirror (and be mirrored by) value of Tags or Filter field.
(Hum, I thought this list would have more than two lines.)
Soon I’ll try this and write here something new after!
Ah, and there is another question. I haven’t any intention to disrupt existing ordinary search in plugin names, therefore in filter string there must be some difference in tags and mere substring. What I’ve thought of is to prefix tags by + or some other easy-to-type thing. If it’s +, we could then also use - to exclude specified tags from plugins to find. I doubt there’s any reason one’s need to use + or - at the start of a tag, and there’s no apparent reason to search for +- or --starting substring of a plugin name either. So how’s it?