Well, I did not stop use Name mapping. I just limited ist use to the identification of Dialogs.
The controls on the Dialogs are identified via their captions (if possible) or via their hierarchical structure (as mentioned above). There can be hundreds of controls on a Dialog, I really can't Control this via Name mapping.
If a Control has got a caption (static Control or table header), my library uses the caption Name to give me Access to the Control (e.g: myDlg.Frame().EditBox("Name")).
If no caption is present, the library lets me Access the Control via structure and sequence (e.g: myDlg.Frame().EditBox(0)).