Skip to content

Commit 8db374e

Browse files
authored
Merge pull request #12 from shun-iwasawa/tereko_keyframe
Mixup Columns Keyframe
2 parents 4d98419 + cc9f1c0 commit 8db374e

11 files changed

+1166
-143
lines changed

sources/CMakeLists.txt

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ set(MOC_HEADERS
1111
tool.h
1212
dialogs.h
1313
aetool.h
14+
mixupkeydialog.h
1415
)
1516

1617
set(HEADERS
@@ -33,6 +34,7 @@ set(SOURCES
3334
linetool.cpp
3435
dialogs.cpp
3536
aetool.cpp
37+
mixupkeydialog.cpp
3638
)
3739

3840
#-----------------------------------------------------------------------------

sources/dialogs.cpp

+42-10
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
#include "myparams.h"
33
#include "pathutils.h"
44

5+
#include "mixupkeydialog.h"
6+
#include "xsheetpreviewarea.h"
7+
58
#include <QComboBox>
69
#include <QLineEdit>
710
#include <QPushButton>
@@ -19,7 +22,6 @@
1922
#include <QDir>
2023
#include <QPainter>
2124
#include <QTextEdit>
22-
#include <QMessageBox>
2325

2426
namespace {
2527
void frame2SecKoma(int frame, int& sec, int& koma) {
@@ -43,9 +45,10 @@ SettingsDialog::SettingsDialog(QWidget* parent)
4345
m_exportAreaCombo = new QComboBox(this);
4446
m_pageInfoLbl = new QLabel(this);
4547
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);
4952
m_backsideImgPathField = new QLineEdit(this);
5053
m_scannedGengaSheetGB = new QGroupBox(
5154
tr("Scanned Genga Sheet Mode ( Hide Genga && Camera Area Lines )"));
@@ -72,6 +75,12 @@ SettingsDialog::SettingsDialog(QWidget* parent)
7275
m_exportAreaCombo->addItem(tr("ACTIONS"), Area_Actions);
7376
m_exportAreaCombo->addItem(tr("CELLS"), Area_Cells);
7477

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+
7584
m_scannedGengaSheetGB->setCheckable(true);
7685
QIntValidator* validator = new QIntValidator();
7786
validator->setBottom(0);
@@ -108,8 +117,12 @@ SettingsDialog::SettingsDialog(QWidget* parent)
108117
formatLay->addWidget(m_expandColumnsCB, 1, 0, 1, 3,
109118
Qt::AlignLeft | Qt::AlignVCenter);
110119

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,
112123
Qt::AlignLeft | Qt::AlignVCenter);
124+
formatLay->addWidget(m_mixupKeyBtn, 2, 3,
125+
Qt::AlignRight | Qt::AlignVCenter);
113126

114127
formatLay->addWidget(new QLabel(tr("Logo Image:"), this), 3, 0,
115128
Qt::AlignRight | Qt::AlignVCenter);
@@ -209,8 +222,9 @@ SettingsDialog::SettingsDialog(QWidget* parent)
209222
SLOT(onTemplateSwitched(int)));
210223
connect(m_expandColumnsCB, SIGNAL(clicked(bool)), this,
211224
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()));
214228
connect(m_logoImgPathField, SIGNAL(editingFinished()), this,
215229
SLOT(onFormatSettingsChanged()));
216230
connect(browseButton, SIGNAL(clicked()), this,
@@ -250,7 +264,11 @@ void SettingsDialog::syncUIs() {
250264
MyParams* p = MyParams::instance();
251265
m_templateCombo->setCurrentText(p->templateName());
252266
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+
254272
m_logoImgPathField->setText(p->logoPath(true));
255273
m_withDenpyoCB->setChecked(p->withDenpyo());
256274
m_backsideImgPathField->setText(p->backsideImgPath(true));
@@ -287,12 +305,26 @@ void SettingsDialog::onExpandColumnsSwitched() {
287305
MyParams::instance()->setFormatDirty(true);
288306
}
289307

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);
292313
MyParams::instance()->notifyTemplateSwitched();
293314
MyParams::instance()->setFormatDirty(true);
294315
}
295316

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+
296328
void SettingsDialog::onDougaColumnOffsetEdited() {
297329
MyParams::instance()->setDougaColumnOffset(
298330
m_dougaColumnOffsetEdit->text().toInt());

sources/dialogs.h

+4-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ class SettingsDialog : public QDialog {
1818
// format
1919
QComboBox* m_templateCombo;
2020
QCheckBox* m_expandColumnsCB;
21-
QCheckBox* m_mixUpColumnsCB;
21+
QComboBox* m_mixUpColumnsCombo;
22+
QPushButton* m_mixupKeyBtn;
2223
QLineEdit* m_logoImgPathField;
2324
QComboBox* m_exportAreaCombo;
2425
QLineEdit* m_skippedLevelNamesEdit;
@@ -48,7 +49,8 @@ class SettingsDialog : public QDialog {
4849
protected slots:
4950
void onTemplateSwitched(int);
5051
void onExpandColumnsSwitched();
51-
void onMixUpSwitched();
52+
void onMixUpActivated();
53+
void openMixupKeyDialog();
5254
void onFormatSettingsChanged();
5355
void onLogoImgBrowserButtonClicked();
5456
void onBacksideImgBrowserButtonClicked();

sources/loc/XDTS_Viewer_ja.qm

1.7 KB
Binary file not shown.

0 commit comments

Comments
 (0)