Phew.. That was a tough night of learning C++ after quite a many years.. I think I was able to do it: now the list of tool types and materials exist only in C++ side on Tooltable.cpp and Tooltable.h. The changes are here:
https://github.com/pekkaroi/FreeCAD/com ... c9713e7adb
1. I did not read any coding style or naming conventions which I'm sure exist for FreeCAD C++ so it definitely needs a review.
2. Something went wrong with my beloved Atom text editor at some point and I messed with most of the line endings of the files. I returned them to unix encoding, but now git does not see the diff correctly, it thinks the whole file has changed. On command line I can get a decent diff with "git diff --ignore-space-at-eol -b -w --ignore-blank-lines". Any hints to deal with that except to do a git --reset at some branch and copy-paste the changes again..
3. I did not test that all that well and now I am well past my bed time, so that needs to be done tomorrow.