Draggable Annotation Boxes with Editable Text

I want to add a tool to the navigation bar that would provide the capability for an end user to add their own annotation(s) to a plot and allow them to control the font/size/style and text content and to drag them arbitrarily to any location on the plot… I can write this using Annotations and using tkfontchooser, but getting the text editing behavior right will take a little work. I have to imagine that someone has built something similar but cant seem to find it. Mpldatacursor has some shared capability, but doesnt allow end user text editing as far as I can tell. Any suggestions?