The Design Dialog and the Component Edit dialog is both are of the type cq:Dialog, so they should be interchangeable when you want to go from storing the properties in the design (share for all instances of the component) to store the properties in each instance of the component.
When you read from the current component, you use the properties map. If it is in a JSP file it would be like properties.get("NAMEOFPROPERTY", "DEFAULTVALUE");
When you read if from within the tag java code, you can then choose how to pickup the current component or property. If you can track down the node that you are working with, you can use something like node.getProperty("NAMEOFPROPERTY").getString();
Edit: I forgot that there is a named property that you can pick up from within the tag.
final ValueMap properties = (ValueMap) pageContext.getAttribute("properties");
/Ove