If the proxy wasn't adaptive in this way, the coupling between the abstraction and presentation layers would be too tight. In an HR application, for example, an employee's identity attribute might want to display a name, an employee ID, and a photograph. Moreover, it will indeed display all three items when there's enough space. If space is tight, the proxy might display itself as a button with the employee's name as the label. If pressed, the button will throw up a frame with the additional information.
Adaptability is the key.
In any event, all well-written Java applications should make no assumptions about the display environment. The same application that's runs on the 20-inch monitor on your desktop might also have to run on a Palm Pilot at some juncture. Unfortunately, most of Java's built-in widgets don't work in an adaptable way out of the box. Instead, you usually end up with minuscule text in on a huge gray button or a button that's too small for the label to print in its entirety. That's what I've done here.