|
History
Version 1.22 Beta:
- Just review my C++ book about dynamic memory
allocation. Changed anything that should be allocated on the fly, thus, this
version comsume less memory (1160KB comparing 1376KB, not much but not too
bad). After quitting, ussualy it will release all the memory, but sometimes it
holds 16KB, don't know why, trying to figure out.
- Since I just reduced about 15% of consumed memory,
I decided to change the setting for compiling to speed optimization. However, I
didn't see any improvement, maybe the change is too small or nothing at all.
- Tried to limit it to a single instance but didn't
work on previous version. Just found article 238100 from Microsoft, WinCE use a
slightly different methods from desktop version. This version won't run a second
instance.
- I was thinking about saving a list of dictionary
(like a module list) but too lazy. Thus, extended the MRU
(Most Recent Use) list to 8 items and
removed the filepath. Treat it as a module list, please!
Version 1.21 Beta:
- Fix the Recent File List, version 1.20B used a file
filter for Open File Dialog, thus preventing the files to be added to Recent
File List.
- Fix double-tapping on the list, it should set the
word in the input box.
Version 1.20 Beta:
- Some characters in Vietnamese are considered
alphabetical characters with accent, however, these characters in other
languages such as French are considered as whole characters. I added a backup
plan for the search engine, just in case there are some exceptions. Thus, if you
encounter such a word, that will take a little time to scan through a letter
section, but it will be able to find that word in the index.
- Add a file filter for the Open dictionary dialog,
it will filter out all the files except dictionary files (*.dz). This idea has
been noted at the beginning but I didn't consider it much.
Version 1.19 Beta:
- Some dictionaries ignore the space in their sorting
rule, some don't (for example, "a few" would be placed after "able" in some
dictionaries). Because of this non-standard thing, I have to change the rough
index again. The new version will be able to recognize if space in a dictionary
is ignored or not. Sorry guys, you have to spend some little time creating the
rough index again.
- Since I store the position of neighboring list,
double-tapping on the neighboring list will get the word based on relative index
of the word on the list. Thus, no matter what the word is, the search engine
won't compare the string, it just returns the definition right at that position.
This will reduce the searching time if you double-tapping on the list, amd in
worst case, if the search engine for some reason can't read the word, you still
can get the definition.
- There is an English-German dictionary which based
on the Ding project. This dictionary has some entries at the beginning, started
with "- :", "...", and "::" symbol. This kind of sorting was driving me crazy
since some dicionaries ignore those symbols. I fixed that one using assumption
that other dictionaries will use the same rules. If you find a dictionary that
does not following the rule, please let me know so that I can fix it.
- I downloaded a few more dictionaries from www.freedict.de, including English, Africaans,
Russian, Swedish, Spanish, Romanian, Italian, Irish, and those just work fine.
Since those are small dicionaries, speed is not an issue like Worldnet.
- Current issue: some people having problem
running the program. I'm not sure that my BE is different from a typical one or
not, so if you are able to run it properly, please send me an email at hoang027@umn.edu. Thanks a
lot for your help.
Version 1.18 Beta:
- Change the rough index again. I reallized that
after getting the rough index of the index file, I also know how the characters
in a language are sorted. This way, the rough index will divide index file into
may smaller segments using both the first and second characters. Just try it,
you will see a huge improvement in speed (the worst delay time is reduced from 6
seconds to 1 second! ). This took me about 15 hours of coding.
- Add page up and down buttons (with letter P- and
P+)
- Add previous and next rough index section buttons,
with letter L- and L+, which stand for Letter-/+. My first idea was previous and
next letter, but some dictionary just have a huge letter section (such as letter
s or t), this will jump too far. So, I decided to let the user see how I divided
the index file.
Version 1.17 Beta:
- Make "Look Up" default button, you can tap Enter
instead of tapping Look Up button.
- Display SIP when click on input box, hide SIP when
input box lose focus or when tap Look Up button.
- Fix a memory error, which created critical error
(could hang the BE) on some dictionary with some specific words.
Version 1.16 Beta:
Version 1.14 Beta
- Fix a small bug in the search engine (so that it
could find one letter unicode word)
- Add the Make Current Dict Default button in Setting
dialog. The program will automatically load the default dictionary on start up.
- Neighboring list display 40 instead of 20 words. It
also will display the first 20 words of the dictionary if there is no word has
been entered.
- Make the small icon for the program.
Version 1.1 Beta:
- Fix the search engine, (using two rough index
arrays instead of one, thus, index-error-proof)
- Add my email to the About box so that I can receive
feedback and bug reports (fundamental mistake !!!).
Version 1.0 Beta:
- The first working version since AnyDictz.
- The name is changed to DictzCE. I just want to
start from scratch instead of relying on the non-promising AnyDictz design
- The search engine is totally change, using a better
aproach with multi-language kept in mind.
AnyDictz 0.11 Beta:
- The very first design of the program, dialog based,
since this is my second program using MFC.
- Can only load Worldnet dictionary, nothing is
developed yet, even the search engine still has bugs.
|