In order to open a modal dialog, you need to pass a parent window, and pass the necessary flags for the dialog to be modal of course.
Depending on where you are in the e
From a view or an editor (this part is easy):
this.getSite().getWorkbenchWindow().getShell()
From elsewhere, access a view or editor and same as above.
If you find yourself in a class where you don't have access to a view or editor, you probably don't want to be calling any UI code, but if you really want to shoot yourself in the foot:
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()