Adobe 0046100128056 Scripting Guide - Page 154

Creating Buttons

Page 154 highlights

CHAPTER 11: Creating Dynamic Documents Creating Buttons 154 Creating Buttons Buttons are often used for navigation in dynamic documents. Buttons contain three states, known as "Normal," "Rollover," and "Click," which, in turn, can contain page items such as rectangles, ovals, text frames, or images. The button can display only one state at a time; the other states are displayed when triggered by mouse actions. Behaviors control what the button does when you perform a specific mouse action. Behaviors correspond to the Actions shown in the Buttons panel in InDesign's user interface. Buttons can contain multiple behaviors. The following script fragment shows how to create a simple button that displays the next page in an exported PDF or SWF (for the complete script, refer to SimpleButton). This button makes use of only the Normal state. //Given a page "myPage" and a document containing the color "Red"... //Make a button by converting a page item. var myRightArrow = myPage.polygons.add({fillColor:myDocument.colors.item("Red"), name:"GoToNextPageButton"}); myRightArrow.paths.item(0).entirePath = [[72, 72],[144,108],[72, 144]]; var myButton = myPage.buttons.add({geometricBounds:[72, 72, 144, 144]}); myButton.states.item(0).addItemsToState(myRightArrow); var myGoToNextPageBehavior = myButton.gotoNextPageBehaviors.add({behaviorEvent:BehaviorEvents.mouseUp}); The following script fragment shows how to create a somewhat more complicated button, containing page items that change the appearance of each of the three button states. For the complete script, refer to ButtonStates.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209

C
HAPTER
11: Creating Dynamic Documents
Creating Buttons
154
Creating Buttons
Buttons are often used for navigation in dynamic documents. Buttons contain three states, known as
“Normal,” “Rollover,” and “Click,” which, in turn, can contain page items such as rectangles, ovals, text
frames, or images. The button can display only one state at a time; the other states are displayed when
triggered by mouse actions.
Behaviors control what the button does when you perform a specific mouse action. Behaviors correspond
to the Actions shown in the Buttons panel in InDesign’s user interface. Buttons can contain multiple
behaviors.
The following script fragment shows how to create a simple button that displays the next page in an
exported PDF or SWF (for the complete script, refer to SimpleButton). This button makes use of only the
Normal state.
//Given a page "myPage" and a document containing the color "Red"...
//Make a button by converting a page item.
var myRightArrow = myPage.polygons.add({fillColor:myDocument.colors.item("Red"),
name:"GoToNextPageButton"});
myRightArrow.paths.item(0).entirePath = [[72, 72],[144,108],[72, 144]];
var myButton = myPage.buttons.add({geometricBounds:[72, 72, 144, 144]});
myButton.states.item(0).addItemsToState(myRightArrow);
var myGoToNextPageBehavior =
myButton.gotoNextPageBehaviors.add({behaviorEvent:BehaviorEvents.mouseUp});
The following script fragment shows how to create a somewhat more complicated button, containing
page items that change the appearance of each of the three button states. For the complete script, refer to
ButtonStates.