![]() |
|
|
|
Buttons and states can be as similar or as varied as you want. That is, you can make any state, any button, or even a particular state of a specific button - look exactly the way you want. The great thing is: you don't have to make adjustments to every state of every button individually, unless you want to. Here's how this works.
Firstly, All buttons have a common set of attributes. Initially, in a newly-created project, these are the only attributes that determine the appearance of all new buttons, so initially, they will all look alike, and so will their states.
Secondly, Selected state (that is, any state you select in the grid) can have its own attributes to make that state differ from other states. The interesting thing is that changing an attribute of a state overrides only the group of attributes to which the change belongs, while other attributes remain "originated" or dictated by All buttons's attributes. Let's illustrate this with an example. Imagine you are trying to make the Mouseover state stand out. You may, for example, decide to indicate appropriate highlighting by changing the color of the button's text. You will do so by changing the Font of the Mouseover state. Assuming you had several buttons, all of them take on the specified text color in their Mouseover state, just as we'd expect. The trick is that "features" of the Mouseover state other than Font are still coming from what is specified for All buttons. So, for example, button Shape, Texture, and other attributes are still shared by all buttons (until you change one or all of them explicitly for that state). This gives you the ability to override just the aspects of state appearance that you want, but keep all other things common. Changes to non-overridden attributes will therefore be reflected in all states that do not override them. Finally, a previously overridden attribute can be returned to its "neutral" common mode by clearing it. With the desired state selected in the grid (e.g., Mouseover, selected by clicking or highlighting any cell displaying an image in that state), hit the Clear button and pick the desired attribute from the list. In our example above, we'd pick Font - if we wanted to return it to the normal All button's font. As far as the principle of operation is concerned, that's all there is to it. The only remaining thing to know is that this principle applies at two more levels briefly discussed below.
Thirdly, Button in all states can override any attribute(s) you desire. Conceptually, this works exactly the same way as for Selected state overriding selected attributes of All buttons - as described in the previous paragraph. However, whereas attributes applied to a Selected state overrode them for said state for all buttons of the project, attributes applied to Button in all states override these attributes for all states of the selected button. One way to think of this is: Selected state stylizes the columns, and Button in all states works on the rows. In line with the order in which the scopes are listed, Button in all states attribute customizations, if any, are applied after ("on top" of) those coming from Selected state.
Fourthly, Button in current state can override attributes the way you see fit. Again, this is similar to above. This last scope setting is the most "precise" in the sense that it affect a single button in a single state, so it gives you absolute control over button appearance. The downside to this power is that you may need to apply the same adjustment to more than one Button in current state "target", which can get tedious, so use this advanced mode sparingly.
To sum things up, there's a set of attributes common to All buttons. One or more of these attributes can (and normally will) be overridden for each Selected state (or at least some states). A particular Button in all states can override attributes that it otherwise "inherits" from either All buttons or the Selected state (if the latter overrode some of them). Finally, a specific Button in current state can override attributes.
All these overrides are optional, but if some of them exist they are applied in the order mentioned above. The order in which attributes were overridden (i.e., whether you override an attribute for a state first and for a button next - or vice versa) does not matter.
Attributes applied to a particular scope can be cleared using the Clear button in the Properties Panel. You may clear one whole group of related attributes at a time. Clearing follows the same exact principles as application of attributes described above.
This may all sound a little complicated, but it's really quite intuitive once you start adjusting your buttons' appearance.
Back to Basic Concepts... |