summaryrefslogtreecommitdiff
path: root/quacker
diff options
context:
space:
mode:
Diffstat (limited to 'quacker')
-rw-r--r--quacker/lexicondialog.cpp3
-rw-r--r--quacker/quacker.cpp32
-rw-r--r--quacker/settings.cpp12
-rw-r--r--quacker/settings.h2
4 files changed, 36 insertions, 13 deletions
diff --git a/quacker/lexicondialog.cpp b/quacker/lexicondialog.cpp
index 6630e1f..91eb676 100644
--- a/quacker/lexicondialog.cpp
+++ b/quacker/lexicondialog.cpp
@@ -117,6 +117,7 @@ LexiconDialog::LexiconDialog(QWidget *parent, const QString &originalName) : QDi
setWindowTitle(tr("Configure Lexicon - Quackle"));
Settings::populateComboFromFilenames(m_alphabetCombo, "alphabets", ".quackle_alphabet", "");
+ m_alphabetCombo->setCurrentIndex(m_alphabetCombo->findText(QuackleIO::Util::stdStringToQString(QUACKLE_ALPHABET_PARAMETERS->alphabetName())));
alphabetChanged(m_alphabetCombo->currentText());
m_lexiconName->setValidator(m_fileNameValidator);
@@ -300,6 +301,6 @@ void LexiconDialog::updateLexiconInformation(bool firstTime)
m_lexiconInformation->setText(text);
- m_saveChanges->setEnabled(hash != m_originalHash && !m_lexiconName->text().isEmpty());
+ m_saveChanges->setEnabled(true/*hash != m_originalHash && !m_lexiconName->text().isEmpty()*/);
m_clearAllWords->setEnabled(hash != m_originalHash);
}
diff --git a/quacker/quacker.cpp b/quacker/quacker.cpp
index a1f7064..2f407fa 100644
--- a/quacker/quacker.cpp
+++ b/quacker/quacker.cpp
@@ -155,13 +155,10 @@ void TopLevel::finishInitialization()
void TopLevel::introduceToUser()
{
CustomQSettings settings;
- QString lexiconName = settings.value("quackle/settings/lexicon-name", QString("twl06")).toString();
- if (lexiconName == "csw12") {
- statusMessage(tr("The WESPA wordlist (CSW12) is copyright Harper Collins 2011."));
- } else {
- statusMessage(tr("Enjoy your quackling. Choose \"New game...\" from the Game menu to begin."));
- }
-
+ QString statusText = QString::fromUtf8(QUACKLE_LEXICON_PARAMETERS->copyrightString().c_str());
+ if (statusText.isEmpty())
+ statusText = tr("Enjoy your quackling. Choose \"New game...\" from the Game menu to begin.");
+ statusMessage(statusText);
parseCommandLineOptions();
if (!CustomQSettings().contains("quackle/hasBeenRun"))
@@ -2120,7 +2117,7 @@ void TopLevel::firstTimeRun()
void TopLevel::about()
{
- QMessageBox::about(this, tr("About Quackle 1.0"), dialogText(tr(
+ QString aboutText = tr(
"<p><b>Quackle</b> 1.0 is a crossword game playing, analysis, and study tool. Visit the Quackle homepage at <tt><a href=\"http://quackle.org\">http://quackle.org</a></tt> for more information.</p>"
"<p>Quackle was written by Jason Katz-Brown, John O'Laughlin, John Fultz, Matt Liberty, and Anand Buddhdev. We thank the anonymous donor who made this software free.</p>"
"<p>Copyright 2005-2015 by</p>"
@@ -2130,7 +2127,24 @@ void TopLevel::about()
"</ul>"
"<p>Quackle is free, open-source software licensed under the terms of the GNU General Public License Version 3. See</p>"
"<p><tt><a href=\"http://quackle.org/LICENSE\">http://quackle.org/LICENSE</a></tt></p>"
-)));
+"<p>Dictionary copyrights</p><ul>"
+);
+
+ FILE* file = fopen(QUACKLE_DATAMANAGER->makeDataFilename("lexica", "copyrights.txt", false).c_str(), "r");
+ if (file)
+ {
+ QTextStream strm(file);
+ while (!strm.atEnd())
+ {
+ QString line = strm.readLine();
+ int pos = line.indexOf(':');
+ if (pos != -1 && pos + 1 < line.size())
+ aboutText += "<li>" + line.mid(pos + 1) + "</li>";
+ }
+ fclose(file);
+ aboutText += "</ul>";
+ }
+ QMessageBox::about(this, tr("About Quackle 1.0"), dialogText(aboutText));
}
void TopLevel::hints()
diff --git a/quacker/settings.cpp b/quacker/settings.cpp
index 6435605..e22a29e 100644
--- a/quacker/settings.cpp
+++ b/quacker/settings.cpp
@@ -148,6 +148,8 @@ void Settings::createGUI()
m_editBoard->setMaximumWidth(60);
connect(m_editBoard, SIGNAL(clicked()), this, SLOT(editBoard()));
+ m_copyrightLabel = new QLabel();
+
layout->addWidget(lexiconNameLabel, 0, 0, Qt::AlignRight);
layout->addWidget(m_lexiconNameCombo, 0, 1);
layout->addWidget(m_editLexicon, 0, 2);
@@ -160,25 +162,28 @@ void Settings::createGUI()
layout->addWidget(boardNameLabel, 3, 0, Qt::AlignRight);
layout->addWidget(m_boardNameCombo, 3, 1);
layout->addWidget(m_editBoard, 3, 2);
+ layout->addWidget(m_copyrightLabel, 4, 0, 1, -1, Qt::AlignTop);
layout->setColumnMinimumWidth(3, 0);
layout->setColumnStretch(3, 1);
layout->setRowMinimumHeight(4, 0);
layout->setRowStretch(4, 1);
+
load();
}
void Settings::load()
{
- m_lexiconNameCombo->setCurrentIndex(m_lexiconNameCombo->findText(QuackleIO::Util::stdStringToQString(QUACKLE_LEXICON_PARAMETERS->lexiconName())));
+ m_lexiconNameCombo->setCurrentIndex(m_lexiconNameCombo->findText(QString::fromUtf8(QUACKLE_LEXICON_PARAMETERS->lexiconName().c_str())));
if (m_lexiconNameCombo->currentIndex() == -1)
- m_lexiconNameCombo->setCurrentIndex(m_lexiconNameCombo->findText(QuackleIO::Util::stdStringToQString(QUACKLE_LEXICON_PARAMETERS->lexiconName()) + "*"));
+ m_lexiconNameCombo->setCurrentIndex(m_lexiconNameCombo->findText(QString::fromUtf8(QUACKLE_LEXICON_PARAMETERS->lexiconName().c_str()) + "*"));
m_lastGoodLexiconValue = m_lexiconNameCombo->currentIndex();
- m_alphabetNameCombo->setCurrentIndex(m_alphabetNameCombo->findText(QuackleIO::Util::stdStringToQString(QUACKLE_ALPHABET_PARAMETERS->alphabetName())));
+ m_alphabetNameCombo->setCurrentIndex(m_alphabetNameCombo->findText(QString::fromUtf8(QUACKLE_ALPHABET_PARAMETERS->alphabetName().c_str())));
m_themeNameCombo->setCurrentIndex(m_themeNameCombo->findText(m_themeName));
m_boardNameCombo->setCurrentIndex(m_boardNameCombo->findText(QuackleIO::Util::uvStringToQString(QUACKLE_BOARD_PARAMETERS->name())));
m_lastGoodBoardValue = m_boardNameCombo->currentIndex();
+ m_copyrightLabel->setText(QString::fromUtf8(QUACKLE_LEXICON_PARAMETERS->copyrightString().c_str()));
}
void Settings::preInitialize()
@@ -279,6 +284,7 @@ void Settings::setQuackleToUseLexiconName(const QString &lexiconName)
// }
QUACKLE_STRATEGY_PARAMETERS->initialize(lexiconNameStr);
+ m_copyrightLabel->setText(QString::fromUtf8(QUACKLE_LEXICON_PARAMETERS->copyrightString().c_str()));
}
}
diff --git a/quacker/settings.h b/quacker/settings.h
index babea3c..ef3449e 100644
--- a/quacker/settings.h
+++ b/quacker/settings.h
@@ -29,6 +29,7 @@
class QComboBox;
class QCheckBox;
class QPushButton;
+class QLabel;
using namespace std;
@@ -88,6 +89,7 @@ protected:
QPushButton *m_editAlphabet;
QPushButton *m_editTheme;
QPushButton *m_editBoard;
+ QLabel *m_copyrightLabel;
QString m_appDataDir;
QString m_userDataDir;
QString m_themeName;