How to declare properties that have string value

While I understand and agree with the reasoning of this, it also has a toll on creating re-usable script components in the sense that the UI/UX exposed to the user has lots of limitations.

For example in all the camera extensions, choosing the projection method is relegated to multiple checkboxes which is not really good from a user perspective and should be handled by a dropdown that return a string.

I think there is room to improve the presentation from the data itself. I would really love to be able to have a property that is a vector4 but is for example presented to the user as a color picker :wink:

Thoughts?