It possible to add additional tabs to a component dialog by adding additional JCR Nodes (granite sling types) to the JCR branch of the dialog. If you want this to be done by code, I am not aware of any example that shows you how to do this. Its typically better to manually create component dialog UI elements using granite data types.