Re: [GD-General] Vector GUIs
Brought to you by:
vexxed72
From: Neil S. <ne...@r0...> - 2003-04-08 01:04:44
|
> In NextStep/InterfaceBuilder terminology, they calls this "springs > and bars". Each edge can be bound to a side of the screen with a > stiff bar or a dynamic spring, and this allows you to choose whether > something should remain centered, flush left, etc. and whether it > should rescale or stay a fixed size. This kind of approach really become useful when you allow layout rules such as this to be expressed hierarchically. For example, at the top level of your interface, you might have a basic "grid" layout, where you specify how many rows and columns you want, and how big a percentage of the screen width/height each one uses, possibly with additional constraints to deal with abnormally small (or large) areas. Then, within each of these grid elements, you could specify another layout scheme, such as the "springs and bars" method already suggested. Of course, not all elements of a grid need to have the same sub-layout, and there are lots of layout schemes you can use (Java has something like this, I think). By combining these schemes in creative ways, it is quite easy to build fairly flexible layouts which will deal with a wide range of screen/content sizes. You will probably still want to perform a certain amount of scaling of less-vector-oriented components (such as bitmap tiles) to make everything fit elegantly, but you can restrict this scaling to 'nice' scale factors like 2X, 3X, etc. You will probably still need to use a more arbitrary scale for things like background images or videos, but it's not too bad if they're all you need to worry about. - Neil. |