Home | History | Annotate | Download | only in Misc
      1 /*
      2  * Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 Apple Inc. All rights reserved.
      3  *
      4  * Redistribution and use in source and binary forms, with or without
      5  * modification, are permitted provided that the following conditions
      6  * are met:
      7  *
      8  * 1.  Redistributions of source code must retain the above copyright
      9  *     notice, this list of conditions and the following disclaimer.
     10  * 2.  Redistributions in binary form must reproduce the above copyright
     11  *     notice, this list of conditions and the following disclaimer in the
     12  *     documentation and/or other materials provided with the distribution.
     13  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
     14  *     its contributors may be used to endorse or promote products derived
     15  *     from this software without specific prior written permission.
     16  *
     17  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
     18  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
     19  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
     20  * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
     21  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
     22  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
     23  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
     24  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     26  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     27  */
     28 
     29 #import <WebKit/WebIconDatabase.h>
     30 
     31 // FIXME: Some of the following is not API and should be moved
     32 // either inside WebIconDatabase.mm, or to WebIconDatabaseInternal.h.
     33 
     34 // Sent when all icons are removed from the database. The object of the notification is
     35 // the icon database. There is no userInfo. Clients should react by removing any cached
     36 // icon images from the user interface. Clients need not and should not call
     37 // releaseIconForURL: in response to this notification.
     38 extern NSString *WebIconDatabaseDidRemoveAllIconsNotification;
     39 
     40 // Key to store the path to look for old style icons in to convert to the new icon db
     41 extern NSString *WebIconDatabaseImportDirectoryDefaultsKey;
     42 
     43 @interface WebIconDatabase (WebPendingPublic)
     44 
     45 /*!
     46    @method isEnabled
     47    @discussion Returns true if the icon database is currently enabled, or false if it
     48    is disabled.
     49 */
     50 - (BOOL)isEnabled;
     51 
     52 /*!
     53    @method setEnabled:
     54    @discussion Enables or disables the icon database based on the flag passed in.
     55    @param flag Pass true to enable the icon database, or false to disable it.
     56 */
     57 - (void)setEnabled:(BOOL)flag;
     58 
     59 /*!
     60    @method removeAllIcons
     61    @discussion Causes the icon database to delete all of the images that it has stored,
     62    and to send out the notification WebIconDatabaseDidRemoveAllIconsNotification.
     63 */
     64 - (void)removeAllIcons;
     65 
     66 @end
     67 
     68 @interface WebIconDatabase (WebPrivate)
     69 
     70 + (void)_checkIntegrityBeforeOpening;
     71 
     72 @end
     73 
     74