Annotation of Examples/IndexingKit/QueryFieldEditor/README.rtf, revision 1.1.1.1

1.1       root        1: {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;\f1\fmodern Ohlfs;}
                      2: \paperw13040
                      3: \paperh9600
                      4: \margl120
                      5: \margr120
                      6: \pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b\i0\ulnone\fs36\fc0\cf0 QueryFieldEditor
                      7: \b0\fs28 \
                      8: by Adam Hertz\
                      9: \
                     10: This example is a field editor that does escape completion against any IXBTree cursor.  It is used by Webster, Librarian and the ToDoList example.  Attach it to a TextField, and when the user types Esc, it completes the prefix using an IXBTree's key space as the set of possible completions.\
                     11: \
                     12: It behaves like (and was inspired by) the escape completion in Edit: it cycles through all possible completions for a given prefix.  Attach it to a TextField by implementing the Window delegate's - windowWillReturnFieldEditor:toObject: delegate method.  Arm it with any IXBTree cursor, such as an IXBTreeCursor or an IXPostingCursor, and away you go.\
                     13: \
                     14: The interface and implementation files for this example, QueryFieldEditor.h and QueryFieldEditor.m, are included in the ToDoList example.\
                     15: \
                     16: The following code sample shows how the Window delegate manages the QueryFieldEditor:\
                     17: \
                     18: 
                     19: \fs24 #import <btree/IXBTreeCursor.h>\
                     20: \
                     21: // This window delegate method sets the field editor for the TextField in the instance \
                     22: // variable queryField from the instance variable fieldEditor. The first time through, it \
                     23: // creates the field editor and loads it with a cursor from the instance variable cursor\
                     24: \
                     25: - windowWillReturnFieldEditor:sender toObject:client\
                     26: \{     \
                     27:     if (client != queryField) return nil;\
                     28:     if (fieldEditor == nil)\
                     29:     \{\
                     30:        fieldEditor = [[QueryFieldEditor alloc] init];\
                     31:        [fieldEditor setCursor:cursor];\
                     32:     \}\
                     33: \
                     34:     return fieldEditor;\
                     35: \}\
                     36: 
                     37: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.