home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2 / Openstep-4.2-Intel-Developer.iso / NextLibrary / Frameworks / AppKit.framework / Versions / B / Headers / NSPasteboard.h < prev    next >
Text File  |  1996-10-17  |  3KB  |  108 lines

  1. /*
  2.     NSPasteboard.h
  3.     Application Kit
  4.     Copyright (c) 1994-1996, NeXT Software, Inc.
  5.     All rights reserved.
  6. */
  7.  
  8. #import <Foundation/NSObject.h>
  9. #import <AppKit/AppKitDefines.h>
  10.  
  11. @class NSString;
  12. @class NSMutableArray;
  13. @class NSArray;
  14. @class NSData;
  15. @class NSFileWrapper;
  16.  
  17. /* standard Pasteboard types */
  18.  
  19. APPKIT_EXTERN NSString *NSStringPboardType;
  20. APPKIT_EXTERN NSString *NSFilenamesPboardType;
  21. APPKIT_EXTERN NSString *NSPostScriptPboardType;
  22. APPKIT_EXTERN NSString *NSTIFFPboardType;
  23. APPKIT_EXTERN NSString *NSRTFPboardType;
  24. APPKIT_EXTERN NSString *NSTabularTextPboardType;
  25. APPKIT_EXTERN NSString *NSFontPboardType;
  26. APPKIT_EXTERN NSString *NSRulerPboardType;
  27. APPKIT_EXTERN NSString *NSFileContentsPboardType;
  28. APPKIT_EXTERN NSString *NSColorPboardType;
  29. APPKIT_EXTERN NSString *NSRTFDPboardType;
  30.  
  31. /* standard Pasteboard names */
  32.  
  33. APPKIT_EXTERN NSString *NSGeneralPboard;
  34. APPKIT_EXTERN NSString *NSFontPboard;
  35. APPKIT_EXTERN NSString *NSRulerPboard;
  36. APPKIT_EXTERN NSString *NSFindPboard;
  37. APPKIT_EXTERN NSString *NSDragPboard;
  38.  
  39.  
  40. APPKIT_EXTERN NSString *NSCreateFilenamePboardType(NSString *fileType);
  41. APPKIT_EXTERN NSString *NSCreateFileContentsPboardType(NSString *fileType);
  42. APPKIT_EXTERN NSString *NSGetFileType(NSString *pboardType);
  43. APPKIT_EXTERN NSArray *NSGetFileTypes(NSArray *pboardTypes);
  44.  
  45. @interface NSPasteboard : NSObject
  46. {
  47.     id                  _owner;
  48.     int                 _realChangeCount;
  49.     int                 _ourChangeCount;
  50.     id                  _pboard;
  51.     NSMutableArray    *_owners;
  52.     NSArray            *_types;
  53.     NSMutableArray    *_typesProvided;
  54.     NSString        *_name;
  55.     NSString        *_host;
  56.     int            _serverVersion;
  57.     int            _blockedState;
  58.     NSData        *_asynchData;
  59. }
  60.  
  61. + (NSPasteboard *)generalPasteboard;
  62. + (NSPasteboard *)pasteboardWithName:(NSString *)name;
  63. + (NSPasteboard *)pasteboardWithUniqueName;
  64.  
  65. + (NSArray *)typesFilterableTo:(NSString *)type;
  66.  
  67. + (NSPasteboard *)pasteboardByFilteringFile:(NSString *)filename;
  68. + (NSPasteboard *)pasteboardByFilteringData:(NSData *)data ofType:(NSString *)type;
  69. + (NSPasteboard *)pasteboardByFilteringTypesInPasteboard:(NSPasteboard *)pboard;
  70.  
  71. - (NSString *)name;
  72.  
  73. - (void)releaseGlobally;
  74.  
  75. - (int)declareTypes:(NSArray *)newTypes owner:(id)newOwner;
  76. - (int)addTypes:(NSArray *)newTypes owner:(id)newOwner;
  77. - (int)changeCount;
  78.  
  79. - (NSArray *)types;
  80. - (NSString *)availableTypeFromArray:(NSArray *)types;
  81.  
  82. - (BOOL)setData:(NSData *)data forType:(NSString *)dataType;
  83. - (NSData *)dataForType:(NSString *)dataType;
  84.  
  85. - (BOOL)setPropertyList:(id)plist forType:(NSString *)dataType;
  86. - (id)propertyListForType:(NSString *)dataType;
  87.  
  88. - (BOOL)setString:(NSString *)string forType:(NSString *)dataType;
  89. - (NSString *)stringForType:(NSString *)dataType;
  90.  
  91. @end
  92.  
  93. @interface NSPasteboard(NSFileContents)
  94. - (BOOL)writeFileContents:(NSString *)filename;
  95. - (NSString *)readFileContentsType:(NSString *)type toFile:(NSString *)filename;
  96.  
  97. #ifndef STRICT_OPENSTEP
  98. - (BOOL)writeFileWrapper:(NSFileWrapper *)wrapper;
  99. - (NSFileWrapper *)readFileWrapper;
  100. #endif
  101.  
  102. @end
  103.  
  104. @interface NSObject(NSPasteboardOwner)
  105. - (void)pasteboard:(NSPasteboard *)sender provideDataForType:(NSString *)type;
  106. - (void)pasteboardChangedOwner:(NSPasteboard *)sender;
  107. @end
  108.