-
Notifications
You must be signed in to change notification settings - Fork 80
Expand file tree
/
Copy pathBarcodeGenerator.xml
More file actions
248 lines (248 loc) · 15.7 KB
/
Copy pathBarcodeGenerator.xml
File metadata and controls
248 lines (248 loc) · 15.7 KB
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
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
<?xml version="1.0" encoding="utf-8" ?>
<widget id="com.mendix.widget.web.barcodegenerator.BarcodeGenerator" pluginWidget="true" needsEntityContext="true" offlineCapable="true" xmlns="http://www.mendix.com/widget/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mendix.com/widget/1.0/ ../node_modules/mendix/custom_widget.xsd">
<name>Barcode Generator</name>
<description>Generate barcodes and QR codes from a string input</description>
<studioProCategory>Display</studioProCategory>
<studioCategory>Display</studioCategory>
<!-- <helpUrl>https://docs.mendix.com/appstore/widgets/barcode-generator</helpUrl> -->
<properties>
<propertyGroup caption="General">
<propertyGroup caption="Data source">
<property key="codeValue" type="expression" required="true">
<caption>Dynamic value</caption>
<description>String to encode as a barcode or QR code</description>
<returnType type="String" />
</property>
<property key="codeFormat" type="enumeration" required="true" defaultValue="CODE128">
<caption>Barcode Format</caption>
<description>Choose between QR or other barcode types</description>
<enumerationValues>
<enumerationValue key="CODE128">Barcode</enumerationValue>
<enumerationValue key="QRCode">QR Code</enumerationValue>
<enumerationValue key="DataMatrix">Data Matrix</enumerationValue>
<enumerationValue key="Custom">Custom</enumerationValue>
</enumerationValues>
</property>
<property key="emptyMessage" type="textTemplate" required="false">
<caption>Empty message</caption>
<description />
<translations>
<translation lang="en_US">No barcode value provided</translation>
<translation lang="nl_NL">Geen barcodewaarde opgegeven</translation>
</translations>
</property>
<property key="allowDownload" type="boolean" defaultValue="false">
<caption>Allow download</caption>
<description>Adds a download button</description>
</property>
<property key="downloadButtonCaption" type="textTemplate" required="false">
<caption>Button text</caption>
<description />
<translations>
<translation lang="en_US">Download</translation>
<translation lang="nl_NL">Downloaden</translation>
</translations>
</property>
<property key="downloadButtonAriaLabel" type="textTemplate" required="false">
<caption>Button aria-label</caption>
<description />
<translations>
<translation lang="en_US">Download code as file</translation>
<translation lang="nl_NL">Sla code op als bestand</translation>
</translations>
</property>
<property key="downloadFileName" type="textTemplate" required="false">
<caption>File name</caption>
<description>Custom filename for the downloaded file (without extension). If empty, generates automatically based on format and value.</description>
</property>
<property key="buttonPosition" type="enumeration" required="true" defaultValue="bottom">
<caption>Button position</caption>
<description>Position of the download button relative to the barcode</description>
<enumerationValues>
<enumerationValue key="top">Top</enumerationValue>
<enumerationValue key="bottom">Bottom</enumerationValue>
</enumerationValues>
</property>
</propertyGroup>
</propertyGroup>
<propertyGroup caption="Advanced">
<propertyGroup caption="Advanced Barcode Settings">
<property key="customCodeFormat" type="enumeration" required="true" defaultValue="CODE128">
<caption>Custom Format</caption>
<description>Choose between barcode types format</description>
<enumerationValues>
<enumerationValue key="CODE128">CODE128</enumerationValue>
<enumerationValue key="EAN13">EAN-13</enumerationValue>
<enumerationValue key="EAN8">EAN-8</enumerationValue>
<enumerationValue key="UPC">UPC</enumerationValue>
<enumerationValue key="CODE39">CODE39</enumerationValue>
<enumerationValue key="ITF14">ITF-14</enumerationValue>
<enumerationValue key="MSI">MSI</enumerationValue>
<enumerationValue key="pharmacode">Pharmacode</enumerationValue>
<enumerationValue key="codabar">Codabar</enumerationValue>
<enumerationValue key="CODE93">CODE93</enumerationValue>
</enumerationValues>
</property>
<property key="enableEan128" type="boolean" defaultValue="false">
<caption>EAN-128</caption>
<description>Enable encoding CODE128 as GS1-128/EAN-128</description>
</property>
<property key="enableFlat" type="boolean" defaultValue="false">
<caption>Flat</caption>
<description>Enable flat barcode, skip guard bars. Note: Doesn't work with EAN addons.</description>
</property>
<property key="lastChar" type="string" required="false">
<caption>Last character</caption>
<description>Character after the barcode. Note: Doesn't work when 'Flat' is enabled or with EAN addons.</description>
</property>
<property key="enableMod43" type="boolean" required="true" defaultValue="false">
<caption>Mod43</caption>
<description>For code 39 if used with modulo 43 check digit</description>
</property>
</propertyGroup>
<propertyGroup caption="EAN Addons">
<property key="addonFormat" type="enumeration" required="true" defaultValue="None">
<caption>Addon format</caption>
<description>Choose between EAN-5 or EAN-2 addon format</description>
<enumerationValues>
<enumerationValue key="None">None</enumerationValue>
<enumerationValue key="EAN5">EAN-5</enumerationValue>
<enumerationValue key="EAN2">EAN-2</enumerationValue>
</enumerationValues>
</property>
<property key="addonValue" type="expression" required="true">
<caption>Addon value</caption>
<description>Value for the addon barcode (5 digits for EAN-5, 2 digits for EAN-2)</description>
<returnType type="String" />
</property>
<property key="addonSpacing" type="integer" required="true" defaultValue="20">
<caption>Addon spacing</caption>
<description>Space between main barcode and addon (in pixels)</description>
</property>
</propertyGroup>
<propertyGroup caption="Advanced QR Code Settings">
<property key="qrLevel" type="enumeration" required="true" defaultValue="L">
<caption>Level</caption>
<description>The Error Correction Level to use</description>
<enumerationValues>
<enumerationValue key="L">L</enumerationValue>
<enumerationValue key="M">M</enumerationValue>
<enumerationValue key="Q">Q</enumerationValue>
<enumerationValue key="H">H</enumerationValue>
</enumerationValues>
</property>
<property key="qrSize" type="integer" required="true" defaultValue="128">
<caption>QR Size</caption>
<description>The size of the QR box. Note: In preview, the max height is 200px. The QR code will render at full size in your application.</description>
</property>
</propertyGroup>
<propertyGroup caption="Advanced Data Matrix Settings">
<property key="dmGs1Mode" type="boolean" defaultValue="false">
<caption>GS1 Data Matrix</caption>
<description>Encode as GS1 Data Matrix (FNC1 + Application Identifiers), e.g. (01)09501101020917(17)261231(10)ABC123. Used for pharma serialization.</description>
</property>
<property key="dmShape" type="enumeration" required="true" defaultValue="square">
<caption>Symbol shape</caption>
<description>Choose square or rectangular Data Matrix symbol shape</description>
<enumerationValues>
<enumerationValue key="square">Square</enumerationValue>
<enumerationValue key="rectangle">Rectangle</enumerationValue>
</enumerationValues>
</property>
<property key="dmSize" type="integer" required="true" defaultValue="128">
<caption>Data Matrix size</caption>
<description>The size of the Data Matrix symbol in pixels. Note: In preview, the max height is 200px. The symbol will render at full size in your application.</description>
</property>
</propertyGroup>
<propertyGroup caption="Development">
<property key="logLevel" type="enumeration" required="true" defaultValue="None">
<caption>Log Level</caption>
<description>Choose the log level for in the case of failure for generating the barcode. Info will display generic error message on the UI and Debug will gives detailed information on the developer console.</description>
<enumerationValues>
<enumerationValue key="None">None</enumerationValue>
<enumerationValue key="Info">Info</enumerationValue>
<enumerationValue key="Debug">Debug</enumerationValue>
</enumerationValues>
</property>
</propertyGroup>
</propertyGroup>
<propertyGroup caption="Display">
<propertyGroup caption="Display">
<property key="displayValue" type="boolean" defaultValue="false">
<caption>Display value</caption>
<description>Display the value below the code</description>
</property>
<property key="showAsCard" type="boolean" defaultValue="false">
<caption>Show as card</caption>
<description>Display the widget with a border, background and padding</description>
</property>
<property key="codeWidth" type="integer" required="true" defaultValue="2">
<caption>Bar width</caption>
<description>Width of a single bar</description>
</property>
<property key="codeHeight" type="integer" required="true" defaultValue="200">
<caption>Code height</caption>
<description>Height of the barcode. Note: In preview, the max height is 200px. The barcode will render at full height in your application.</description>
</property>
<property key="codeMargin" type="integer" required="true" defaultValue="2">
<caption>Margin size</caption>
<description>In pixels</description>
</property>
<property key="qrMargin" type="integer" required="true" defaultValue="2">
<caption>Margin size</caption>
<description>Number of module units (QR grid cells) to use for margin. Increasing compresses the QR pattern within the fixed size. Note: not visible in preview.</description>
</property>
<property key="qrTitle" type="textTemplate" required="true">
<caption>Title</caption>
<description>Used for accessibility</description>
<translations>
<translation lang="en_US">QR Code</translation>
<translation lang="nl_NL">QR-Code</translation>
</translations>
</property>
<property key="showTitle" type="boolean" defaultValue="false">
<caption>Show title</caption>
<description>Display title on top of QR Code</description>
</property>
<property key="qrOverlay" type="boolean" required="true" defaultValue="false">
<caption>Overlay image</caption>
<description>Include an image overlay on the QR code</description>
</property>
</propertyGroup>
<propertyGroup caption="QR Overlay Settings">
<property key="qrOverlaySrc" type="image" required="true">
<caption>Image source</caption>
<description>URL or path to the image to display on the QR code</description>
</property>
<property key="qrOverlayCenter" type="boolean" required="true" defaultValue="true">
<caption>Center image</caption>
<description>Center the image in the QR code</description>
</property>
<property key="qrOverlayX" type="integer" required="true" defaultValue="0">
<caption>Image X position</caption>
<description>Horizontal position of the image</description>
</property>
<property key="qrOverlayY" type="integer" required="true" defaultValue="0">
<caption>Image Y position</caption>
<description>Vertical position of the image</description>
</property>
<property key="qrOverlayHeight" type="integer" required="true" defaultValue="24">
<caption>Image height</caption>
<description>Height of the image in pixels</description>
</property>
<property key="qrOverlayWidth" type="integer" required="true" defaultValue="24">
<caption>Image width</caption>
<description>Width of the image in pixels</description>
</property>
<property key="qrOverlayOpacity" type="decimal" required="true" defaultValue="1">
<caption>Image opacity</caption>
<description>Opacity of the image (0.0 to 1.0)</description>
</property>
<property key="qrOverlayExcavate" type="boolean" required="true" defaultValue="true">
<caption>Excavate background</caption>
<description>Remove QR code dots behind the image</description>
</property>
</propertyGroup>
</propertyGroup>
</properties>
</widget>