• R/O
  • HTTP
  • SSH
  • HTTPS

提交

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

修订版3b2a85ae7ae52189cefb86b4528d4b2fc75b3f8c (tree)
时间2018-12-25 23:18:05
作者kdrama_fansub <kdrama_fansub@yaho...>
Commiterkdrama_fansub

Log Message

FFU-Eng 初版

更改概述

差异

--- a/customizedialog.cpp
+++ b/customizedialog.cpp
@@ -39,27 +39,28 @@ QStringList CustomizeDialog::courses = QStringList()
3939 << QString::fromUtf8( "基礎英語1" ) << QString::fromUtf8( "基礎英語2" )
4040 << QString::fromUtf8( "基礎英語3" ) << QString::fromUtf8( "英会話タイムトライアル" )
4141 << QString::fromUtf8( "ラジオ英会話" ) << QString::fromUtf8( "入門ビジネス英語" )
42- << QString::fromUtf8( "実践ビジネス英語" ) << QString::fromUtf8( "まいにちロシア語" )
43- << QString::fromUtf8( "英語で読む村上春樹" ) << QString::fromUtf8( "エンジョイ・シンプル・イングリッシュ" )
42+ << QString::fromUtf8( "実践ビジネス英語" ) << QString::fromUtf8( "ボキャブライダー" )
43+ << QString::fromUtf8( "遠山顕の英会話楽習" ) << QString::fromUtf8( "エンジョイ・シンプル・イングリッシュ" )
4444 << QString::fromUtf8( "まいにち中国語" ) << QString::fromUtf8( "まいにちフランス語" )
4545 << QString::fromUtf8( "まいにちイタリア語" ) << QString::fromUtf8( "まいにちハングル講座" )
4646 << QString::fromUtf8( "まいにちドイツ語" ) << QString::fromUtf8( "まいにちスペイン語" )
4747 << QString::fromUtf8( "レベルアップ中国語" ) << QString::fromUtf8( "レベルアップハングル講座" )
48- << QString::fromUtf8( "攻略!英語リスニング" );
48+ << QString::fromUtf8( "高校生からはじめる「現代英語」" ) << QString::fromUtf8( "まいにちロシア語" )
49+ << QString::fromUtf8( "おもてなしの中国語" ) ;
4950 QStringList CustomizeDialog::titleKeys = QStringList()
5051 << "basic1_title" << "basic2_title" << "basic3_title" << "timetrial_title"
51- << "kaiwa_title" << "business1_title" << "business2_title" << "russian_title"
52- << "yomu_title" << "enjoy_title"
52+ << "kaiwa_title" << "business1_title" << "business2_title" << "vr-radio_title"
53+ << "gakusyu_title" << "enjoy_title"
5354 << "chinese_title" << "french_title" << "italian_title" << "hangeul_title"
5455 << "german_title" << "spanish_title" << "levelup-chinese_title" << "levelup-hangeul_title"
55- << "kouryaku_title";
56+ << "gendai_title" << "russian_title" << "omotenashi_title";
5657 QStringList CustomizeDialog::fileNameKeys = QStringList()
5758 << "basic1_file_name" << "basic2_file_name" << "basic3_file_name" << "timetrial_file_name"
58- << "kaiwa_file_name" << "business1_file_name" << "business2_file_name" << "russian_file_name"
59- << "yomu_file_name" << "enjoy_file_name"
59+ << "kaiwa_file_name" << "business1_file_name" << "business2_file_name" << "vr-radio_file_name"
60+ << "gakusyu_file_name" << "enjoy_file_name"
6061 << "chinese_file_name" << "french_file_name" << "italian_file_name" << "hangeul_file_name"
6162 << "german_file_name" << "spanish_file_name" << "levelup-chinese_file_name" << "levelup-hangeul_file_name"
62- << "kouryaku_file_name";
63+ << "gendai_file_name" << "russian_file_name" << "omotenashi_file_name";
6364
6465 void CustomizeDialog::formats( QString course, QString& titleFormat, QString& fileNameFormat ) {
6566 int index = courses.indexOf( course );
@@ -93,7 +94,7 @@ void CustomizeDialog::settings( bool write ) {
9394 ui.lineEdit_17, ui.lineEdit_19,
9495 ui.lineEdit_9, ui.lineEdit_10, ui.lineEdit_11, ui.lineEdit_12,
9596 ui.lineEdit_13, ui.lineEdit_14, ui.lineEdit_15, ui.lineEdit_16,
96- ui.lineEdit_18,
97+ ui.lineEdit_18, ui.lineEdit_20, ui.lineEdit_21,
9798 NULL
9899 };
99100
--- a/downloadthread.cpp
+++ b/downloadthread.cpp
@@ -68,19 +68,31 @@ QString DownloadThread::suffix = "listdataflv.xml";
6868 QString DownloadThread::flv_host = "flv.nhk.or.jp";
6969 QString DownloadThread::flv_app = "ondemand/";
7070 QString DownloadThread::flv_service_prefix = "mp4:flv/gogaku/streaming/mp4/";
71+QString DownloadThread::kouza1 = "/kouza";
72+QString DownloadThread::kouza2 = "/kouza2";
7173
7274 QString DownloadThread::flvstreamer;
7375 QString DownloadThread::ffmpeg;
7476 QString DownloadThread::scramble;
77+QString DownloadThread::optional1;
78+QString DownloadThread::optional2;
79+QString DownloadThread::optional3;
80+QString DownloadThread::optional4;
81+
7582 QStringList DownloadThread::malformed = (QStringList() << "3g2" << "3gp" << "m4a" << "mov");
7683
84+QString DownloadThread::english_3month = QString::fromUtf8( "短期集中!3か月英会話" );
85+QString DownloadThread::english_vr = QString::fromUtf8( "ボキャブライダー" );
86+
7787 QHash<QString, QString> DownloadThread::ffmpegHash;
88+QHash<QString, QString> DownloadThread::ffmpegHash1;
7889 QHash<QProcess::ProcessError, QString> DownloadThread::processError;
7990
8091 //--------------------------------------------------------------------------------
8192
8293 DownloadThread::DownloadThread( Ui::MainWindowClass* ui ) : isCanceled(false), failed1935(false) {
8394 this->ui = ui;
95+
8496 if ( ffmpegHash.empty() ) {
8597 ffmpegHash["3g2"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/mp4/%2/master.m3u8 -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
8698 ffmpegHash["3gp"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/mp4/%2/master.m3u8 -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
@@ -93,6 +105,21 @@ DownloadThread::DownloadThread( Ui::MainWindowClass* ui ) : isCanceled(false), f
93105 ffmpegHash["mp3"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/mp4/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -acodec libmp3lame \"%3\"";
94106 ffmpegHash["ts"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/mp4/%2/master.m3u8 -vn -acodec copy \"%3\"";
95107 }
108+
109+ if ( ffmpegHash1.empty() ) {
110+ ffmpegHash1["3g2"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
111+ ffmpegHash1["3gp"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
112+ ffmpegHash1["aac"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -vn -acodec copy \"%3\"";
113+ ffmpegHash1["avi"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -acodec copy \"%3\"";
114+ ffmpegHash1["m4a"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
115+ ffmpegHash1["mka"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -acodec copy \"%3\"";
116+ ffmpegHash1["mkv"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -acodec copy \"%3\"";
117+ ffmpegHash1["mov"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -bsf aac_adtstoasc -acodec copy \"%3\"";
118+ ffmpegHash1["mp3"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -id3v2_version 3 -metadata title=\"%4\" -metadata artist=\"NHK\" -metadata album=\"%5\" -metadata date=\"%6\" -metadata genre=\"Speech\" -vn -acodec libmp3lame \"%3\"";
119+ ffmpegHash1["ts"] = "\"%1\" -y -i https://nhk-vh.akamaihd.net/i/gogaku-stream/r/%2/master.m3u8 -vn -acodec copy \"%3\"";
120+ }
121+
122+
96123 if ( processError.empty() ) {
97124 processError[QProcess::FailedToStart] = "FailedToStart";
98125 processError[QProcess::Crashed] = "Crashed";
@@ -457,7 +484,8 @@ QString DownloadThread::formatName( QString format, QString kouza, QString hdate
457484 int month = hdate.left( 2 ).toInt();
458485 int year = 2000 + file.left( 2 ).toInt();
459486 if ( month <= 4 && QDate::currentDate().year() > year )
460- year += 1;
487+ if ( !QString::compare( kouza , english_vr ) == 0 ) year += 1;
488+ if ( QString::compare( kouza , english_vr ) == 0 && month < 4 ) year += 1;
461489 int day = hdate.mid( 3, 2 ).toInt();
462490
463491 if ( file.right( 4 ) == ".flv" )
@@ -528,18 +556,51 @@ bool DownloadThread::captureStream( QString kouza, QString hdate, QString file )
528556
529557 int month = hdate.left( 2 ).toInt();
530558 int year = 2000 + file.left( 2 ).toInt();
559+ int year1 = 2000 + file.left( 2 ).toInt();
531560 if ( month <= 4 && QDate::currentDate().year() > year )
532- year += 1;
561+ if ( !QString::compare( kouza , english_vr ) == 0 ) year += 1;
562+ if ( QString::compare( kouza , english_vr ) == 0 && month < 4 ) year += 1;
533563 int day = hdate.mid( 3, 2 ).toInt();
534564 QDate onair( year, month, day );
535565 QString yyyymmdd = onair.toString( "yyyy_MM_dd" );
536-
566+
567+
568+ if ( QString::compare( kouza , english_vr ) ==0 ){
569+ QDate d1;
570+ d1.setDate(QDate::currentDate().year(),QDate::currentDate().month(),QDate::currentDate().day());
571+ int d2 = d1.dayOfWeek();
572+
573+ if ( !ui->toolButton_vrradio1->isChecked() ){
574+ if ( d2 > 3 ) {
575+ if ( onair.daysTo(QDate::currentDate())-d2 > 0 ) return false;
576+ if ( onair.daysTo(QDate::currentDate())-d2 < -14 ) return false;
577+ } else {
578+ if ( onair.daysTo(QDate::currentDate())-d2 > 0 ) return false;
579+ if ( onair.daysTo(QDate::currentDate())-d2 < -7 ) return false;
580+ }
581+// if ( onair.daysTo(QDate::currentDate())-d2 > 7 ) return false;
582+// if ( onair.daysTo(QDate::currentDate())-d2 < 0 ) return false;
583+ } else {
584+ if ( ui->toolButton_vrradio2->isChecked() ){
585+ if ( QDate::currentDate().year() > year1 ) return false;
586+ }
587+ if ( d2 > 3 ) {
588+ if ( onair.daysTo(QDate::currentDate())-d2 < -14 ) return false;
589+ } else {
590+ if ( onair.daysTo(QDate::currentDate())-d2 < -7 ) return false;
591+ }}
592+ }
593+
594+
537595 if ( ui->toolButton_skip->isChecked() && QFile::exists( outputDir + outFileName ) ) {
538596 emit current( QString::fromUtf8( "スキップ:     " ) + kouza + QString::fromUtf8( " " ) + yyyymmdd );
539597 return true;
540598 }
541599 emit current( QString::fromUtf8( "ダウンロード中:  " ) + kouza + QString::fromUtf8( " " ) + yyyymmdd );
542600
601+ if ( QString::compare( kouza, english_3month ) == 0 )
602+ Q_ASSERT( ffmpegHash1.contains( extension ) );
603+ else
543604 Q_ASSERT( ffmpegHash.contains( extension ) );
544605 QString dstPath;
545606 #ifdef QT4_QT5_WIN
@@ -558,10 +619,16 @@ bool DownloadThread::captureStream( QString kouza, QString hdate, QString file )
558619 #endif
559620 QString commandFfmpeg = ffmpegHash[extension]
560621 .arg( ffmpeg, file, dstPath, id3tagTitle, kouza, QString::number( year ) );
622+ if ( QString::compare( kouza, english_3month ) == 0 )
623+ commandFfmpeg = ffmpegHash1[extension]
624+ .arg( ffmpeg, file, dstPath, id3tagTitle, kouza, QString::number( year ) );
625+
626+
561627 //qDebug() << commandFfmpeg;
562628 //DebugLog( commandFfmpeg );
563629 QProcess process;
564630 process.start( commandFfmpeg );
631+
565632 if ( !process.waitForStarted( -1 ) ) {
566633 emit critical( QString::fromUtf8( "ffmpeg起動エラー(%3): %1  %2" )
567634 .arg( kouza, yyyymmdd, processError[process.error()] ) );
@@ -601,24 +668,21 @@ bool DownloadThread::captureStream( QString kouza, QString hdate, QString file )
601668 }
602669
603670 QString DownloadThread::paths[] = {
604- "english/basic1", "english/basic2", "english/basic3",
671+ "english/basic0", "english/basic1", "english/basic2", "english/basic3",
605672 "english/timetrial", "english/kaiwa", "english/business1",
606- "english/business2", "english/kouryaku", "english/yomu",
607- "english/enjoy",
608- "chinese/kouza", "chinese/levelup", "french/kouza",
609- "italian/kouza", "hangeul/kouza","hangeul/levelup",
610- "german/kouza", "spanish/kouza","russian/kouza"
673+ "english/business2", "english/gendai", "english/gakusyu",
674+ "english/enjoy", "english/vr-radio",
675+ "optional1", "optional2", "optional3", "optional4",
611676 };
612677
613678 void DownloadThread::run() {
614679 QAbstractButton* checkbox[] = {
615- ui->toolButton_basic1, ui->toolButton_basic2, ui->toolButton_basic3,
680+ ui->toolButton_basic0, ui->toolButton_basic1, ui->toolButton_basic2, ui->toolButton_basic3,
616681 ui->toolButton_timetrial, ui->toolButton_kaiwa, ui->toolButton_business1,
617- ui->toolButton_business2, ui->toolButton_kouryaku, ui->toolButton_yomu,
618- ui->toolButton_enjoy,
619- ui->toolButton_chinese, ui->toolButton_levelup_chinese, ui->toolButton_french,
620- ui->toolButton_italian, ui->toolButton_hangeul, ui->toolButton_levelup_hangeul,
621- ui->toolButton_german, ui->toolButton_spanish, ui->toolButton_russian,
682+ ui->toolButton_business2, ui->toolButton_gendai, ui->toolButton_gakusyu,
683+ ui->toolButton_enjoy, ui->toolButton_vrradio,
684+ ui->toolButton_optional1, ui->toolButton_optional2,
685+ ui->toolButton_optional3, ui->toolButton_optional4,
622686 NULL
623687 };
624688
@@ -630,6 +694,16 @@ void DownloadThread::run() {
630694 //emit information( QString::fromUtf8( "----------------------------------------" ) );
631695
632696 for ( int i = 0; checkbox[i] && !isCanceled; i++ ) {
697+
698+ QString optional1 = MainWindow::optional1;
699+ QString optional2 = MainWindow::optional2;
700+ QString optional3 = MainWindow::optional3;
701+ QString optional4 = MainWindow::optional4;
702+ if ( paths[i].startsWith("optional1") ) paths[i] = optional1;
703+ if ( paths[i].startsWith("optional2") ) paths[i] = optional2;
704+ if ( paths[i].startsWith("optional3") ) paths[i] = optional3;
705+ if ( paths[i].startsWith("optional4") ) paths[i] = optional4;
706+
633707 if ( checkbox[i]->isChecked() ) {
634708 QStringList fileList = getAttribute( prefix + paths[i] + "/" + suffix, "@file" );
635709 QStringList kouzaList = getAttribute( prefix + paths[i] + "/" + suffix, "@kouza" );
--- a/downloadthread.h
+++ b/downloadthread.h
@@ -69,13 +69,23 @@ private:
6969 static QString flv_host;
7070 static QString flv_app;
7171 static QString flv_service_prefix;
72+ static QString kouza1;
73+ static QString kouza2;
7274
7375 static QString flvstreamer;
7476 static QString ffmpeg;
7577 static QString scramble;
7678 static QStringList malformed;
79+ static QString optional1;
80+ static QString optional2;
81+ static QString optional3;
82+ static QString optional4;
83+
84+ static QString english_3month;
85+ static QString english_vr;
7786
7887 static QHash<QString, QString> ffmpegHash;
88+ static QHash<QString, QString> ffmpegHash1;
7989 static QHash<QProcess::ProcessError, QString>processError;
8090
8191 };
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -50,6 +50,23 @@
5050 #define SETTING_SCRAMBLE_URL2 "scramble_url2"
5151 #define SCRAMBLE_URL1 "http://www47.atwiki.jp/jakago/pub/scramble.xml"
5252 #define SCRAMBLE_URL2 "http://cdn47.atwikiimg.com/jakago/pub/scramble.xml"
53+#define SETTING_OPTIONAL1 "optional1"
54+#define SETTING_OPTIONAL2 "optional2"
55+#define SETTING_OPTIONAL3 "optional3"
56+#define SETTING_OPTIONAL4 "optional4"
57+#define SETTING_OPT_TITLE1 "opt_title1"
58+#define SETTING_OPT_TITLE2 "opt_title2"
59+#define SETTING_OPT_TITLE3 "opt_title3"
60+#define SETTING_OPT_TITLE4 "opt_title4"
61+#define OPTIONAL1 "french/kouza"
62+#define OPTIONAL2 "german/kouza"
63+#define OPTIONAL3 "chinese/kouza"
64+#define OPTIONAL4 "hangeul/kouza"
65+#define OPT_TITLE1 "任意講座1"
66+#define OPT_TITLE2 "任意講座2"
67+#define OPT_TITLE3 "任意講座3"
68+#define OPT_TITLE4 "任意講座4"
69+
5370 #define X11_WINDOW_VERTICAL_INCREMENT 5
5471
5572 #ifdef QT4_QT5_WIN
@@ -86,6 +103,14 @@ QString MainWindow::outputDir;
86103 QString MainWindow::scramble;
87104 QString MainWindow::scrambleUrl1;
88105 QString MainWindow::scrambleUrl2;
106+QString MainWindow::optional1;
107+QString MainWindow::optional2;
108+QString MainWindow::optional3;
109+QString MainWindow::optional4;
110+QString MainWindow::opt_title1;
111+QString MainWindow::opt_title2;
112+QString MainWindow::opt_title3;
113+QString MainWindow::opt_title4;
89114
90115 MainWindow::MainWindow( QWidget *parent )
91116 : QMainWindow( parent ), ui( new Ui::MainWindowClass ), downloadThread( NULL ) {
@@ -130,6 +155,10 @@ MainWindow::MainWindow( QWidget *parent )
130155 connect( action, SIGNAL( triggered() ), this, SLOT( customizeSaveFolder() ) );
131156 customizeMenu->addAction( action );
132157
158+ action = new QAction( QString::fromUtf8( "任意講座設定" ), this );
159+ connect( action, SIGNAL( triggered() ), this, SLOT( customizeScramble() ) );
160+ customizeMenu->addAction( action );
161+
133162 //action = new QAction( QString::fromUtf8( "スクランブル文字列..." ), this );
134163 //connect( action, SIGNAL( triggered() ), this, SLOT( customizeScramble() ) );
135164 //customizeMenu->addAction( action );
@@ -178,8 +207,9 @@ void MainWindow::settings( enum ReadWriteMode mode ) {
178207 QVariant fileNameFormat;
179208 } CheckBox;
180209 #define DefaultTitle "%k_%Y_%M_%D"
181-#define DefaultFileName "%k_%Y_%M_%D.mp3"
210+#define DefaultFileName "%k_%Y_%M_%D.m4a"
182211 CheckBox checkBoxes[] = {
212+ { ui->toolButton_basic0, "basic0", false, "basic0_title", DefaultTitle, "basic0_file_name", DefaultFileName },
183213 { ui->toolButton_basic1, "basic1", false, "basic1_title", DefaultTitle, "basic1_file_name", DefaultFileName },
184214 { ui->toolButton_basic2, "basic2", false, "basic2_title", DefaultTitle, "basic2_file_name", DefaultFileName },
185215 { ui->toolButton_basic3, "basic3", false, "basic3_title", DefaultTitle, "basic3_file_name", DefaultFileName },
@@ -187,28 +217,17 @@ void MainWindow::settings( enum ReadWriteMode mode ) {
187217 { ui->toolButton_kaiwa, "kaiwa", false, "kaiwa_title", DefaultTitle, "kaiwa_file_name", DefaultFileName },
188218 { ui->toolButton_business1, "business1", false, "business1_title", DefaultTitle, "business1_file_name", DefaultFileName },
189219 { ui->toolButton_business2, "business2", false, "business2_title", DefaultTitle, "business2_file_name", DefaultFileName },
190- { ui->toolButton_chinese, "chinese", false, "chinese_title", DefaultTitle, "chinese_file_name", DefaultFileName },
191- { ui->toolButton_french, "french", false, "french_title", DefaultTitle, "french_file_name", DefaultFileName },
192- { ui->toolButton_italian, "italian", false, "italian_title", DefaultTitle, "italian_file_name", DefaultFileName },
193- { ui->toolButton_hangeul, "hangeul", false, "hangeul_title", DefaultTitle, "hangeul_file_name", DefaultFileName },
194- { ui->toolButton_german, "german", false, "german_title", DefaultTitle, "german_file_name", DefaultFileName },
195- { ui->toolButton_spanish, "spanish", false, "spanish_title", DefaultTitle, "spanish_file_name", DefaultFileName },
196- { ui->checkBox_13, "charo", false, "charo_title", DefaultTitle, "charo_file_name", DefaultFileName },
197- { ui->checkBox_14, "e-news", false, "e-news_title", DefaultTitle, "e-news_file_name", DefaultFileName },
198- { ui->checkBox_15, "e-news-reread", false, "e-news-reread_title", DefaultTitle, "e-news-reread_file_name", DefaultFileName },
199- { ui->toolButton_levelup_chinese, "levelup-chinese", false, "levelup-chinese_title", DefaultTitle, "levelup-chinese_file_name", DefaultFileName },
200- { ui->toolButton_levelup_hangeul, "levelup-hangeul", false, "levelup-hangeul_title", DefaultTitle, "levelup-hangeul_file_name", DefaultFileName },
201- { ui->toolButton_russian, "russian", false, "russian_title", DefaultTitle, "russian_file_name", DefaultFileName },
202- { ui->checkBox_shower, "shower", false, "shower_title", DefaultTitle, "shower_file_name", DefaultFileName },
203- { ui->toolButton_kouryaku, "kouryaku", false, "kouryaku_title", DefaultTitle, "kouryaku_file_name", DefaultFileName },
204- { ui->toolButton_yomu, "yomu", false, "yomu_title", DefaultTitle, "yomu_file_name", DefaultFileName },
220+ { ui->toolButton_vrradio, "vr-radio", false, "vr-radio_title", DefaultTitle, "vr-radio_file_name", DefaultFileName },
221+ { ui->toolButton_vrradio1, "vr-radio_all", false, "", "", "", "" },
222+ { ui->toolButton_vrradio2, "vr-radio_year", false, "", "", "", "" },
223+ { ui->toolButton_gendai, "gendai", false, "gendai_title", DefaultTitle, "gendai_file_name", DefaultFileName },
224+ { ui->toolButton_gakusyu, "gakusyu", false, "gakusyu_title", DefaultTitle, "gakusyu_file_name", DefaultFileName },
205225 { ui->toolButton_enjoy, "enjoy", false, "enjoy_title", DefaultTitle, "enjoy_file_name", DefaultFileName },
226+ { ui->toolButton_optional1, "optional_1", false, "optional1_title", DefaultTitle, "optional1_file_name", DefaultFileName },
227+ { ui->toolButton_optional2, "optional_2", false, "optional2_title", DefaultTitle, "optional2_file_name", DefaultFileName },
228+ { ui->toolButton_optional3, "optional_3", false, "optional3_title", DefaultTitle, "optional3_file_name", DefaultFileName },
229+ { ui->toolButton_optional4, "optional_4", false, "optional4_title", DefaultTitle, "optional4_file_name", DefaultFileName },
206230 { ui->toolButton_skip, "skip", true, "", "", "", "" },
207- { ui->checkBox_keep_on_error, "keep_on_error", false, "", "", "", "" },
208- { ui->checkBox_this_week, "this_week", true, "", "", "", "" },
209- { ui->checkBox_next_week, "next_week", false, "", "", "", "" },
210- { ui->checkBox_past_week, "past_week", false, "", "", "", "" },
211- { ui->toolButton_detailed_message, "detailed_message", false, "", "", "", "" },
212231 { NULL, NULL, false, "", "", "", "" }
213232 };
214233 typedef struct ComboBox {
@@ -216,13 +235,8 @@ void MainWindow::settings( enum ReadWriteMode mode ) {
216235 QString key;
217236 QVariant defaultValue;
218237 } ComboBox;
219- ComboBox comboBoxes[] = {
220- { ui->comboBox_enews, "e-news-index", ENewsSaveBoth },
221- { ui->comboBox_shower, "shower_index", ENewsSaveBoth },
222- { NULL, NULL, false }
223- };
224238 ComboBox textComboBoxes[] = {
225- { ui->comboBox_extension, "audio_extension", "mp3" },
239+ { ui->comboBox_extension, "audio_extension", "m4a" },
226240 { NULL, NULL, false }
227241 };
228242
@@ -254,11 +268,32 @@ void MainWindow::settings( enum ReadWriteMode mode ) {
254268 saved = settings.value( SETTING_SCRAMBLE_URL2 );
255269 scrambleUrl2 = saved.type() == QVariant::Invalid ? SCRAMBLE_URL2 : saved.toString();
256270
271+ saved = settings.value( SETTING_OPTIONAL1 );
272+ optional1 = saved.type() == QVariant::Invalid ? OPTIONAL1 : saved.toString();
273+ saved = settings.value( SETTING_OPTIONAL2 );
274+ optional2 = saved.type() == QVariant::Invalid ? OPTIONAL2 : saved.toString();
275+ saved = settings.value( SETTING_OPTIONAL3 );
276+ optional3 = saved.type() == QVariant::Invalid ? OPTIONAL3 : saved.toString();
277+ saved = settings.value( SETTING_OPTIONAL4 );
278+ optional4 = saved.type() == QVariant::Invalid ? OPTIONAL4 : saved.toString();
279+
280+ saved = settings.value( SETTING_OPT_TITLE1 );
281+ opt_title1 = saved.type() == QVariant::Invalid ? QString::fromUtf8( OPT_TITLE1 ) : saved.toString();
282+ saved = settings.value( SETTING_OPT_TITLE2 );
283+ opt_title2 = saved.type() == QVariant::Invalid ? QString::fromUtf8( OPT_TITLE2 ) : saved.toString();
284+ saved = settings.value( SETTING_OPT_TITLE3 );
285+ opt_title3 = saved.type() == QVariant::Invalid ? QString::fromUtf8( OPT_TITLE3 ) : saved.toString();
286+ saved = settings.value( SETTING_OPT_TITLE4 );
287+ opt_title4 = saved.type() == QVariant::Invalid ? QString::fromUtf8( OPT_TITLE4 ) : saved.toString();
288+
289+ ui->toolButton_optional1->setText( QString( opt_title1 ) );
290+ ui->toolButton_optional2->setText( QString( opt_title2 ) );
291+ ui->toolButton_optional3->setText( QString( opt_title3 ) );
292+ ui->toolButton_optional4->setText( QString( opt_title4 ) );
293+
257294 for ( int i = 0; checkBoxes[i].checkBox != NULL; i++ ) {
258295 checkBoxes[i].checkBox->setChecked( settings.value( checkBoxes[i].key, checkBoxes[i].defaultValue ).toBool() );
259296 }
260- for ( int i = 0; comboBoxes[i].comboBox != NULL; i++ )
261- comboBoxes[i].comboBox->setCurrentIndex( settings.value( comboBoxes[i].key, comboBoxes[i].defaultValue ).toInt() );
262297 for ( int i = 0; textComboBoxes[i].comboBox != NULL; i++ ) {
263298 QString extension = settings.value( textComboBoxes[i].key, textComboBoxes[i].defaultValue ).toString();
264299 textComboBoxes[i].comboBox->setCurrentIndex( textComboBoxes[i].comboBox->findText( extension ) );
@@ -272,11 +307,18 @@ void MainWindow::settings( enum ReadWriteMode mode ) {
272307 settings.setValue( SETTING_SCRAMBLE, scramble );
273308 settings.setValue( SETTING_SCRAMBLE_URL1, scrambleUrl1 );
274309 settings.setValue( SETTING_SCRAMBLE_URL2, scrambleUrl2 );
310+ settings.setValue( SETTING_OPTIONAL1, optional1 );
311+ settings.setValue( SETTING_OPTIONAL2, optional2 );
312+ settings.setValue( SETTING_OPTIONAL3, optional3 );
313+ settings.setValue( SETTING_OPTIONAL4, optional4 );
314+ settings.setValue( SETTING_OPT_TITLE1, opt_title1 );
315+ settings.setValue( SETTING_OPT_TITLE2, opt_title2 );
316+ settings.setValue( SETTING_OPT_TITLE3, opt_title3 );
317+ settings.setValue( SETTING_OPT_TITLE4, opt_title4 );
318+
275319 for ( int i = 0; checkBoxes[i].checkBox != NULL; i++ ) {
276320 settings.setValue( checkBoxes[i].key, checkBoxes[i].checkBox->isChecked() );
277321 }
278- for ( int i = 0; comboBoxes[i].comboBox != NULL; i++ )
279- settings.setValue( comboBoxes[i].key, comboBoxes[i].comboBox->currentIndex() );
280322 for ( int i = 0; textComboBoxes[i].comboBox != NULL; i++ )
281323 settings.setValue( textComboBoxes[i].key, textComboBoxes[i].comboBox->currentText() );
282324 }
@@ -304,9 +346,32 @@ void MainWindow::customizeSaveFolder() {
304346 }
305347
306348 void MainWindow::customizeScramble() {
307- ScrambleDialog dialog( scramble );
349+ ScrambleDialog dialog( opt_title1, opt_title2, opt_title3, opt_title4, optional1, optional2 , optional3, optional4 );
308350 dialog.exec();
309- scramble = dialog.scramble();
351+ opt_title1 = dialog.scramble();
352+ opt_title2 = dialog.scramble2();
353+ opt_title3 = dialog.scramble3();
354+ opt_title4 = dialog.scramble4();
355+ optional1 = dialog.scramble5();
356+ optional2 = dialog.scramble6();
357+ optional3 = dialog.scramble7();
358+ optional4 = dialog.scramble8();
359+
360+// ui->toolButton_optional1->setText( QString( opt_title1 ) );
361+// ui->toolButton_optional2->setText( QString( opt_title2 ) );
362+// ui->toolButton_optional3->setText( QString( opt_title3 ) );
363+// ui->toolButton_optional4->setText( QString( opt_title4 ) );
364+
365+
366+// if ( QString::compare( opt_title1, "" ) == true ) opt_title1 = OPT_TITLE1;
367+// if ( QString::compare( opt_title2, "" ) == true ) opt_title2 = OPT_TITLE2;
368+// if ( QString::compare( opt_title3, "" ) == true ) opt_title3 = OPT_TITLE3;
369+// if ( QString::compare( opt_title4, "" ) == true ) opt_title4 = OPT_TITLE4;
370+
371+// if ( optional1.isNull() == true ) opt_title1 = OPTIONAL1;
372+// if ( optional2.isNull() == true ) opt_title2 = OPTIONAL2;
373+// if ( optional3.isNull() == true ) opt_title3 = OPTIONAL3;
374+// if ( optional4.isNull() == true ) opt_title4 = OPTIONAL4;
310375 }
311376
312377 void MainWindow::download() { //「ダウンロード」または「キャンセル」ボタンが押されると呼び出される
--- a/mainwindow.h
+++ b/mainwindow.h
@@ -54,6 +54,14 @@ public:
5454 static QString scramble;
5555 static QString scrambleUrl1;
5656 static QString scrambleUrl2;
57+ static QString optional1;
58+ static QString optional2;
59+ static QString optional3;
60+ static QString optional4;
61+ static QString opt_title1;
62+ static QString opt_title2;
63+ static QString opt_title3;
64+ static QString opt_title4;
5765
5866 protected:
5967 virtual void closeEvent( QCloseEvent *event );
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -7,7 +7,7 @@
77 <x>0</x>
88 <y>0</y>
99 <width>540</width>
10- <height>500</height>
10+ <height>462</height>
1111 </rect>
1212 </property>
1313 <property name="sizePolicy">
@@ -19,13 +19,13 @@
1919 <property name="minimumSize">
2020 <size>
2121 <width>540</width>
22- <height>500</height>
22+ <height>462</height>
2323 </size>
2424 </property>
2525 <property name="maximumSize">
2626 <size>
2727 <width>540</width>
28- <height>500</height>
28+ <height>462</height>
2929 </size>
3030 </property>
3131 <property name="font">
@@ -34,7 +34,7 @@
3434 </font>
3535 </property>
3636 <property name="windowTitle">
37- <string>語学講座ダウンローダ</string>
37+ <string>語学講座ダウンローダ(FFU-Eng)</string>
3838 </property>
3939 <widget class="QWidget" name="centralWidget">
4040 <property name="sizePolicy">
@@ -49,14 +49,14 @@
4949 <x>10</x>
5050 <y>10</y>
5151 <width>521</width>
52- <height>437</height>
52+ <height>400</height>
5353 </rect>
5454 </property>
5555 <layout class="QGridLayout" name="gridLayout_3" rowstretch="0,0,0,0,0,0,0,0,0,0,0,0,0,0">
56- <item row="4" column="0">
57- <layout class="QHBoxLayout" name="horizontalLayout_18">
56+ <item row="0" column="0">
57+ <layout class="QHBoxLayout" name="horizontalLayout_14_0">
5858 <item>
59- <widget class="QToolButton" name="toolButton_kaiwa">
59+ <widget class="QToolButton" name="toolButton_basic0">
6060 <property name="sizePolicy">
6161 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
6262 <horstretch>0</horstretch>
@@ -69,7 +69,7 @@
6969 </font>
7070 </property>
7171 <property name="text">
72- <string>ラジオ英会話</string>
72+ <string>基礎英語0</string>
7373 </property>
7474 <property name="checkable">
7575 <bool>true</bool>
@@ -78,10 +78,10 @@
7878 </item>
7979 </layout>
8080 </item>
81- <item row="8" column="1">
82- <layout class="QHBoxLayout" name="horizontalLayout_13">
81+ <item row="0" column="1">
82+ <layout class="QHBoxLayout" name="horizontalLayout_14_1">
8383 <item>
84- <widget class="QToolButton" name="toolButton_russian">
84+ <widget class="QToolButton" name="toolButton_basic1">
8585 <property name="sizePolicy">
8686 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
8787 <horstretch>0</horstretch>
@@ -94,7 +94,7 @@
9494 </font>
9595 </property>
9696 <property name="text">
97- <string>まいにちロシア語</string>
97+ <string>基礎英語1</string>
9898 </property>
9999 <property name="checkable">
100100 <bool>true</bool>
@@ -103,10 +103,10 @@
103103 </item>
104104 </layout>
105105 </item>
106- <item row="5" column="0">
107- <layout class="QHBoxLayout" name="horizontalLayout_19">
106+ <item row="1" column="0">
107+ <layout class="QHBoxLayout" name="horizontalLayout_15">
108108 <item>
109- <widget class="QToolButton" name="toolButton_business1">
109+ <widget class="QToolButton" name="toolButton_basic2">
110110 <property name="sizePolicy">
111111 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
112112 <horstretch>0</horstretch>
@@ -119,7 +119,7 @@
119119 </font>
120120 </property>
121121 <property name="text">
122- <string>入門ビジネス英語</string>
122+ <string>基礎英語2</string>
123123 </property>
124124 <property name="checkable">
125125 <bool>true</bool>
@@ -128,20 +128,10 @@
128128 </item>
129129 </layout>
130130 </item>
131- <item row="10" column="0">
132- <widget class="Line" name="line_2">
133- <property name="lineWidth">
134- <number>2</number>
135- </property>
136- <property name="orientation">
137- <enum>Qt::Horizontal</enum>
138- </property>
139- </widget>
140- </item>
141- <item row="7" column="1">
142- <layout class="QHBoxLayout" name="horizontalLayout_7">
131+ <item row="1" column="1">
132+ <layout class="QHBoxLayout" name="horizontalLayout_16">
143133 <item>
144- <widget class="QToolButton" name="toolButton_spanish">
134+ <widget class="QToolButton" name="toolButton_basic3">
145135 <property name="sizePolicy">
146136 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
147137 <horstretch>0</horstretch>
@@ -154,7 +144,7 @@
154144 </font>
155145 </property>
156146 <property name="text">
157- <string>まいにちスペイン語</string>
147+ <string>基礎英語3</string>
158148 </property>
159149 <property name="checkable">
160150 <bool>true</bool>
@@ -163,10 +153,10 @@
163153 </item>
164154 </layout>
165155 </item>
166- <item row="11" column="0">
167- <layout class="QHBoxLayout" name="horizontalLayout_22">
156+ <item row="2" column="0">
157+ <layout class="QHBoxLayout" name="horizontalLayout_17">
168158 <item>
169- <widget class="QToolButton" name="toolButton_skip">
159+ <widget class="QToolButton" name="toolButton_timetrial">
170160 <property name="sizePolicy">
171161 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
172162 <horstretch>0</horstretch>
@@ -179,22 +169,19 @@
179169 </font>
180170 </property>
181171 <property name="text">
182- <string>既存のファイルはスキップ</string>
172+ <string>英会話タイムトライアル</string>
183173 </property>
184174 <property name="checkable">
185175 <bool>true</bool>
186176 </property>
187- <property name="checked">
188- <bool>false</bool>
189- </property>
190177 </widget>
191178 </item>
192179 </layout>
193180 </item>
194- <item row="7" column="0">
181+ <item row="2" column="1">
195182 <layout class="QHBoxLayout" name="horizontalLayout_21">
196183 <item>
197- <widget class="QToolButton" name="toolButton_kouryaku">
184+ <widget class="QToolButton" name="toolButton_gendai">
198185 <property name="sizePolicy">
199186 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
200187 <horstretch>0</horstretch>
@@ -207,7 +194,7 @@
207194 </font>
208195 </property>
209196 <property name="text">
210- <string>攻略英語リスニング</string>
197+ <string>高校生からはじめる「現代英語」</string>
211198 </property>
212199 <property name="checkable">
213200 <bool>true</bool>
@@ -216,13 +203,10 @@
216203 </item>
217204 </layout>
218205 </item>
219- <item row="13" column="0">
220- <layout class="QHBoxLayout" name="horizontalLayout_28"/>
221- </item>
222- <item row="13" column="1">
223- <layout class="QHBoxLayout" name="horizontalLayout_25">
206+ <item row="3" column="0">
207+ <layout class="QHBoxLayout" name="horizontalLayout_18">
224208 <item>
225- <widget class="QPushButton" name="downloadButton">
209+ <widget class="QToolButton" name="toolButton_kaiwa">
226210 <property name="sizePolicy">
227211 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
228212 <horstretch>0</horstretch>
@@ -235,16 +219,19 @@
235219 </font>
236220 </property>
237221 <property name="text">
238- <string>ダウンロード</string>
222+ <string>ラジオ英会話</string>
223+ </property>
224+ <property name="checkable">
225+ <bool>true</bool>
239226 </property>
240227 </widget>
241228 </item>
242229 </layout>
243230 </item>
244- <item row="11" column="1">
245- <layout class="QHBoxLayout" name="horizontalLayout_26">
231+ <item row="3" column="1">
232+ <layout class="QHBoxLayout" name="horizontalLayout_27">
246233 <item>
247- <widget class="QLabel" name="label">
234+ <widget class="QToolButton" name="toolButton_gakusyu">
248235 <property name="sizePolicy">
249236 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
250237 <horstretch>0</horstretch>
@@ -256,88 +243,20 @@
256243 <pointsize>11</pointsize>
257244 </font>
258245 </property>
259- <property name="layoutDirection">
260- <enum>Qt::LeftToRight</enum>
261- </property>
262246 <property name="text">
263- <string>     拡張子:</string>
264- </property>
265- <property name="alignment">
266- <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
247+ <string>遠山顕の英会話楽習</string>
267248 </property>
268- </widget>
269- </item>
270- <item>
271- <widget class="QComboBox" name="comboBox_extension">
272- <property name="sizePolicy">
273- <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
274- <horstretch>0</horstretch>
275- <verstretch>0</verstretch>
276- </sizepolicy>
277- </property>
278- <property name="font">
279- <font>
280- <pointsize>11</pointsize>
281- </font>
249+ <property name="checkable">
250+ <bool>true</bool>
282251 </property>
283- <item>
284- <property name="text">
285- <string>3g2</string>
286- </property>
287- </item>
288- <item>
289- <property name="text">
290- <string>3gp</string>
291- </property>
292- </item>
293- <item>
294- <property name="text">
295- <string>aac</string>
296- </property>
297- </item>
298- <item>
299- <property name="text">
300- <string>avi</string>
301- </property>
302- </item>
303- <item>
304- <property name="text">
305- <string>m4a</string>
306- </property>
307- </item>
308- <item>
309- <property name="text">
310- <string>mka</string>
311- </property>
312- </item>
313- <item>
314- <property name="text">
315- <string>mkv</string>
316- </property>
317- </item>
318- <item>
319- <property name="text">
320- <string>mov</string>
321- </property>
322- </item>
323- <item>
324- <property name="text">
325- <string>mp3</string>
326- </property>
327- </item>
328- <item>
329- <property name="text">
330- <string>ts</string>
331- </property>
332- </item>
333252 </widget>
334253 </item>
335254 </layout>
336255 </item>
337- <item row="8" column="0">
338- <layout class="QHBoxLayout" name="horizontalLayout_27">
256+ <item row="4" column="0">
257+ <layout class="QHBoxLayout" name="horizontalLayout_19">
339258 <item>
340- <widget class="QToolButton" name="toolButton_yomu">
259+ <widget class="QToolButton" name="toolButton_business1">
341260 <property name="sizePolicy">
342261 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
343262 <horstretch>0</horstretch>
@@ -350,7 +269,7 @@
350269 </font>
351270 </property>
352271 <property name="text">
353- <string>英語で読む村上春樹</string>
272+ <string>入門ビジネス英語</string>
354273 </property>
355274 <property name="checkable">
356275 <bool>true</bool>
@@ -359,10 +278,10 @@
359278 </item>
360279 </layout>
361280 </item>
362- <item row="6" column="1">
363- <layout class="QHBoxLayout" name="horizontalLayout_6">
281+ <item row="4" column="1">
282+ <layout class="QHBoxLayout" name="horizontalLayout_20">
364283 <item>
365- <widget class="QToolButton" name="toolButton_german">
284+ <widget class="QToolButton" name="toolButton_business2">
366285 <property name="sizePolicy">
367286 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
368287 <horstretch>0</horstretch>
@@ -375,7 +294,7 @@
375294 </font>
376295 </property>
377296 <property name="text">
378- <string>まいにちドイツ語</string>
297+ <string>実践ビジネス英語</string>
379298 </property>
380299 <property name="checkable">
381300 <bool>true</bool>
@@ -384,10 +303,10 @@
384303 </item>
385304 </layout>
386305 </item>
387- <item row="0" column="1">
388- <layout class="QHBoxLayout" name="horizontalLayout_2">
306+ <item row="5" column="0">
307+ <layout class="QHBoxLayout" name="horizontalLayout_29">
389308 <item>
390- <widget class="QToolButton" name="toolButton_chinese">
309+ <widget class="QToolButton" name="toolButton_enjoy">
391310 <property name="sizePolicy">
392311 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
393312 <horstretch>0</horstretch>
@@ -400,7 +319,7 @@
400319 </font>
401320 </property>
402321 <property name="text">
403- <string>まいにち中国語</string>
322+ <string>エンジョイ・シンプル・イングリッシュ</string>
404323 </property>
405324 <property name="checkable">
406325 <bool>true</bool>
@@ -409,10 +328,10 @@
409328 </item>
410329 </layout>
411330 </item>
412- <item row="0" column="0">
331+ <item row="5" column="1">
413332 <layout class="QHBoxLayout" name="horizontalLayout_14">
414333 <item>
415- <widget class="QToolButton" name="toolButton_basic1">
334+ <widget class="QToolButton" name="toolButton_vrradio">
416335 <property name="sizePolicy">
417336 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
418337 <horstretch>0</horstretch>
@@ -425,7 +344,7 @@
425344 </font>
426345 </property>
427346 <property name="text">
428- <string>基礎英語1</string>
347+ <string>ボキャブライダー</string>
429348 </property>
430349 <property name="checkable">
431350 <bool>true</bool>
@@ -434,12 +353,22 @@
434353 </item>
435354 </layout>
436355 </item>
437- <item row="10" column="1">
438- <layout class="QHBoxLayout" name="horizontalLayout_10">
356+ <item row="6" column="0">
357+ <widget class="Line" name="line_2_12">
358+ <property name="lineWidth">
359+ <number>1</number>
360+ </property>
361+ <property name="orientation">
362+ <enum>Qt::Horizontal</enum>
363+ </property>
364+ </widget>
365+ </item>
366+ <item row="6" column="1">
367+ <layout class="QHBoxLayout" name="horizontalLayout_10_12">
439368 <item>
440- <widget class="Line" name="line">
369+ <widget class="Line" name="line_1_02">
441370 <property name="lineWidth">
442- <number>2</number>
371+ <number>1</number>
443372 </property>
444373 <property name="orientation">
445374 <enum>Qt::Horizontal</enum>
@@ -448,10 +377,10 @@
448377 </item>
449378 </layout>
450379 </item>
451- <item row="3" column="0">
452- <layout class="QHBoxLayout" name="horizontalLayout_17">
380+ <item row="7" column="0">
381+ <layout class="QHBoxLayout" name="horizontalLayout_142">
453382 <item>
454- <widget class="QToolButton" name="toolButton_timetrial">
383+ <widget class="QToolButton" name="toolButton_vrradio1">
455384 <property name="sizePolicy">
456385 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
457386 <horstretch>0</horstretch>
@@ -464,7 +393,7 @@
464393 </font>
465394 </property>
466395 <property name="text">
467- <string>英会話タイムトライアル</string>
396+ <string>ボキャブライダー(過去)</string>
468397 </property>
469398 <property name="checkable">
470399 <bool>true</bool>
@@ -473,10 +402,10 @@
473402 </item>
474403 </layout>
475404 </item>
476- <item row="1" column="0">
477- <layout class="QHBoxLayout" name="horizontalLayout_15">
405+ <item row="7" column="1">
406+ <layout class="QHBoxLayout" name="horizontalLayout_144">
478407 <item>
479- <widget class="QToolButton" name="toolButton_basic2">
408+ <widget class="QToolButton" name="toolButton_vrradio2">
480409 <property name="sizePolicy">
481410 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
482411 <horstretch>0</horstretch>
@@ -489,7 +418,7 @@
489418 </font>
490419 </property>
491420 <property name="text">
492- <string>基礎英語2</string>
421+ <string>ボキャブライダー(今年度)</string>
493422 </property>
494423 <property name="checkable">
495424 <bool>true</bool>
@@ -498,10 +427,34 @@
498427 </item>
499428 </layout>
500429 </item>
501- <item row="2" column="0">
502- <layout class="QHBoxLayout" name="horizontalLayout_16">
430+ <item row="8" column="0">
431+ <widget class="Line" name="line_2_1">
432+ <property name="lineWidth">
433+ <number>2</number>
434+ </property>
435+ <property name="orientation">
436+ <enum>Qt::Horizontal</enum>
437+ </property>
438+ </widget>
439+ </item>
440+ <item row="8" column="1">
441+ <layout class="QHBoxLayout" name="horizontalLayout_10_1">
503442 <item>
504- <widget class="QToolButton" name="toolButton_basic3">
443+ <widget class="Line" name="line_1_0">
444+ <property name="lineWidth">
445+ <number>2</number>
446+ </property>
447+ <property name="orientation">
448+ <enum>Qt::Horizontal</enum>
449+ </property>
450+ </widget>
451+ </item>
452+ </layout>
453+ </item>
454+ <item row="9" column="0">
455+ <layout class="QHBoxLayout" name="horizontalLayout_411">
456+ <item>
457+ <widget class="QToolButton" name="toolButton_optional1">
505458 <property name="sizePolicy">
506459 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
507460 <horstretch>0</horstretch>
@@ -514,7 +467,7 @@
514467 </font>
515468 </property>
516469 <property name="text">
517- <string>基礎英語3</string>
470+ <string>任意講座1</string>
518471 </property>
519472 <property name="checkable">
520473 <bool>true</bool>
@@ -523,10 +476,10 @@
523476 </item>
524477 </layout>
525478 </item>
526- <item row="5" column="1">
527- <layout class="QHBoxLayout" name="horizontalLayout_11">
479+ <item row="9" column="1">
480+ <layout class="QHBoxLayout" name="horizontalLayout_422">
528481 <item>
529- <widget class="QToolButton" name="toolButton_levelup_hangeul">
482+ <widget class="QToolButton" name="toolButton_optional2">
530483 <property name="sizePolicy">
531484 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
532485 <horstretch>0</horstretch>
@@ -539,7 +492,7 @@
539492 </font>
540493 </property>
541494 <property name="text">
542- <string>レベルアップハングル講座</string>
495+ <string>任意講座2</string>
543496 </property>
544497 <property name="checkable">
545498 <bool>true</bool>
@@ -548,10 +501,10 @@
548501 </item>
549502 </layout>
550503 </item>
551- <item row="1" column="1">
552- <layout class="QHBoxLayout" name="horizontalLayout_9">
504+ <item row="10" column="0">
505+ <layout class="QHBoxLayout" name="horizontalLayout_421">
553506 <item>
554- <widget class="QToolButton" name="toolButton_levelup_chinese">
507+ <widget class="QToolButton" name="toolButton_optional3">
555508 <property name="sizePolicy">
556509 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
557510 <horstretch>0</horstretch>
@@ -564,7 +517,7 @@
564517 </font>
565518 </property>
566519 <property name="text">
567- <string>レベルアップ中国語</string>
520+ <string>任意講座3</string>
568521 </property>
569522 <property name="checkable">
570523 <bool>true</bool>
@@ -573,10 +526,10 @@
573526 </item>
574527 </layout>
575528 </item>
576- <item row="3" column="1">
577- <layout class="QHBoxLayout" name="horizontalLayout_4">
529+ <item row="10" column="1">
530+ <layout class="QHBoxLayout" name="horizontalLayout_432">
578531 <item>
579- <widget class="QToolButton" name="toolButton_italian">
532+ <widget class="QToolButton" name="toolButton_optional4">
580533 <property name="sizePolicy">
581534 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
582535 <horstretch>0</horstretch>
@@ -589,7 +542,7 @@
589542 </font>
590543 </property>
591544 <property name="text">
592- <string>まいにちイタリア語</string>
545+ <string>任意講座4</string>
593546 </property>
594547 <property name="checkable">
595548 <bool>true</bool>
@@ -598,10 +551,34 @@
598551 </item>
599552 </layout>
600553 </item>
601- <item row="2" column="1">
602- <layout class="QHBoxLayout" name="horizontalLayout_3">
554+ <item row="14" column="0">
555+ <widget class="Line" name="line_2_2">
556+ <property name="lineWidth">
557+ <number>1</number>
558+ </property>
559+ <property name="orientation">
560+ <enum>Qt::Horizontal</enum>
561+ </property>
562+ </widget>
563+ </item>
564+ <item row="14" column="1">
565+ <layout class="QHBoxLayout" name="horizontalLayout_10_2">
566+ <item>
567+ <widget class="Line" name="line_1_2">
568+ <property name="lineWidth">
569+ <number>1</number>
570+ </property>
571+ <property name="orientation">
572+ <enum>Qt::Horizontal</enum>
573+ </property>
574+ </widget>
575+ </item>
576+ </layout>
577+ </item>
578+ <item row="17" column="0">
579+ <layout class="QHBoxLayout" name="horizontalLayout_22">
603580 <item>
604- <widget class="QToolButton" name="toolButton_french">
581+ <widget class="QToolButton" name="toolButton_skip">
605582 <property name="sizePolicy">
606583 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
607584 <horstretch>0</horstretch>
@@ -614,19 +591,22 @@
614591 </font>
615592 </property>
616593 <property name="text">
617- <string>まいにちフランス語</string>
594+ <string>既存のファイルはスキップ</string>
618595 </property>
619596 <property name="checkable">
620597 <bool>true</bool>
621598 </property>
599+ <property name="checked">
600+ <bool>false</bool>
601+ </property>
622602 </widget>
623603 </item>
624604 </layout>
625605 </item>
626- <item row="4" column="1">
627- <layout class="QHBoxLayout" name="horizontalLayout_5">
606+ <item row="18" column="1">
607+ <layout class="QHBoxLayout" name="horizontalLayout_25">
628608 <item>
629- <widget class="QToolButton" name="toolButton_hangeul">
609+ <widget class="QPushButton" name="downloadButton">
630610 <property name="sizePolicy">
631611 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
632612 <horstretch>0</horstretch>
@@ -635,23 +615,20 @@
635615 </property>
636616 <property name="font">
637617 <font>
638- <pointsize>11</pointsize>
618+ <pointsize>10</pointsize>
639619 </font>
640620 </property>
641621 <property name="text">
642- <string>まいにちハングル講座</string>
643- </property>
644- <property name="checkable">
645- <bool>true</bool>
622+ <string>ダウンロード</string>
646623 </property>
647624 </widget>
648625 </item>
649626 </layout>
650627 </item>
651- <item row="9" column="0">
652- <layout class="QHBoxLayout" name="horizontalLayout_29">
628+ <item row="17" column="1">
629+ <layout class="QHBoxLayout" name="horizontalLayout_26">
653630 <item>
654- <widget class="QToolButton" name="toolButton_enjoy">
631+ <widget class="QLabel" name="label_ext">
655632 <property name="sizePolicy">
656633 <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
657634 <horstretch>0</horstretch>
@@ -663,22 +640,21 @@
663640 <pointsize>11</pointsize>
664641 </font>
665642 </property>
643+ <property name="layoutDirection">
644+ <enum>Qt::LeftToRight</enum>
645+ </property>
666646 <property name="text">
667- <string>エンジョイ・シンプル・イングリッシュ</string>
647+ <string>     拡張子:</string>
668648 </property>
669- <property name="checkable">
670- <bool>true</bool>
649+ <property name="alignment">
650+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
671651 </property>
672652 </widget>
673653 </item>
674- </layout>
675- </item>
676- <item row="6" column="0">
677- <layout class="QHBoxLayout" name="horizontalLayout_20">
678654 <item>
679- <widget class="QToolButton" name="toolButton_business2">
655+ <widget class="QComboBox" name="comboBox_extension">
680656 <property name="sizePolicy">
681- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
657+ <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
682658 <horstretch>0</horstretch>
683659 <verstretch>0</verstretch>
684660 </sizepolicy>
@@ -688,254 +664,62 @@
688664 <pointsize>11</pointsize>
689665 </font>
690666 </property>
691- <property name="text">
692- <string>実践ビジネス英語</string>
693- </property>
694- <property name="checkable">
695- <bool>true</bool>
696- </property>
667+ <item>
668+ <property name="text">
669+ <string>3g2</string>
670+ </property>
671+ </item>
672+ <item>
673+ <property name="text">
674+ <string>3gp</string>
675+ </property>
676+ </item>
677+ <item>
678+ <property name="text">
679+ <string>aac</string>
680+ </property>
681+ </item>
682+ <item>
683+ <property name="text">
684+ <string>avi</string>
685+ </property>
686+ </item>
687+ <item>
688+ <property name="text">
689+ <string>m4a</string>
690+ </property>
691+ </item>
692+ <item>
693+ <property name="text">
694+ <string>mka</string>
695+ </property>
696+ </item>
697+ <item>
698+ <property name="text">
699+ <string>mkv</string>
700+ </property>
701+ </item>
702+ <item>
703+ <property name="text">
704+ <string>mov</string>
705+ </property>
706+ </item>
707+ <item>
708+ <property name="text">
709+ <string>mp3</string>
710+ </property>
711+ </item>
712+ <item>
713+ <property name="text">
714+ <string>ts</string>
715+ </property>
716+ </item>
697717 </widget>
698718 </item>
699719 </layout>
700720 </item>
701721 </layout>
702722 </widget>
703- <widget class="QCheckBox" name="checkBox_this_week">
704- <property name="enabled">
705- <bool>false</bool>
706- </property>
707- <property name="geometry">
708- <rect>
709- <x>10</x>
710- <y>720</y>
711- <width>257</width>
712- <height>20</height>
713- </rect>
714- </property>
715- <property name="text">
716- <string>公開中のストリーミング</string>
717- </property>
718- <property name="checked">
719- <bool>true</bool>
720- </property>
721- </widget>
722- <widget class="QCheckBox" name="checkBox_next_week">
723- <property name="enabled">
724- <bool>false</bool>
725- </property>
726- <property name="geometry">
727- <rect>
728- <x>281</x>
729- <y>712</y>
730- <width>257</width>
731- <height>20</height>
732- </rect>
733- </property>
734- <property name="text">
735- <string>次週のストリーミング</string>
736- </property>
737- <property name="checked">
738- <bool>false</bool>
739- </property>
740- </widget>
741- <widget class="QLabel" name="label_2">
742- <property name="geometry">
743- <rect>
744- <x>491</x>
745- <y>742</y>
746- <width>45</width>
747- <height>16</height>
748- </rect>
749- </property>
750- <property name="sizePolicy">
751- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
752- <horstretch>0</horstretch>
753- <verstretch>0</verstretch>
754- </sizepolicy>
755- </property>
756- <property name="text">
757- <string>日分</string>
758- </property>
759- </widget>
760- <widget class="QLineEdit" name="past_days">
761- <property name="enabled">
762- <bool>false</bool>
763- </property>
764- <property name="geometry">
765- <rect>
766- <x>436</x>
767- <y>739</y>
768- <width>45</width>
769- <height>22</height>
770- </rect>
771- </property>
772- <property name="sizePolicy">
773- <sizepolicy hsizetype="Ignored" vsizetype="Fixed">
774- <horstretch>0</horstretch>
775- <verstretch>0</verstretch>
776- </sizepolicy>
777- </property>
778- <property name="text">
779- <string>5</string>
780- </property>
781- <property name="alignment">
782- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
783- </property>
784- </widget>
785- <widget class="QCheckBox" name="checkBox_past_week">
786- <property name="enabled">
787- <bool>false</bool>
788- </property>
789- <property name="geometry">
790- <rect>
791- <x>280</x>
792- <y>740</y>
793- <width>155</width>
794- <height>20</height>
795- </rect>
796- </property>
797- <property name="text">
798- <string>過去のストリーミング</string>
799- </property>
800- <property name="checked">
801- <bool>false</bool>
802- </property>
803- </widget>
804- <widget class="QCheckBox" name="checkBox_13">
805- <property name="enabled">
806- <bool>false</bool>
807- </property>
808- <property name="geometry">
809- <rect>
810- <x>10</x>
811- <y>690</y>
812- <width>247</width>
813- <height>20</height>
814- </rect>
815- </property>
816- <property name="text">
817- <string>リトル・チャロ2</string>
818- </property>
819- <property name="checkable">
820- <bool>true</bool>
821- </property>
822- </widget>
823- <widget class="QWidget" name="layoutWidget">
824- <property name="geometry">
825- <rect>
826- <x>10</x>
827- <y>610</y>
828- <width>268</width>
829- <height>27</height>
830- </rect>
831- </property>
832- <layout class="QHBoxLayout" name="horizontalLayout">
833- <item>
834- <widget class="QCheckBox" name="checkBox_14">
835- <property name="enabled">
836- <bool>false</bool>
837- </property>
838- <property name="text">
839- <string>ニュースで英会話 </string>
840- </property>
841- </widget>
842- </item>
843- <item>
844- <widget class="QComboBox" name="comboBox_enews">
845- <property name="enabled">
846- <bool>false</bool>
847- </property>
848- <property name="frame">
849- <bool>true</bool>
850- </property>
851- <item>
852- <property name="text">
853- <string>音声と動画</string>
854- </property>
855- </item>
856- <item>
857- <property name="text">
858- <string>音声のみ</string>
859- </property>
860- </item>
861- <item>
862- <property name="text">
863- <string>動画のみ</string>
864- </property>
865- </item>
866- </widget>
867- </item>
868- </layout>
869- </widget>
870- <widget class="QWidget" name="layoutWidget">
871- <property name="geometry">
872- <rect>
873- <x>10</x>
874- <y>650</y>
875- <width>268</width>
876- <height>20</height>
877- </rect>
878- </property>
879- <layout class="QHBoxLayout" name="horizontalLayout_8">
880- <item>
881- <widget class="QCheckBox" name="checkBox_15">
882- <property name="enabled">
883- <bool>false</bool>
884- </property>
885- <property name="text">
886- <string>ニュースで英会話(読み直し音声)</string>
887- </property>
888- </widget>
889- </item>
890- </layout>
891- </widget>
892- <widget class="QWidget" name="layoutWidget">
893- <property name="geometry">
894- <rect>
895- <x>300</x>
896- <y>610</y>
897- <width>270</width>
898- <height>27</height>
899- </rect>
900- </property>
901- <layout class="QHBoxLayout" name="horizontalLayout_12">
902- <item>
903- <widget class="QCheckBox" name="checkBox_shower">
904- <property name="enabled">
905- <bool>false</bool>
906- </property>
907- <property name="text">
908- <string>ABCニュースシャワー</string>
909- </property>
910- </widget>
911- </item>
912- <item>
913- <widget class="QComboBox" name="comboBox_shower">
914- <property name="enabled">
915- <bool>false</bool>
916- </property>
917- <property name="frame">
918- <bool>true</bool>
919- </property>
920- <item>
921- <property name="text">
922- <string>音声と動画</string>
923- </property>
924- </item>
925- <item>
926- <property name="text">
927- <string>音声のみ</string>
928- </property>
929- </item>
930- <item>
931- <property name="text">
932- <string>動画のみ</string>
933- </property>
934- </item>
935- </widget>
936- </item>
937- </layout>
938- </widget>
939723 <widget class="QLabel" name="label_3">
940724 <property name="enabled">
941725 <bool>false</bool>
@@ -958,89 +742,6 @@
958742 <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
959743 </property>
960744 </widget>
961- <widget class="QWidget" name="layoutWidget">
962- <property name="geometry">
963- <rect>
964- <x>300</x>
965- <y>650</y>
966- <width>269</width>
967- <height>26</height>
968- </rect>
969- </property>
970- <layout class="QHBoxLayout" name="horizontalLayout_24">
971- <item>
972- <widget class="QCheckBox" name="checkBox_enews_past">
973- <property name="enabled">
974- <bool>false</bool>
975- </property>
976- <property name="text">
977- <string>「ニュースで英会話」過去分</string>
978- </property>
979- <property name="checked">
980- <bool>false</bool>
981- </property>
982- </widget>
983- </item>
984- </layout>
985- </widget>
986- <widget class="QWidget" name="layoutWidget">
987- <property name="geometry">
988- <rect>
989- <x>20</x>
990- <y>750</y>
991- <width>209</width>
992- <height>32</height>
993- </rect>
994- </property>
995- <layout class="QHBoxLayout" name="horizontalLayout_23">
996- <item>
997- <widget class="QCheckBox" name="checkBox_keep_on_error">
998- <property name="enabled">
999- <bool>false</bool>
1000- </property>
1001- <property name="text">
1002- <string>ダウンロード未完でも変換</string>
1003- </property>
1004- <property name="checked">
1005- <bool>false</bool>
1006- </property>
1007- </widget>
1008- </item>
1009- </layout>
1010- </widget>
1011- <widget class="QToolButton" name="toolButton_detailed_message">
1012- <property name="enabled">
1013- <bool>false</bool>
1014- </property>
1015- <property name="geometry">
1016- <rect>
1017- <x>10</x>
1018- <y>570</y>
1019- <width>252</width>
1020- <height>30</height>
1021- </rect>
1022- </property>
1023- <property name="sizePolicy">
1024- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
1025- <horstretch>0</horstretch>
1026- <verstretch>0</verstretch>
1027- </sizepolicy>
1028- </property>
1029- <property name="font">
1030- <font>
1031- <pointsize>12</pointsize>
1032- </font>
1033- </property>
1034- <property name="text">
1035- <string>詳細なメッセージ</string>
1036- </property>
1037- <property name="checkable">
1038- <bool>true</bool>
1039- </property>
1040- <property name="checked">
1041- <bool>false</bool>
1042- </property>
1043- </widget>
1044745 </widget>
1045746 <widget class="QMenuBar" name="menuBar">
1046747 <property name="geometry">
@@ -1060,40 +761,27 @@
1060761 </widget>
1061762 <layoutdefault spacing="6" margin="11"/>
1062763 <tabstops>
764+ <tabstop>toolButton_basic0</tabstop>
1063765 <tabstop>toolButton_basic1</tabstop>
1064766 <tabstop>toolButton_basic2</tabstop>
1065767 <tabstop>toolButton_basic3</tabstop>
1066768 <tabstop>toolButton_timetrial</tabstop>
769+ <tabstop>toolButton_gendai</tabstop>
1067770 <tabstop>toolButton_kaiwa</tabstop>
771+ <tabstop>toolButton_gakusyu</tabstop>
1068772 <tabstop>toolButton_business1</tabstop>
1069773 <tabstop>toolButton_business2</tabstop>
1070- <tabstop>toolButton_kouryaku</tabstop>
1071- <tabstop>toolButton_yomu</tabstop>
1072774 <tabstop>toolButton_enjoy</tabstop>
1073- <tabstop>toolButton_chinese</tabstop>
1074- <tabstop>toolButton_levelup_chinese</tabstop>
1075- <tabstop>toolButton_french</tabstop>
1076- <tabstop>toolButton_italian</tabstop>
1077- <tabstop>toolButton_hangeul</tabstop>
1078- <tabstop>toolButton_levelup_hangeul</tabstop>
1079- <tabstop>toolButton_german</tabstop>
1080- <tabstop>toolButton_spanish</tabstop>
1081- <tabstop>toolButton_russian</tabstop>
775+ <tabstop>toolButton_vrradio</tabstop>
776+ <tabstop>toolButton_vrradio1</tabstop>
777+ <tabstop>toolButton_vrradio2</tabstop>
778+ <tabstop>toolButton_optional1</tabstop>
779+ <tabstop>toolButton_optional2</tabstop>
780+ <tabstop>toolButton_optional3</tabstop>
781+ <tabstop>toolButton_optional4</tabstop>
1082782 <tabstop>toolButton_skip</tabstop>
1083783 <tabstop>comboBox_extension</tabstop>
1084784 <tabstop>downloadButton</tabstop>
1085- <tabstop>past_days</tabstop>
1086- <tabstop>comboBox_enews</tabstop>
1087- <tabstop>checkBox_next_week</tabstop>
1088- <tabstop>checkBox_15</tabstop>
1089- <tabstop>checkBox_14</tabstop>
1090- <tabstop>checkBox_this_week</tabstop>
1091- <tabstop>checkBox_13</tabstop>
1092- <tabstop>checkBox_shower</tabstop>
1093- <tabstop>comboBox_shower</tabstop>
1094- <tabstop>checkBox_enews_past</tabstop>
1095- <tabstop>checkBox_keep_on_error</tabstop>
1096- <tabstop>checkBox_past_week</tabstop>
1097785 </tabstops>
1098786 <resources/>
1099787 <connections>
@@ -1114,6 +802,22 @@
1114802 </hints>
1115803 </connection>
1116804 <connection>
805+ <sender>toolButton_basic0</sender>
806+ <signal>toggled(bool)</signal>
807+ <receiver>MainWindowClass</receiver>
808+ <slot>toggled(bool)</slot>
809+ <hints>
810+ <hint type="sourcelabel">
811+ <x>20</x>
812+ <y>47</y>
813+ </hint>
814+ <hint type="destinationlabel">
815+ <x>92</x>
816+ <y>503</y>
817+ </hint>
818+ </hints>
819+ </connection>
820+ <connection>
1117821 <sender>toolButton_basic1</sender>
1118822 <signal>toggled(bool)</signal>
1119823 <receiver>MainWindowClass</receiver>
@@ -1226,7 +930,7 @@
1226930 </hints>
1227931 </connection>
1228932 <connection>
1229- <sender>toolButton_kouryaku</sender>
933+ <sender>toolButton_gendai</sender>
1230934 <signal>toggled(bool)</signal>
1231935 <receiver>MainWindowClass</receiver>
1232936 <slot>toggled(bool)</slot>
@@ -1242,7 +946,7 @@
1242946 </hints>
1243947 </connection>
1244948 <connection>
1245- <sender>toolButton_yomu</sender>
949+ <sender>toolButton_gakusyu</sender>
1246950 <signal>toggled(bool)</signal>
1247951 <receiver>MainWindowClass</receiver>
1248952 <slot>toggled(bool)</slot>
@@ -1274,6 +978,118 @@
1274978 </hints>
1275979 </connection>
1276980 <connection>
981+ <sender>toolButton_vrradio</sender>
982+ <signal>toggled(bool)</signal>
983+ <receiver>MainWindowClass</receiver>
984+ <slot>toggled(bool)</slot>
985+ <hints>
986+ <hint type="sourcelabel">
987+ <x>232</x>
988+ <y>378</y>
989+ </hint>
990+ <hint type="destinationlabel">
991+ <x>211</x>
992+ <y>602</y>
993+ </hint>
994+ </hints>
995+ </connection>
996+ <connection>
997+ <sender>toolButton_vrradio1</sender>
998+ <signal>toggled(bool)</signal>
999+ <receiver>MainWindowClass</receiver>
1000+ <slot>toggled(bool)</slot>
1001+ <hints>
1002+ <hint type="sourcelabel">
1003+ <x>232</x>
1004+ <y>378</y>
1005+ </hint>
1006+ <hint type="destinationlabel">
1007+ <x>211</x>
1008+ <y>602</y>
1009+ </hint>
1010+ </hints>
1011+ </connection>
1012+ <connection>
1013+ <sender>toolButton_vrradio2</sender>
1014+ <signal>toggled(bool)</signal>
1015+ <receiver>MainWindowClass</receiver>
1016+ <slot>toggled(bool)</slot>
1017+ <hints>
1018+ <hint type="sourcelabel">
1019+ <x>232</x>
1020+ <y>378</y>
1021+ </hint>
1022+ <hint type="destinationlabel">
1023+ <x>211</x>
1024+ <y>602</y>
1025+ </hint>
1026+ </hints>
1027+ </connection>
1028+ <connection>
1029+ <sender>toolButton_optional1</sender>
1030+ <signal>toggled(bool)</signal>
1031+ <receiver>MainWindowClass</receiver>
1032+ <slot>toggled(bool)</slot>
1033+ <hints>
1034+ <hint type="sourcelabel">
1035+ <x>314</x>
1036+ <y>194</y>
1037+ </hint>
1038+ <hint type="destinationlabel">
1039+ <x>387</x>
1040+ <y>587</y>
1041+ </hint>
1042+ </hints>
1043+ </connection>
1044+ <connection>
1045+ <sender>toolButton_optional2</sender>
1046+ <signal>toggled(bool)</signal>
1047+ <receiver>MainWindowClass</receiver>
1048+ <slot>toggled(bool)</slot>
1049+ <hints>
1050+ <hint type="sourcelabel">
1051+ <x>314</x>
1052+ <y>194</y>
1053+ </hint>
1054+ <hint type="destinationlabel">
1055+ <x>387</x>
1056+ <y>587</y>
1057+ </hint>
1058+ </hints>
1059+ </connection>
1060+ <connection>
1061+ <sender>toolButton_optional3</sender>
1062+ <signal>toggled(bool)</signal>
1063+ <receiver>MainWindowClass</receiver>
1064+ <slot>toggled(bool)</slot>
1065+ <hints>
1066+ <hint type="sourcelabel">
1067+ <x>314</x>
1068+ <y>194</y>
1069+ </hint>
1070+ <hint type="destinationlabel">
1071+ <x>387</x>
1072+ <y>587</y>
1073+ </hint>
1074+ </hints>
1075+ </connection>
1076+ <connection>
1077+ <sender>toolButton_optional4</sender>
1078+ <signal>toggled(bool)</signal>
1079+ <receiver>MainWindowClass</receiver>
1080+ <slot>toggled(bool)</slot>
1081+ <hints>
1082+ <hint type="sourcelabel">
1083+ <x>314</x>
1084+ <y>194</y>
1085+ </hint>
1086+ <hint type="destinationlabel">
1087+ <x>387</x>
1088+ <y>587</y>
1089+ </hint>
1090+ </hints>
1091+ </connection>
1092+ <connection>
12771093 <sender>toolButton_skip</sender>
12781094 <signal>toggled(bool)</signal>
12791095 <receiver>MainWindowClass</receiver>
@@ -1338,6 +1154,22 @@
13381154 </hints>
13391155 </connection>
13401156 <connection>
1157+ <sender>toolButton_omotenashino_chinese</sender>
1158+ <signal>toggled(bool)</signal>
1159+ <receiver>MainWindowClass</receiver>
1160+ <slot>toggled(bool)</slot>
1161+ <hints>
1162+ <hint type="sourcelabel">
1163+ <x>282</x>
1164+ <y>77</y>
1165+ </hint>
1166+ <hint type="destinationlabel">
1167+ <x>324</x>
1168+ <y>533</y>
1169+ </hint>
1170+ </hints>
1171+ </connection>
1172+ <connection>
13411173 <sender>toolButton_french</sender>
13421174 <signal>toggled(bool)</signal>
13431175 <receiver>MainWindowClass</receiver>
@@ -1449,6 +1281,38 @@
14491281 </hint>
14501282 </hints>
14511283 </connection>
1284+ <connection>
1285+ <sender>toolButton_ouyou1</sender>
1286+ <signal>toggled(bool)</signal>
1287+ <receiver>MainWindowClass</receiver>
1288+ <slot>toggled(bool)</slot>
1289+ <hints>
1290+ <hint type="sourcelabel">
1291+ <x>395</x>
1292+ <y>339</y>
1293+ </hint>
1294+ <hint type="destinationlabel">
1295+ <x>460</x>
1296+ <y>520</y>
1297+ </hint>
1298+ </hints>
1299+ </connection>
1300+ <connection>
1301+ <sender>toolButton_ouyou2</sender>
1302+ <signal>toggled(bool)</signal>
1303+ <receiver>MainWindowClass</receiver>
1304+ <slot>toggled(bool)</slot>
1305+ <hints>
1306+ <hint type="sourcelabel">
1307+ <x>395</x>
1308+ <y>339</y>
1309+ </hint>
1310+ <hint type="destinationlabel">
1311+ <x>460</x>
1312+ <y>520</y>
1313+ </hint>
1314+ </hints>
1315+ </connection>
14521316 </connections>
14531317 <slots>
14541318 <slot>download()</slot>
--- a/scrambledialog.cpp
+++ b/scrambledialog.cpp
@@ -21,10 +21,45 @@
2121 #include "scrambledialog.h"
2222 #include "ui_scrambledialog.h"
2323
24-ScrambleDialog::ScrambleDialog( QString scramble, QWidget *parent )
24+#define OPTIONAL1 "english/basic1"
25+#define OPTIONAL2 "english/basic2"
26+#define OPTIONAL3 "english/basic3"
27+#define OPTIONAL4 "english/enjoy"
28+#define OPT_TITLE1 "任意講座1"
29+#define OPT_TITLE2 "任意講座2"
30+#define OPT_TITLE3 "任意講座3"
31+#define OPT_TITLE4 "任意講座4"
32+
33+QString ScrambleDialog::optional1;
34+QString ScrambleDialog::optional2;
35+QString ScrambleDialog::optional3;
36+QString ScrambleDialog::optional4;
37+QString ScrambleDialog::opt_title1;
38+QString ScrambleDialog::opt_title2;
39+QString ScrambleDialog::opt_title3;
40+QString ScrambleDialog::opt_title4;
41+
42+//QString optional1 = MainWindow::optional1;
43+//QString optional2 = MainWindow::optional2;
44+//QString optional3 = MainWindow::optional3;
45+//QString optional4 = MainWindow::optional4;
46+//QString opt_title1 = MainWindow::opt_title1;
47+//QString opt_title2 = MainWindow::opt_title2;
48+//QString opt_title3 = MainWindow::opt_title3;
49+//QString opt_title4 = MainWindow::opt_title4;
50+
51+
52+ScrambleDialog::ScrambleDialog( QString opt_title1, QString opt_title2, QString opt_title3, QString opt_title4, QString optional1, QString optional2 , QString optional3, QString optional4, QWidget *parent )
2553 : QDialog(parent), ui(new Ui::ScrambleDialog) {
2654 ui->setupUi(this);
27- ui->scramble->setText( scramble );
55+ ui->opt_title1->setText( opt_title1 ),
56+ ui->opt_title2->setText( opt_title2 ),
57+ ui->opt_title3->setText( opt_title3 ),
58+ ui->opt_title4->setText( opt_title4 ),
59+ ui->optional1->setText( optional1 ),
60+ ui->optional2->setText( optional2 ),
61+ ui->optional3->setText( optional3 ),
62+ ui->optional4->setText( optional4 );
2863 }
2964
3065 ScrambleDialog::~ScrambleDialog() {
@@ -32,5 +67,34 @@ ScrambleDialog::~ScrambleDialog() {
3267 }
3368
3469 QString ScrambleDialog::scramble() {
35- return ui->scramble->text();
70+ return ui->opt_title1->text();
71+}
72+
73+QString ScrambleDialog::scramble2() {
74+ return ui->opt_title2->text();
75+}
76+
77+QString ScrambleDialog::scramble3() {
78+ return ui->opt_title3->text();
79+}
80+
81+QString ScrambleDialog::scramble4() {
82+ return ui->opt_title4->text();
3683 }
84+
85+QString ScrambleDialog::scramble5() {
86+ return ui->optional1->text();
87+}
88+
89+QString ScrambleDialog::scramble6() {
90+ return ui->optional2->text();
91+}
92+
93+QString ScrambleDialog::scramble7() {
94+ return ui->optional3->text();
95+}
96+
97+QString ScrambleDialog::scramble8() {
98+ return ui->optional4->text();
99+}
100+
--- a/scrambledialog.h
+++ b/scrambledialog.h
@@ -31,9 +31,26 @@ class ScrambleDialog : public QDialog {
3131 Q_OBJECT
3232
3333 public:
34- explicit ScrambleDialog( QString scramble, QWidget *parent = 0 );
34+ explicit ScrambleDialog( QString opt_title1, QString opt_title2, QString opt_title3, QString opt_title4, QString optional1, QString optional2 , QString optional3, QString optional4, QWidget *parent = 0 );
3535 ~ScrambleDialog();
3636 QString scramble();
37+ QString scramble2();
38+ QString scramble3();
39+ QString scramble4();
40+ QString scramble5();
41+ QString scramble6();
42+ QString scramble7();
43+ QString scramble8();
44+
45+ static QString optional1;
46+ static QString optional2;
47+ static QString optional3;
48+ static QString optional4;
49+ static QString opt_title1;
50+ static QString opt_title2;
51+ static QString opt_title3;
52+ static QString opt_title4;
53+
3754
3855 private:
3956 Ui::ScrambleDialog *ui;
--- a/scrambledialog.ui
+++ b/scrambledialog.ui
@@ -7,17 +7,17 @@
77 <x>0</x>
88 <y>0</y>
99 <width>320</width>
10- <height>129</height>
10+ <height>329</height>
1111 </rect>
1212 </property>
1313 <property name="windowTitle">
14- <string>Dialog</string>
14+ <string>任意講座ボタン名称/URL設定</string>
1515 </property>
1616 <widget class="QDialogButtonBox" name="buttonBox">
1717 <property name="geometry">
1818 <rect>
1919 <x>10</x>
20- <y>90</y>
20+ <y>290</y>
2121 <width>301</width>
2222 <height>32</height>
2323 </rect>
@@ -29,7 +29,7 @@
2929 <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
3030 </property>
3131 </widget>
32- <widget class="QLineEdit" name="scramble">
32+ <widget class="QLineEdit" name="opt_title1">
3333 <property name="geometry">
3434 <rect>
3535 <x>30</x>
@@ -39,6 +39,36 @@
3939 </rect>
4040 </property>
4141 </widget>
42+ <widget class="QLineEdit" name="opt_title2">
43+ <property name="geometry">
44+ <rect>
45+ <x>30</x>
46+ <y>70</y>
47+ <width>231</width>
48+ <height>22</height>
49+ </rect>
50+ </property>
51+ </widget>
52+ <widget class="QLineEdit" name="opt_title3">
53+ <property name="geometry">
54+ <rect>
55+ <x>30</x>
56+ <y>90</y>
57+ <width>231</width>
58+ <height>22</height>
59+ </rect>
60+ </property>
61+ </widget>
62+ <widget class="QLineEdit" name="opt_title4">
63+ <property name="geometry">
64+ <rect>
65+ <x>30</x>
66+ <y>110</y>
67+ <width>231</width>
68+ <height>22</height>
69+ </rect>
70+ </property>
71+ </widget>
4272 <widget class="QLabel" name="label">
4373 <property name="geometry">
4474 <rect>
@@ -49,7 +79,60 @@
4979 </rect>
5080 </property>
5181 <property name="text">
52- <string>スクランブル文字列を入力してください。</string>
82+ <string>任意講座ボタン名称</string>
83+ </property>
84+ </widget>
85+ <widget class="QLineEdit" name="optional1">
86+ <property name="geometry">
87+ <rect>
88+ <x>30</x>
89+ <y>180</y>
90+ <width>231</width>
91+ <height>22</height>
92+ </rect>
93+ </property>
94+ </widget>
95+ <widget class="QLineEdit" name="optional2">
96+ <property name="geometry">
97+ <rect>
98+ <x>30</x>
99+ <y>200</y>
100+ <width>231</width>
101+ <height>22</height>
102+ </rect>
103+ </property>
104+ </widget>
105+ <widget class="QLineEdit" name="optional3">
106+ <property name="geometry">
107+ <rect>
108+ <x>30</x>
109+ <y>220</y>
110+ <width>231</width>
111+ <height>22</height>
112+ </rect>
113+ </property>
114+ </widget>
115+ <widget class="QLineEdit" name="optional4">
116+ <property name="geometry">
117+ <rect>
118+ <x>30</x>
119+ <y>240</y>
120+ <width>231</width>
121+ <height>22</height>
122+ </rect>
123+ </property>
124+ </widget>
125+ <widget class="QLabel" name="label">
126+ <property name="geometry">
127+ <rect>
128+ <x>20</x>
129+ <y>150</y>
130+ <width>246</width>
131+ <height>16</height>
132+ </rect>
133+ </property>
134+ <property name="text">
135+ <string>任意講座URL</string>
53136 </property>
54137 </widget>
55138 </widget>