Adobe 65007312 Programming Guide - Page 136

Using custom tags, Custom tag example

Page 136 highlights

CHAPTER 6: Writing a Web-engine Plug-in Web SDK tagsets 136 end, myCloseTagFunction = function( ) --body of function end, } tags = { myTag = { startTag = "myOpenTagFunction()", endTag = "myCloseTagFunction()", } } If you import this tag into the xmpl namespace, your LuaPage would reference the tag like this: Helloworld At run time, when the LuaPage is evaluated, the tags are replaced with the Lua code, and the contents is simply written out: myOpenTagFunction() write( [[Helloworld]] ) myCloseTagFunction() This code is then evaluated to produce the final HTML for your web gallery page. Using custom tags To use a tagset that you have defined in your web-engine plug-in: 1. Include the tagset definition file or files in the root directory of your web engine. 2. Add a line to import the tagset in your manifest.lrweb file: importTags( "lr", "pathToTagsetFile" ) This includes all of the tags defined in the file under the namespace lr. The namespace definition prevents conflicts with tags of the same name defined in other tagset libraries. You can use any namespace for your own tags. 3. To load the built-in default tagset, substitute the special value "com.adobe.lightroom.default" for the path: importTags( "lr", "com.adobe.lightroom.default" ) By convention, the built-in tags are imported into the lr namespace. 4. To use the defined tags in your LuaPages, use the namespace prefix for both the opening and closing tag. For example: ... Custom tag example Here is an example that simply wraps some constant text around the text specified as the content of the tag: 1. Define the tag and its supporting function in the tagset file, myTags.lua: globals = { myFn = function( x )

  • 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
6: Writing a Web-engine Plug-in
Web SDK tagsets
136
end,
myCloseTagFunction = function( )
--body of function
end,
}
tags = {
myTag = {
startTag = "myOpenTagFunction()",
endTag = "myCloseTagFunction()",
}
}
If you import this tag into the
xmpl
namespace, your LuaPage would reference the tag like this:
<xmpl:myTag>Helloworld</xmpl:myTag>
At run time, when the LuaPage is evaluated, the tags are replaced with the Lua code, and the contents is
simply written out:
myOpenTagFunction() write( [[Helloworld]] ) myCloseTagFunction()
This code is then evaluated to produce the final HTML for your web gallery page.
Using custom tags
To use a tagset that you have defined in your web-engine plug-in:
1.
Include the tagset definition file or files in the root directory of your web engine.
2.
Add a line to import the tagset in your
manifest.lrweb
file:
importTags( "lr", "
pathToTagsetFile
" )
This includes all of the tags defined in the file under the namespace
lr
. The namespace definition
prevents conflicts with tags of the same name defined in other tagset libraries. You can use any
namespace for your own tags.
3.
To load the built-in default tagset, substitute the special value "com.adobe.lightroom.default" for the
path:
importTags( "lr", "com.adobe.lightroom.default" )
By convention, the built-in tags are imported into the
lr
namespace.
4.
To use the defined tags in your LuaPages, use the namespace prefix for both the opening and closing
tag. For example:
<lr:ThumbnailGrid>...</lr:ThumbnailGrid>
Custom tag example
Here is an example that simply wraps some constant text around the text specified as the content of the
tag:
1.
Define the tag and its supporting function in the tagset file,
myTags.lua
:
globals = {
myFn = function( x )