Say I'm creating content into a text field. Instead of inserting text by typing into text field, how could select text from a drop down list to pre populate the text field?
I would suggest you create a content type called "Text Templates". Then add a reference to this content type in the content type that you are using.
In hook_node_submit you can get the value from the body fields of the Text Template node using the node-reference and then pre-populate in your current node.
If you want the body to be filled during the node edition then you will have to write an ajax call to fetch the body based on the drop-down value and fill it in the body.
Have a look at this module and see if it does what you need