home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2 / Openstep-4.2-Intel-Developer.iso / NextLibrary / Frameworks / Foundation.framework / Versions / B / Headers / NSRunLoop.h < prev    next >
Encoding:
Text File  |  1997-02-14  |  2.3 KB  |  95 lines

  1. /*    NSRunLoop.h
  2.     An input manager.
  3.     Copyright 1994-1996, NeXT Software, Inc.  All rights reserved.
  4. */
  5.  
  6. #import <Foundation/NSObject.h>
  7. #import <Foundation/NSDate.h>
  8. #import <Foundation/NSMapTable.h>
  9.  
  10. @class NSTimer;
  11.  
  12. #if !defined(STRICT_OPENSTEP)
  13.  
  14. @class NSPort;
  15.  
  16. #endif /* !STRICT_OPENSTEP */
  17.  
  18. @interface NSRunLoop : NSObject {
  19.     void    *_modes;
  20.     id        _currentMode;
  21.     id        _callout;
  22.     void    *_callouts;
  23.     void    *_timers;
  24.     id        _condition;
  25.     void    *_currentSet;
  26.     char    *_msg;
  27.     void    *_performers;
  28.     id        _wakeupPort;
  29.     id          _winMessagePort;
  30. }
  31.  
  32. + (NSRunLoop *)currentRunLoop;
  33. - (NSString *)currentMode;
  34.  
  35. - (void)addTimer:(NSTimer *)timer forMode:(NSString *)mode;
  36.  
  37. #if !defined(STRICT_OPENSTEP)
  38.  
  39. - (void)addPort:(NSPort *)aPort forMode:(NSString *)mode;
  40. - (void)removePort:(NSPort *)aPort forMode:(NSString *)mode;
  41.  
  42. #endif /* !STRICT_OPENSTEP */
  43.  
  44. - (NSDate *)limitDateForMode:(NSString *)mode;
  45. - (void)acceptInputForMode:(NSString *)mode beforeDate:(NSDate *)limitDate;
  46.  
  47. @end
  48.  
  49. FOUNDATION_EXPORT NSString *NSDefaultRunLoopMode;
  50.  
  51. @interface NSRunLoop (NSRunLoopConveniences)
  52.  
  53. - (void)run; 
  54. - (void)runUntilDate:(NSDate *)limitDate;
  55. - (BOOL)runMode:(NSString *)mode beforeDate:(NSDate *)limitDate;
  56.  
  57. #if !defined(STRICT_OPENSTEP) && !defined(STRICT_41) && !defined(STRICT_40)
  58. - (void)configureAsServer;
  59. #endif
  60.  
  61. @end
  62.  
  63. /****************     Delayed perform     ******************/
  64.  
  65. @interface NSObject (NSDelayedPerforming)
  66.  
  67. #if !defined(STRICT_OPENSTEP)
  68. - (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay inModes:(NSArray *)modes;
  69. #endif !defined(STRICT_OPENSTEP)
  70. - (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay;
  71. + (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget selector:(SEL)aSelector object:(id)anArgument;
  72.  
  73. @end
  74.  
  75. #if !defined(STRICT_OPENSTEP)
  76.  
  77. @interface NSRunLoop (NSOrderedPerform)
  78. - (void)performSelector:(SEL)aSelector target:(id)target argument:(id)arg order:(unsigned)order modes:(NSArray *)modes;
  79. - (void)cancelPerformSelector:(SEL)aSelector target:(id)target argument:(id)arg;
  80. @end
  81.  
  82. #endif !defined(STRIC_OPENSTEP)
  83.  
  84. #if !defined(STRICT_OPENSTEP)
  85.  
  86. /****************     Delegate methods     ******************/
  87.  
  88. @interface NSObject (NSRunLoopPortDelegateMethods)
  89.  
  90. - (NSDate *)limitDateForMode:(NSString *)mode;
  91.  
  92. @end
  93.  
  94. #endif /* !STRICT_OPENSTEP */
  95.