index
goals: no redundancy
Cut-and-paste is a quick way to experiment, but failing to refactor will waste time later.
enums
Bim: This file is where everything gets named. It's like a phone book.
Reader: I love reading phone books.
A short list of flags is fine, but a long list of symbols for other symbols could probably be better.
If they amount to naming functions, you're essentially writing the function name twice. Find another way. Perhaps a list of function pointers, base class inheritance, or a prototype. Figure out what goes with the uniform processing elsewhere in the system.
If you're making local symbols for library symbols, get good abbreviations out of it.
here, there, everywhere
Bim: This file is where plugins are defined. That file is where the constructor is called. They're saved and loaded my this other module.
Reader: Is that also where they're added to the menu?
Bim: Don't be silly.
Scheme to keep plugins isolated to a single file, added to the larger system with a simple #include.
If the system can fall through well, the include can be commented out to isolate problems by running a stripped-down build.
nedwaves.com 2017 [171108]