Adobe 65007312 Programming Guide - Page 182

Run the plug-in, to show the predefined modal dialog created

Page 182 highlights

CHAPTER 9: Getting Started: A Tutorial Example Adding a data observer 182 button action resets the observed property value to the value entered by the user in the edit box. It also resets the color of the static text to black, so that we will be able to tell whether the observer function fired. Add this code: -- add push button f:push_button { title = "Update", action = function() -- when clicked, reset values in other controls showValue_st.text_color = LrColor( 0, 0, 0 ) -- make text black props.myObservedString = updateField.value -- reset data value -- from current entered value end }, 10. Use LrDialogs.presentModalDialog() to display the new custom dialog, and call it when the script is run: local result = LrDialogs.presentModalDialog { title = "Custom Dialog", contents = c, -- the view hierarchy we defined } MyHWLibraryItem.showCustomDialogWithObserver() 11. Save your changes to the file. Run the plug-in Use these steps to run the plug-in and see the observer and the button in action: 1. Reload the plug-in, as described in step 1 on page 172. 2. Choose Library > Plug-in Extras > Hello World Dialog to show the predefined modal dialog created by the ExportMenuItem.lua script. 3. Click OK to dismiss the dialog. 4. Choose Library > Plug-in Extras > Hello World Custom Dialog to show the custom modal dialog created by the LibraryMenuItem.lua script: 5. Enter some text into the "New value" field. 6. Click Update. Notice the "Bound value" text changes to whatever text you entered, and the text turns red.

  • 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

C
HAPTER
9: Getting Started: A Tutorial Example
Adding a data observer
182
button action resets the observed property value to the value entered by the user in the edit box. It
also resets the color of the static text to black, so that we will be able to tell whether the observer
function fired.
Add this code:
-- add push button
f:push_button {
title = "Update",
action = function()
-- when clicked, reset values in other controls
showValue_st.text_color = LrColor( 0, 0, 0 )
-- make text black
props.myObservedString = updateField.value
-- reset data value
-
- from current entered value
end
},
10. Use
LrDialogs.presentModalDialog()
to display the new custom dialog, and call it when the script
is run:
local result = LrDialogs.presentModalDialog {
title = "Custom Dialog",
contents = c, -- the view hierarchy we defined
}
MyHWLibraryItem.showCustomDialogWithObserver()
11.
Save your changes to the file.
Run the plug-in
Use these steps to run the plug-in and see the observer and the button in action:
1.
Reload the plug-in, as described in step
1
on page
172
.
2.
Choose
Library > Plug-in Extras > Hello World Dialog
to show the predefined modal dialog created
by the
ExportMenuItem.lua
script.
3.
Click
OK
to dismiss the dialog.
4.
Choose
Library > Plug-in Extras > Hello World Custom Dialog
to show the custom modal dialog
created by the
LibraryMenuItem.lua
script:
5.
Enter some text into the “New value” field.
6.
Click
Update
. Notice the “Bound value” text changes to whatever text you entered, and the text turns
red.