Hi imparare, the confusion is understandable, but I am not sure how to explain this.
Check out any 'old way' Texture Paint tutorial (2.79). You'd create a texture in the UV/Image Editor. Add an Image Texture Node in the Node Editor, with the same name as texture you created. Made sure that that Image Texture Node was selected and the Material assigned to the Object you wanted to paint. In the 3D View go into Texture Paint mode and you could start painting, both in the 3D View and in the UV/Image Editor.
Now (in 2.80), you can go into Texture Paint workspace and create your texture where you said, and everything that you had to do by hand is now done automatically. Even a Material is created if not already there...
Hope this makes it a bit less confusing.
Thank you
I believe I have been over complicating things.
Is it correct that a mesh has a material which in turn has a texture. If I generally use the principled shader then in order to texture paint I need to have 'something' plugged into the base colour. I appreciate I can have metalic, roughness etc. but I am thinking about colour and image.
iimparare Well, basically you are right; a mesh needs a material in order to be rendered. A material can have a texture plugged into it, but it is not necessary.
So your material can be a plain colour, or a texture, either an Image Texture or a Procedural Texture. And you do need an Image texture in order to texture paint, but it doesn't need to be plugged in, it just needs to be selected, but you can plug it in if you want to. You can also paint a texture for Metallic or Roughness or Specular or even a Bump Map, but they need to be grayscale images.
I hope I haven't confused you more now;)
Just play around with it a bit and don't forget to check out the 'old way' of texture painting, it will help you to understand better what is going on. I highly recommend the 'Introduction to Texture Painting' here on CGCookie.