Home | History | Annotate | Download | only in mac
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef BASE_MAC_COCOA_PROTOCOLS_H_
      6 #define BASE_MAC_COCOA_PROTOCOLS_H_
      7 
      8 #import <Cocoa/Cocoa.h>
      9 
     10 // New Mac OS X SDKs introduce new protocols used for delegates.  These
     11 // protocol defintions aren't not present in earlier releases of the Mac OS X
     12 // SDK.  In order to support building against the new SDK, which requires
     13 // delegates to conform to these protocols, and earlier SDKs, which do not
     14 // define these protocols at all, this file will provide empty protocol
     15 // definitions when used with earlier SDK versions.
     16 
     17 #define DEFINE_EMPTY_PROTOCOL(p) \
     18 @protocol p \
     19 @end
     20 
     21 #if !defined(MAC_OS_X_VERSION_10_7) || \
     22     MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_7
     23 
     24 DEFINE_EMPTY_PROTOCOL(NSDraggingDestination)
     25 DEFINE_EMPTY_PROTOCOL(ICCameraDeviceDownloadDelegate)
     26 
     27 #endif  // MAC_OS_X_VERSION_10_7
     28 
     29 #undef DEFINE_EMPTY_PROTOCOL
     30 
     31 #endif  // BASE_MAC_COCOA_PROTOCOLS_H_
     32