diff options
author | John Fultz <jfultz@wolfram.com> | 2015-10-11 18:19:20 -0500 |
---|---|---|
committer | John Fultz <jfultz@wolfram.com> | 2015-10-11 18:19:20 -0500 |
commit | 6339dec22e2190fd341500206c80425593324bdc (patch) | |
tree | 56edb08f484d4c917289bb51e3e4765f524b3400 /quackleio | |
parent | 69e3dcefb882c743b136df8e5c81b4182b135f6b (diff) |
Fix up lexicon dialog box checks.
Get enables and disables right, efficient computation
of word counts, etc.
Diffstat (limited to 'quackleio')
-rw-r--r-- | quackleio/dawgfactory.cpp | 5 | ||||
-rw-r--r-- | quackleio/dawgfactory.h | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/quackleio/dawgfactory.cpp b/quackleio/dawgfactory.cpp index 362dfdc..869ef8e 100644 --- a/quackleio/dawgfactory.cpp +++ b/quackleio/dawgfactory.cpp @@ -40,6 +40,7 @@ DawgFactory::DawgFactory(const QString &alphabetFile) m_root.lastchild = true; m_hash.int32ptr[0] = m_hash.int32ptr[1] = m_hash.int32ptr[2] = m_hash.int32ptr[3] = 0; + m_encodableWords = m_unencodableWords = m_duplicateWords = m_wordCount = 0; } DawgFactory::~DawgFactory() @@ -186,10 +187,10 @@ void DawgFactory::writeIndex(const UVString& filename) } } -int DawgFactory::wordCount() const +void DawgFactory::computeWordCount() const { m_countsByLength.resize(0); - return m_root.wordCount(0, m_countsByLength); + m_wordCount = m_root.wordCount(0, m_countsByLength); } string DawgFactory::letterCountString() const diff --git a/quackleio/dawgfactory.h b/quackleio/dawgfactory.h index 8dd6e03..5872dc3 100644 --- a/quackleio/dawgfactory.h +++ b/quackleio/dawgfactory.h @@ -30,7 +30,8 @@ public: DawgFactory(const QString &alphabetFile); ~DawgFactory(); - int wordCount() const; + void computeWordCount() const; + int wordCount() const { return m_wordCount; }; string letterCountString() const; int nodeCount() const { return m_nodelist.size(); }; int encodableWords() const { return m_encodableWords; }; @@ -78,6 +79,7 @@ private: int m_unencodableWords; int m_duplicateWords; vector< Node* > m_nodelist; + mutable int m_wordCount; mutable vector<unsigned int> m_countsByLength; Quackle::AlphabetParameters *m_alphas; Node m_root; |