xv
Retrieving Existing Soups
11-33
Adding Entries to Soups
11-34
Adding an Index to an Existing Soup
11-35
Removing Soups
11-36
Using Built-in Soups
11-36
Making Changes to Other Applications' Soups
11-37
Adding Tags to an Existing Soup
11-37
Using Queries
11-37
Querying Multiple Soups
11-38
Querying on Single-Slot Indexes
11-38
Querying for Tags
11-41
Querying for Text
11-43
Internationalized Sorting Order for Text Queries
11-44
Queries on Descending Indexes
11-45
Querying on Multiple-Slot Indexes
11-47
Limitations of Index Keys
11-51
Using Cursors
11-53
Getting a Cursor
11-53
Testing Validity of the Cursor
11-53
Getting the Entry Currently Referenced by the Cursor
11-54
Moving the Cursor
11-54
Counting the Number of Entries in Cursor Data
11-56
Getting the Current Entry's Index Key
11-56
Copying Cursors
11-56
Using Entries
11-57
Saving Frames as Soup Entries
11-57
Removing Entries From Soups
11-58
Modifying Entries
11-59
Moving Entries
11-60
Copying Entries
11-60
Sharing Entry Data
11-61
Using the Entry Cache Efficiently
11-61
Using Soup Change Notification
11-63
Registering Your Application for Change Notification
11-63
Unregistering Your Application for Change Notification
11-65
Responding to Notifications
11-65
Sending Notifications
11-66
Summary of Data Storage
11-68
Data Structures
11-68
Data Storage Functions and Methods
11-71