advanced paint options

is it possible to use more paint options than just a brush inside Blender? Without having to switch to another 2D editor?
Such things like lines, rectangles, or (especially)the spray paint?..

I don´t think so…the only thing that comes to my mind is using textures as brush presets…

I have thought about it as well, but it’s not quite what I’d want.
Since there aren’t any extra in-Blender 2D tools that I know of, I could try making some with Python. At least the spray paint tool. Are there any tutorials on making tools&plugins&stuff via Python?