2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
20 namespace Tizen.Multimedia.Vision
23 /// Represents a configuration of <see cref="BarcodeGenerator"/> instances.
25 /// <seealso cref="BarcodeGenerator"/>
26 /// <since_tizen> 4 </since_tizen>
27 public class BarcodeGenerationConfiguration : EngineConfiguration
29 private const string KeyTextAttr = "MV_BARCODE_GENERATE_ATTR_TEXT";
30 private const string KeyForegroundColorAttr = "MV_BARCODE_GENERATE_ATTR_COLOR_FRONT";
31 private const string KeyBackgroundColorAttr = "MV_BARCODE_GENERATE_ATTR_COLOR_BACK";
34 /// Initializes a new instance of the <see cref="BarcodeGenerationConfiguration"/> class.
36 /// <exception cref="NotSupportedException">The feature is not supported.</exception>
37 /// <since_tizen> 4 </since_tizen>
38 public BarcodeGenerationConfiguration() : base("barcode_generation")
43 /// Gets or sets the text visibility of the barcode to be generated.
45 /// <exception cref="ArgumentException"><paramref name="value"/> is not valid.</exception>
46 /// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
47 /// <since_tizen> 4 </since_tizen>
48 public Visibility TextVisibility
52 return (Visibility)GetInt(KeyTextAttr);
56 ValidationUtil.ValidateEnum(typeof(Visibility), value, nameof(value));
58 Set(KeyTextAttr, (int)value);
62 private Color _foregroundColor = Color.Black;
65 /// Gets or sets the foreground color of the barcode to be generated.
68 /// The alpha value of the color will be ignored.
70 /// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
71 /// <since_tizen> 4 </since_tizen>
72 public Color ForegroundColor
76 return _foregroundColor;
80 Set(KeyForegroundColorAttr, string.Format("{0:x2}{1:x2}{2:x2}", value.R, value.G, value.B));
81 _foregroundColor = value;
85 private Color _backgroundColor = Color.White;
88 /// Gets or sets the background color of the barcode to be generated.
91 /// The alpha value of the color will be ignored.
93 /// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
94 /// <since_tizen> 4 </since_tizen>
95 public Color BackgroundColor
99 return _backgroundColor;
103 Set(KeyBackgroundColorAttr, string.Format("{0:x2}{1:x2}{2:x2}", value.R, value.G, value.B));
104 _backgroundColor = value;