Adobe 65007312 Programming Guide - Page 187

Defining Metadata: A Walkthrough, Adding custom metadata, Define metadata fields

Page 187 highlights

10 Defining Metadata: A Walkthrough This chapter shows how a plug-in can define metadata fields that Lightroom can display along with standard metadata for photos, and which you can use as a private data model for plug-in processing. It also illustrates how the private data can be used to customize the Plug-in Manager. These concepts and techniques are introduced and explained in more detail in Chapter 3, "Creating Export and Publish Services." Adding custom metadata This simple example plug-in demonstrates how to define your own metadata fields to be associated with photos. Your fields can be displayed in the Lightroom Metadata panel, where users can set or modify their values. You can also define private data for your plug-in, which is not displayed to users. First, we will create the framework for the plug-in, which is similar to that for an export plug-in. 1. Create a new folder in your chosen directory called myMetadata.lrplugin. 2. In this folder, create three new files Info.lua MyMetadataDefinitionFile.lua MyMetadataTagset.lua 3. Edit the Info.lua file to add the following code: return { LrSdkVersion = 3.0, LrToolkitIdentifier = 'sample.metadata.mymetadatasample', LrPluginName = LOC "$$$/MyMetadataSample/PluginName=My Metadata Sample", LrMetadataProvider = 'MyMetadataDefinitionFile.lua', LrMetadataTagsetFactory = 'MyMetadataTagset.lua', } Define metadata fields Now we are going to create the custom metadata fields in the definition file. 4. Open the file MyMetadataDefinitionFile.lua and add the following code as the initial framework: return { metadataFieldsForPhotos = { }, schemaVersion = 1, } The schema-version value provides version control; it can be incremented to notify users of changes to the plug-in. 187

  • 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

187
10
Defining Metadata: A Walkthrough
This chapter shows how a plug-in can define metadata fields that Lightroom can display along with
standard metadata for photos, and which you can use as a private data model for plug-in processing. It
also illustrates how the private data can be used to customize the Plug-in Manager.
These concepts and techniques are introduced and explained in more detail in
Chapter 3, “Creating Export
and Publish Services
.”
Adding custom metadata
This simple example plug-in demonstrates how to define your own metadata fields to be associated with
photos. Your fields can be displayed in the Lightroom Metadata panel, where users can set or modify their
values. You can also define private data for your plug-in, which is not displayed to users.
First, we will create the framework for the plug-in, which is similar to that for an export plug-in.
1.
Create a new folder in your chosen directory called
myMetadata.lrplugin
.
2.
In this folder, create three new files
Info.lua
MyMetadataDefinitionFile.lua
MyMetadataTagset.lua
3.
Edit the
Info.lua
file to add the following code:
return {
LrSdkVersion = 3.0,
LrToolkitIdentifier = 'sample.metadata.mymetadatasample',
LrPluginName = LOC "$$$/MyMetadataSample/PluginName=My Metadata Sample",
LrMetadataProvider = 'MyMetadataDefinitionFile.lua',
LrMetadataTagsetFactory = 'MyMetadataTagset.lua',
}
Define metadata fields
Now we are going to create the custom metadata fields in the definition file.
4.
Open the file
MyMetadataDefinitionFile.lua
and add the following code as the initial framework:
return {
metadataFieldsForPhotos = {
},
schemaVersion = 1,
}
The schema-version value provides version control; it can be incremented to notify users of changes to
the plug-in.