2
2
#include " myparams.h"
3
3
#include " pathutils.h"
4
4
5
+ #include " mixupkeydialog.h"
6
+ #include " xsheetpreviewarea.h"
7
+
5
8
#include < QComboBox>
6
9
#include < QLineEdit>
7
10
#include < QPushButton>
19
22
#include < QDir>
20
23
#include < QPainter>
21
24
#include < QTextEdit>
22
- #include < QMessageBox>
23
25
24
26
namespace {
25
27
void frame2SecKoma (int frame, int & sec, int & koma) {
@@ -43,9 +45,10 @@ SettingsDialog::SettingsDialog(QWidget* parent)
43
45
m_exportAreaCombo = new QComboBox (this );
44
46
m_pageInfoLbl = new QLabel (this );
45
47
m_skippedLevelNamesEdit = new QLineEdit (this );
46
- m_expandColumnsCB = new QCheckBox (tr (" Adaptively Expand Columns " ), this );
47
- m_mixUpColumnsCB = new QCheckBox (tr (" Mix-up Columns " ), this );
48
- m_withDenpyoCB = new QCheckBox (tr (" Attach Composite Voucher" ), this );
48
+ m_expandColumnsCB = new QCheckBox (tr (" Adaptively Expand Columns " ), this );
49
+ m_mixUpColumnsCombo = new QComboBox (this );
50
+ m_mixupKeyBtn = new QPushButton (tr (" Edit Mix-up Keys" ), this );
51
+ m_withDenpyoCB = new QCheckBox (tr (" Attach Composite Voucher" ), this );
49
52
m_backsideImgPathField = new QLineEdit (this );
50
53
m_scannedGengaSheetGB = new QGroupBox (
51
54
tr (" Scanned Genga Sheet Mode ( Hide Genga && Camera Area Lines )" ));
@@ -72,6 +75,12 @@ SettingsDialog::SettingsDialog(QWidget* parent)
72
75
m_exportAreaCombo->addItem (tr (" ACTIONS" ), Area_Actions);
73
76
m_exportAreaCombo->addItem (tr (" CELLS" ), Area_Cells);
74
77
78
+ m_mixUpColumnsCombo->addItem (tr (" Manually Specify Mix-up Keys" ),
79
+ Mixup_Manual);
80
+ m_mixUpColumnsCombo->addItem (tr (" Automatically Detect from Data" ),
81
+ Mixup_Auto);
82
+ m_mixupKeyBtn->setFocusPolicy (Qt::NoFocus);
83
+
75
84
m_scannedGengaSheetGB->setCheckable (true );
76
85
QIntValidator* validator = new QIntValidator ();
77
86
validator->setBottom (0 );
@@ -108,8 +117,12 @@ SettingsDialog::SettingsDialog(QWidget* parent)
108
117
formatLay->addWidget (m_expandColumnsCB, 1 , 0 , 1 , 3 ,
109
118
Qt::AlignLeft | Qt::AlignVCenter);
110
119
111
- formatLay->addWidget (m_mixUpColumnsCB, 2 , 0 , 1 , 3 ,
120
+ formatLay->addWidget (new QLabel (tr (" Mix-up Columns:" ), this ), 2 , 0 ,
121
+ Qt::AlignRight | Qt::AlignVCenter);
122
+ formatLay->addWidget (m_mixUpColumnsCombo, 2 , 1 ,
112
123
Qt::AlignLeft | Qt::AlignVCenter);
124
+ formatLay->addWidget (m_mixupKeyBtn, 2 , 3 ,
125
+ Qt::AlignRight | Qt::AlignVCenter);
113
126
114
127
formatLay->addWidget (new QLabel (tr (" Logo Image:" ), this ), 3 , 0 ,
115
128
Qt::AlignRight | Qt::AlignVCenter);
@@ -209,8 +222,9 @@ SettingsDialog::SettingsDialog(QWidget* parent)
209
222
SLOT (onTemplateSwitched (int )));
210
223
connect (m_expandColumnsCB, SIGNAL (clicked (bool )), this ,
211
224
SLOT (onExpandColumnsSwitched ()));
212
- connect (m_mixUpColumnsCB, SIGNAL (clicked (bool )), this ,
213
- SLOT (onMixUpSwitched ()));
225
+ connect (m_mixUpColumnsCombo, SIGNAL (activated (int )), this ,
226
+ SLOT (onMixUpActivated ()));
227
+ connect (m_mixupKeyBtn, SIGNAL (clicked ()), this , SLOT (openMixupKeyDialog ()));
214
228
connect (m_logoImgPathField, SIGNAL (editingFinished ()), this ,
215
229
SLOT (onFormatSettingsChanged ()));
216
230
connect (browseButton, SIGNAL (clicked ()), this ,
@@ -250,7 +264,11 @@ void SettingsDialog::syncUIs() {
250
264
MyParams* p = MyParams::instance ();
251
265
m_templateCombo->setCurrentText (p->templateName ());
252
266
m_expandColumnsCB->setChecked (p->isExpandColumns ());
253
- m_mixUpColumnsCB->setChecked (p->isMixUpColumns ());
267
+
268
+ m_mixUpColumnsCombo->setCurrentIndex (
269
+ m_mixUpColumnsCombo->findData (p->mixUpColumnsType ()));
270
+ m_mixupKeyBtn->setEnabled (p->mixUpColumnsType () == Mixup_Manual);
271
+
254
272
m_logoImgPathField->setText (p->logoPath (true ));
255
273
m_withDenpyoCB->setChecked (p->withDenpyo ());
256
274
m_backsideImgPathField->setText (p->backsideImgPath (true ));
@@ -287,12 +305,26 @@ void SettingsDialog::onExpandColumnsSwitched() {
287
305
MyParams::instance ()->setFormatDirty (true );
288
306
}
289
307
290
- void SettingsDialog::onMixUpSwitched () {
291
- MyParams::instance ()->setMixUpColumns (m_mixUpColumnsCB->isChecked ());
308
+ void SettingsDialog::onMixUpActivated () {
309
+ MixupColumnsType currentType =
310
+ (MixupColumnsType)m_mixUpColumnsCombo->currentData ().toInt ();
311
+ MyParams::instance ()->setMixUpColumns (currentType == Mixup_Auto);
312
+ m_mixupKeyBtn->setEnabled (currentType == Mixup_Manual);
292
313
MyParams::instance ()->notifyTemplateSwitched ();
293
314
MyParams::instance ()->setFormatDirty (true );
294
315
}
295
316
317
+ void SettingsDialog::openMixupKeyDialog () {
318
+ QMap<ExportArea, ColumnsData> columns =
319
+ MyParams::instance ()->currentTemplate ()->columns ();
320
+ if (columns.isEmpty ()) {
321
+ QMessageBox::warning (this , tr (" Warning" ), tr (" No columns found!" ));
322
+ return ;
323
+ }
324
+ MixupKeyDialog dialog;
325
+ dialog.exec ();
326
+ }
327
+
296
328
void SettingsDialog::onDougaColumnOffsetEdited () {
297
329
MyParams::instance ()->setDougaColumnOffset (
298
330
m_dougaColumnOffsetEdit->text ().toInt ());
0 commit comments