Scribus
Open source desktop publishing at your fingertips
barcodegenerator.h
1 /*
2 For general Scribus (>=1.3.2) copyright and licensing information please refer
3 to the COPYING file provided with the program. Following this notice may exist
4 a copyright and/or license notice that predates the release of Scribus 1.3.2
5 for which a new license (GPL+exception) is in place.
6 */
7 
8 #ifndef BARCODEGENERATOR_H
9 #define BARCODEGENERATOR_H
10 
11 #include "ui_barcodegenerator.h"
12 #include "barcodegeneratorrenderthread.h"
13 
14 #include <QColor>
15 #include <QDialog>
16 #include <QLabel>
17 #include <QList>
18 #include <QString>
19 #include <QTimer>
20 
21 #include "sccolor.h"
22 
23 
28 {
29  public:
37  BarcodeType(const QString &cmd, const QString &exa, const QString &exaop);
40  QString command;
42  QString exampleContents;
44  QString exampleOptions;
45 };
46 
47 
49 typedef QMap<QString, BarcodeType> BarcodeMap;
50 
51 
58 class BarcodeGenerator : public QDialog
59 {
60  Q_OBJECT
61 
62  public:
66  BarcodeGenerator(QWidget* parent = 0, const char* name = 0);
69 
70  protected:
72  Ui::BarcodeGeneratorBase ui;
73 
75  BarcodeMap map;
76 
77  QTimer *paintBarcodeTimer;
78 
80  QList<QString> encoderlist;
82  QHash<QString, QString> resdescs;
84  QHash<QString, QString> resreqs;
86  QHash<QString, QString> resexams;
88  QHash<QString, QString> resexops;
90  QHash<QString, QString> resrndrs;
92  QHash<QString, QString> resbodys;
94  QHash<QString, QString> resvers;
96  QHash<QString, QString> resvlbl;
98  QHash<QString, QString> resecls;
100  QHash<QString, bool> resincludetextAvail;
102  QHash<QString, bool> resguardwhitespaceAvail;
104  QHash<QString, bool> resincludecheckAvail;
106  QHash<QString, bool> resincludecheckintextAvail;
108  QHash<QString, bool> resparseAvail;
110  QHash<QString, bool> resparsefncAvail;
112  QList<QString> familyList;
114  QHash<QString, QStringList> familyItems;
115 
122 
123  QColor guiColor;
124 
129  void paintColorSample(QLabel *l, const ScColor & c);
132  bool codeEdit_check(const QString & s);
133  bool optionsEdit_check(const QString & s);
134  void updateOptions();
135  void updateOptionsTextFromUI();
136  void updateUIFromOptionsText();
137 
138  private:
139  void enqueuePaintBarcode(int);
141 
142  protected slots:
143  void paintBarcode();
144  void updatePreview(QString);
145  void bcFamilyComboChanged();
146  void bcComboChanged();
147  void bcComboChanged(int);
148  //void textCheck_changed();
149  //void guardCheck_changed();
150  //void includeCheck_stateChanged(int state);
151  //void includeCheckInText_stateChanged(int state);
152  //void parseCheck_stateChanged(int state);
153  //void parsefncCheck_stateChanged(int state);
154  void bgColorButton_pressed();
155  void lnColorButton_pressed();
156  void txtColorButton_pressed();
157  void codeEdit_textChanged(const QString& s);
158  //void optionsEdit_textChanged(const QString& s);
159  void resetButton_clicked();
160  void okButton_pressed();
161  void cancelButton_pressed();
162  private slots:
163  void on_includetextCheck_stateChanged(int arg1);
164  void on_includecheckCheck_stateChanged(int arg1);
165  void on_includecheckintextCheck_stateChanged(int arg1);
166  void on_parseCheck_stateChanged(int arg1);
167  void on_parsefncCheck_stateChanged(int arg1);
168  void on_formatCombo_currentIndexChanged(int index);
169  void on_eccCombo_currentIndexChanged(int index);
170  void on_guardwhitespaceCheck_stateChanged(int arg1);
171  void on_optionsEdit_textChanged(const QString &arg1);
172 };
173 
174 #endif
QString command
PostScript encoder.
Definition: barcodegenerator.h:38
Definition: sccolor.h:51
QList< QString > familyList
List of barcode families.
Definition: barcodegenerator.h:112
QHash< QString, QString > resrndrs
Renderers for each encoder.
Definition: barcodegenerator.h:90
QHash< QString, QString > resdescs
Descriptions of each encoder.
Definition: barcodegenerator.h:82
QHash< QString, QStringList > familyItems
Family to item hash.
Definition: barcodegenerator.h:114
QHash< QString, bool > resincludecheckintextAvail
includecheckintext option available for each encoder.
Definition: barcodegenerator.h:106
QHash< QString, bool > resincludetextAvail
includetext option available for each encoder.
Definition: barcodegenerator.h:100
QList< QString > encoderlist
List of available barcode encoders.
Definition: barcodegenerator.h:80
QHash< QString, QString > resecls
Error correction levels of each encoder.
Definition: barcodegenerator.h:98
void paintColorSample(QLabel *l, const ScColor &c)
Create color preview. Used for Color box feedback.
Definition: barcodegenerator.cpp:663
ScColor lnColor
Color of the BC lines.
Definition: barcodegenerator.h:117
QHash< QString, bool > resguardwhitespaceAvail
guardwhitespace option available for each encoder.
Definition: barcodegenerator.h:102
Definition: barcodegeneratorrenderthread.h:16
ScColor txtColor
Color of the BC font.
Definition: barcodegenerator.h:119
QHash< QString, bool > resparseAvail
parse option available for each encoder.
Definition: barcodegenerator.h:108
BarcodeType()
Constructor provided for QMap initialization only.
Definition: barcodegenerator.h:31
One Barcode Entity.
Definition: barcodegenerator.h:27
ScColor bgColor
Background color of the BC.
Definition: barcodegenerator.h:121
QHash< QString, QString > resexops
Example options input for each encoder.
Definition: barcodegenerator.h:88
BarcodeMap map
BC/BC type mapping. QMap keys are used as BC names.
Definition: barcodegenerator.h:75
QHash< QString, bool > resincludecheckAvail
includecheck option available for each encoder.
Definition: barcodegenerator.h:104
QString exampleContents
BC example contents.
Definition: barcodegenerator.h:42
QHash< QString, QString > resvers
Symbol Versions of each encoder.
Definition: barcodegenerator.h:94
QHash< QString, QString > resexams
Example data input for each encoder.
Definition: barcodegenerator.h:86
~BarcodeGenerator()
Erase the temporary files here.
Definition: barcodegenerator.cpp:311
Ui::BarcodeGeneratorBase ui
GUI namespace content. See designer.
Definition: barcodegenerator.h:72
QHash< QString, QString > resreqs
Dependancies of each encoder.
Definition: barcodegenerator.h:84
QString exampleOptions
BC example options.
Definition: barcodegenerator.h:44
QHash< QString, QString > resbodys
PS body of each encoder.
Definition: barcodegenerator.h:92
bool codeEdit_check(const QString &s)
Perform BarcodeCheckType checks here.
QHash< QString, bool > resparsefncAvail
parsefnc option available for each encoder.
Definition: barcodegenerator.h:110
Active tasts for BC GUI. It's inherited from BarcodeGeneratorBase() class which is created by uic fro...
Definition: barcodegenerator.h:58
BarcodeGenerator(QWidget *parent=0, const char *name=0)
Create modal BC dialog.
Definition: barcodegenerator.cpp:32
QHash< QString, QString > resvlbl
Label for the versions field.
Definition: barcodegenerator.h:96