Warning, /education/kiten/lib/Mainpage.dox is written in an unsupported language. File is not indexed.

0001 /** @mainpage The libkiten Library API Reference
0002 <p><b>
0003 Overview |
0004 @ref components |
0005 @ref using |
0006 @ref adding
0007 </b></p>
0008 
0009 This is the online reference for developing using the libkiten library.
0010 
0011 libkiten is a library for managing a variety of japanese cross-language
0012 dictionaries through a common interface. It provides a light abstraction layer
0013 over various types of japanese dictionaries, with a simple facility for adding
0014 more types.
0015 
0016 @authors
0017 (c)2001 Jason Katz-Brown <jason@katzbrown.com> : Original Author of most of kiten and libkiten
0018 (c)1998 Jim W. Breen <jwb@csse.monash.edu.au> : Creator of an index file format used in libkiten
0019 (c)2006-2007 Eric Kjeldergaard : Rewriting effort for KDE 4
0020 (c)2006-2008 Joseph Kerian <jkerian@gmail.com> : Rewriting effort for KDE 4
0021 (c)2011 Daniel E. Moctezuma <democtezuma@gmail.com> : Deinflection system improvements, bug fixes and code polishing
0022 
0023 @maintainers
0024 Daniel E. Moctezuma <democtezuma@gmail.com> is the current maintainer.
0025 
0026 @licenses
0027 This library is distributed under the lgpl: @lgpl<br>
0028 
0029 */
0030 
0031 /** @page components Components
0032 
0033 <p><b>
0034 @ref index "Overview" |
0035 Components |
0036 @ref using |
0037 @ref adding
0038 </b></p>
0039 
0040 Below is a brief summary of the various components of libkiten
0041 <dl>
0042         <dt>DictQuery</dt>
0043         <dd>Class to load with a query to the dictionary system.</dd>
0044 
0045         <dt>DictionaryManager</dt>
0046         <dd>Main management class. These objects are the main interface to the library.</dd>
0047 
0048         <dt>DictionaryPreferenceDialog</dt>
0049         <dd>Abstract Base Class, providing an interface between the individual dictionary preferences and the host application.</dd>
0050 
0051         <dt>Entry</dt>
0052         <dd>Results from a dictionary search are returned to the user application in a list of type Entry, aggregated in an EntryList.</dd>
0053 
0054         <dt>EntryList</dt>
0055         <dd>Results from a dictionary search are returned to the user application in a list of type Entry, aggregated in an EntryList.</dd>
0056 
0057         <dt>HistoryPtrList</dt>
0058         <dd>A useful utility class if you want to keep a history of results. Contains a list of EntryLists. Automatically handles maximum history size, and truncation/tracking current item</dd>
0059 
0060         <dt>DictFile</dt>
0061         <dd>An abstract base class, used internally for managing dictionary types</dd>
0062 
0063         <dt>kromajiedit</dt>
0064         <dd>An input box, can allow the user to enter kana without a japanese input manager installed</dd>
0065 </dl>
0066 */
0067 
0068 /** @page using Using libkiten
0069 <p><b>
0070 @ref index "Overview" |
0071 @ref components |
0072 Using libkiten |
0073 @ref adding
0074 </b></p>
0075 
0076 General Approach to using the classes in the library:
0077 
0078 Create a DictionaryManager object, load dictionaries to it using member functions. (persistant)
0079 Create a DictQuery object, load it with your query
0080 EntryList *results = DictionaryManagerObject->doSearch(DictQueryObject);
0081 //Do something with each Entry in the EntryList, or do something with the whole list
0082 
0083 For your preferences dialog:
0084 Get a list of DictionaryPreferenceDialog objects from DictionaryManager to put into your preferences dialog.
0085 
0086 If you maintain a history:
0087 You can use HistoryPtrList to store and manage lists of EntryList's.
0088 */
0089 
0090 /** @page adding Adding New Dictionary Types
0091 <p><b>
0092 @ref index "Overview" |
0093 @ref components |
0094 @ref using |
0095 Adding New Dictionary Types
0096 </b></p>
0097 
0098 Adding a new dictionary type is relatively simple.
0099 Look over the documentation of the DictFile abstract class. You may also need to subclass from Entry, if your dictionary requires special logic or strangely formatted fields. If you have no particular preferences to set (or want to put off that work until later), your DictFile descendent can return NULL, when asked for a preference dialog.
0100 
0101 */