mirror of
https://git.code.sf.net/p/zint/code
synced 2025-05-12 22:25:59 -04:00
GUI: add CLI equivalent dialog (#163); use spinboxes in Sequence dialog
and restrict sequence to max 10,000, add button icons; make Export dialog sizable and show every 100 results, add button icon; fix saving CHANNEL option, fix Export painting main window (Windows), fix guard descent not-resetting qzint: add getAsCLI(), warnLevel(), extra isStackable()/isComposite() etc Add ZBarcode_BarcodeName() manual: doc above, some fixes, tweaks
This commit is contained in:
parent
9d85c425f4
commit
739a64a6ff
34 changed files with 2264 additions and 1199 deletions
|
@ -30,12 +30,13 @@
|
|||
*/
|
||||
/* vim: set ts=4 sw=4 et : */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#ifdef _MSC_VER
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include "common.h"
|
||||
#include "eci.h"
|
||||
#include "gs1.h"
|
||||
|
@ -1308,6 +1309,181 @@ int ZBarcode_ValidID(int symbol_id) {
|
|||
return barcode_funcs[symbol_id] != NULL;
|
||||
}
|
||||
|
||||
/* Copy BARCODE_XXX name of `symbol_id` into `name` buffer, NUL-terminated.
|
||||
Returns 0 if valid, non-zero (1 or -1) if not valid */
|
||||
int ZBarcode_BarcodeName(int symbol_id, char name[32]) {
|
||||
struct item {
|
||||
const char *name;
|
||||
int define;
|
||||
int val;
|
||||
};
|
||||
static const struct item data[] = {
|
||||
{ "", -1, 0 },
|
||||
{ "BARCODE_CODE11", BARCODE_CODE11, 1 },
|
||||
{ "BARCODE_C25STANDARD", BARCODE_C25STANDARD, 2 },
|
||||
{ "BARCODE_C25INTER", BARCODE_C25INTER, 3 },
|
||||
{ "BARCODE_C25IATA", BARCODE_C25IATA, 4 },
|
||||
{ "", -1, 5 },
|
||||
{ "BARCODE_C25LOGIC", BARCODE_C25LOGIC, 6 },
|
||||
{ "BARCODE_C25IND", BARCODE_C25IND, 7 },
|
||||
{ "BARCODE_CODE39", BARCODE_CODE39, 8 },
|
||||
{ "BARCODE_EXCODE39", BARCODE_EXCODE39, 9 },
|
||||
{ "", -1, 10 },
|
||||
{ "", -1, 11 },
|
||||
{ "", -1, 12 },
|
||||
{ "BARCODE_EANX", BARCODE_EANX, 13 },
|
||||
{ "BARCODE_EANX_CHK", BARCODE_EANX_CHK, 14 },
|
||||
{ "", -1, 15 },
|
||||
{ "BARCODE_GS1_128", BARCODE_GS1_128, 16 },
|
||||
{ "", -1, 17 },
|
||||
{ "BARCODE_CODABAR", BARCODE_CODABAR, 18 },
|
||||
{ "", -1, 19 },
|
||||
{ "BARCODE_CODE128", BARCODE_CODE128, 20 },
|
||||
{ "BARCODE_DPLEIT", BARCODE_DPLEIT, 21 },
|
||||
{ "BARCODE_DPIDENT", BARCODE_DPIDENT, 22 },
|
||||
{ "BARCODE_CODE16K", BARCODE_CODE16K, 23 },
|
||||
{ "BARCODE_CODE49", BARCODE_CODE49, 24 },
|
||||
{ "BARCODE_CODE93", BARCODE_CODE93, 25 },
|
||||
{ "", -1, 26 },
|
||||
{ "", -1, 27 },
|
||||
{ "BARCODE_FLAT", BARCODE_FLAT, 28 },
|
||||
{ "BARCODE_DBAR_OMN", BARCODE_DBAR_OMN, 29 },
|
||||
{ "BARCODE_DBAR_LTD", BARCODE_DBAR_LTD, 30 },
|
||||
{ "BARCODE_DBAR_EXP", BARCODE_DBAR_EXP, 31 },
|
||||
{ "BARCODE_TELEPEN", BARCODE_TELEPEN, 32 },
|
||||
{ "", -1, 33 },
|
||||
{ "BARCODE_UPCA", BARCODE_UPCA, 34 },
|
||||
{ "BARCODE_UPCA_CHK", BARCODE_UPCA_CHK, 35 },
|
||||
{ "", -1, 36 },
|
||||
{ "BARCODE_UPCE", BARCODE_UPCE, 37 },
|
||||
{ "BARCODE_UPCE_CHK", BARCODE_UPCE_CHK, 38 },
|
||||
{ "", -1, 39 },
|
||||
{ "BARCODE_POSTNET", BARCODE_POSTNET, 40 },
|
||||
{ "", -1, 41 },
|
||||
{ "", -1, 42 },
|
||||
{ "", -1, 43 },
|
||||
{ "", -1, 44 },
|
||||
{ "", -1, 45 },
|
||||
{ "", -1, 46 },
|
||||
{ "BARCODE_MSI_PLESSEY", BARCODE_MSI_PLESSEY, 47 },
|
||||
{ "", -1, 48 },
|
||||
{ "BARCODE_FIM", BARCODE_FIM, 49 },
|
||||
{ "BARCODE_LOGMARS", BARCODE_LOGMARS, 50 },
|
||||
{ "BARCODE_PHARMA", BARCODE_PHARMA, 51 },
|
||||
{ "BARCODE_PZN", BARCODE_PZN, 52 },
|
||||
{ "BARCODE_PHARMA_TWO", BARCODE_PHARMA_TWO, 53 },
|
||||
{ "", -1, 54 },
|
||||
{ "BARCODE_PDF417", BARCODE_PDF417, 55 },
|
||||
{ "BARCODE_PDF417COMP", BARCODE_PDF417COMP, 56 },
|
||||
{ "BARCODE_MAXICODE", BARCODE_MAXICODE, 57 },
|
||||
{ "BARCODE_QRCODE", BARCODE_QRCODE, 58 },
|
||||
{ "", -1, 59 },
|
||||
{ "BARCODE_CODE128B", BARCODE_CODE128B, 60 },
|
||||
{ "", -1, 61 },
|
||||
{ "", -1, 62 },
|
||||
{ "BARCODE_AUSPOST", BARCODE_AUSPOST, 63 },
|
||||
{ "", -1, 64 },
|
||||
{ "", -1, 65 },
|
||||
{ "BARCODE_AUSREPLY", BARCODE_AUSREPLY, 66 },
|
||||
{ "BARCODE_AUSROUTE", BARCODE_AUSROUTE, 67 },
|
||||
{ "BARCODE_AUSREDIRECT", BARCODE_AUSREDIRECT, 68 },
|
||||
{ "BARCODE_ISBNX", BARCODE_ISBNX, 69 },
|
||||
{ "BARCODE_RM4SCC", BARCODE_RM4SCC, 70 },
|
||||
{ "BARCODE_DATAMATRIX", BARCODE_DATAMATRIX, 71 },
|
||||
{ "BARCODE_EAN14", BARCODE_EAN14, 72 },
|
||||
{ "BARCODE_VIN", BARCODE_VIN, 73 },
|
||||
{ "BARCODE_CODABLOCKF", BARCODE_CODABLOCKF, 74 },
|
||||
{ "BARCODE_NVE18", BARCODE_NVE18, 75 },
|
||||
{ "BARCODE_JAPANPOST", BARCODE_JAPANPOST, 76 },
|
||||
{ "BARCODE_KOREAPOST", BARCODE_KOREAPOST, 77 },
|
||||
{ "", -1, 78 },
|
||||
{ "BARCODE_DBAR_STK", BARCODE_DBAR_STK, 79 },
|
||||
{ "BARCODE_DBAR_OMNSTK", BARCODE_DBAR_OMNSTK, 80 },
|
||||
{ "BARCODE_DBAR_EXPSTK", BARCODE_DBAR_EXPSTK, 81 },
|
||||
{ "BARCODE_PLANET", BARCODE_PLANET, 82 },
|
||||
{ "", -1, 83 },
|
||||
{ "BARCODE_MICROPDF417", BARCODE_MICROPDF417, 84 },
|
||||
{ "BARCODE_USPS_IMAIL", BARCODE_USPS_IMAIL, 85 },
|
||||
{ "BARCODE_PLESSEY", BARCODE_PLESSEY, 86 },
|
||||
{ "BARCODE_TELEPEN_NUM", BARCODE_TELEPEN_NUM, 87 },
|
||||
{ "", -1, 88 },
|
||||
{ "BARCODE_ITF14", BARCODE_ITF14, 89 },
|
||||
{ "BARCODE_KIX", BARCODE_KIX, 90 },
|
||||
{ "", -1, 91 },
|
||||
{ "BARCODE_AZTEC", BARCODE_AZTEC, 92 },
|
||||
{ "BARCODE_DAFT", BARCODE_DAFT, 93 },
|
||||
{ "", -1, 94 },
|
||||
{ "", -1, 95 },
|
||||
{ "BARCODE_DPD", BARCODE_DPD, 96 },
|
||||
{ "BARCODE_MICROQR", BARCODE_MICROQR, 97 },
|
||||
{ "BARCODE_HIBC_128", BARCODE_HIBC_128, 98 },
|
||||
{ "BARCODE_HIBC_39", BARCODE_HIBC_39, 99 },
|
||||
{ "", -1, 100 },
|
||||
{ "", -1, 101 },
|
||||
{ "BARCODE_HIBC_DM", BARCODE_HIBC_DM, 102 },
|
||||
{ "", -1, 103 },
|
||||
{ "BARCODE_HIBC_QR", BARCODE_HIBC_QR, 104 },
|
||||
{ "", -1, 105 },
|
||||
{ "BARCODE_HIBC_PDF", BARCODE_HIBC_PDF, 106 },
|
||||
{ "", -1, 107 },
|
||||
{ "BARCODE_HIBC_MICPDF", BARCODE_HIBC_MICPDF, 108 },
|
||||
{ "", -1, 109 },
|
||||
{ "BARCODE_HIBC_BLOCKF", BARCODE_HIBC_BLOCKF, 110 },
|
||||
{ "", -1, 111 },
|
||||
{ "BARCODE_HIBC_AZTEC", BARCODE_HIBC_AZTEC, 112 },
|
||||
{ "", -1, 113 },
|
||||
{ "", -1, 114 },
|
||||
{ "BARCODE_DOTCODE", BARCODE_DOTCODE, 115 },
|
||||
{ "BARCODE_HANXIN", BARCODE_HANXIN, 116 },
|
||||
{ "", -1, 117 },
|
||||
{ "", -1, 118 },
|
||||
{ "", -1, 119 },
|
||||
{ "", -1, 120 },
|
||||
{ "BARCODE_MAILMARK", BARCODE_MAILMARK, 121 },
|
||||
{ "", -1, 122 },
|
||||
{ "", -1, 123 },
|
||||
{ "", -1, 124 },
|
||||
{ "", -1, 125 },
|
||||
{ "", -1, 126 },
|
||||
{ "", -1, 127 },
|
||||
{ "BARCODE_AZRUNE", BARCODE_AZRUNE, 128 },
|
||||
{ "BARCODE_CODE32", BARCODE_CODE32, 129 },
|
||||
{ "BARCODE_EANX_CC", BARCODE_EANX_CC, 130 },
|
||||
{ "BARCODE_GS1_128_CC", BARCODE_GS1_128_CC, 131 },
|
||||
{ "BARCODE_DBAR_OMN_CC", BARCODE_DBAR_OMN_CC, 132 },
|
||||
{ "BARCODE_DBAR_LTD_CC", BARCODE_DBAR_LTD_CC, 133 },
|
||||
{ "BARCODE_DBAR_EXP_CC", BARCODE_DBAR_EXP_CC, 134 },
|
||||
{ "BARCODE_UPCA_CC", BARCODE_UPCA_CC, 135 },
|
||||
{ "BARCODE_UPCE_CC", BARCODE_UPCE_CC, 136 },
|
||||
{ "BARCODE_DBAR_STK_CC", BARCODE_DBAR_STK_CC, 137 },
|
||||
{ "BARCODE_DBAR_OMNSTK_CC", BARCODE_DBAR_OMNSTK_CC, 138 },
|
||||
{ "BARCODE_DBAR_EXPSTK_CC", BARCODE_DBAR_EXPSTK_CC, 139 },
|
||||
{ "BARCODE_CHANNEL", BARCODE_CHANNEL, 140 },
|
||||
{ "BARCODE_CODEONE", BARCODE_CODEONE, 141 },
|
||||
{ "BARCODE_GRIDMATRIX", BARCODE_GRIDMATRIX, 142 },
|
||||
{ "BARCODE_UPNQR", BARCODE_UPNQR, 143 },
|
||||
{ "BARCODE_ULTRA", BARCODE_ULTRA, 144 },
|
||||
{ "BARCODE_RMQR", BARCODE_RMQR, 145 },
|
||||
};
|
||||
|
||||
name[0] = '\0';
|
||||
|
||||
if (!ZBarcode_ValidID(symbol_id)) {
|
||||
return 1;
|
||||
}
|
||||
assert(symbol_id >= 0 && symbol_id < ARRAY_SIZE(data) && data[symbol_id].name[0]);
|
||||
|
||||
/* Self-check, shouldn't happen */
|
||||
if (data[symbol_id].val != symbol_id || (data[symbol_id].define != -1 && data[symbol_id].define != symbol_id)) {
|
||||
assert(0); /* Not reached */
|
||||
return -1;
|
||||
}
|
||||
|
||||
strcpy(name, data[symbol_id].name);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Return the capability flags for symbology `symbol_id` that match `cap_flag` */
|
||||
unsigned int ZBarcode_Cap(int symbol_id, unsigned int cap_flag) {
|
||||
unsigned int result = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue