aka RedditBar, Mac OS X menu bar reddit client
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Reddit.h 2.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /*
  2. * Reddit.h
  3. *
  4. * Copyright (c) 2013, Thomas Buck <xythobuz@xythobuz.de>
  5. *
  6. * Redistribution and use in source and binary forms, with or without
  7. * modification, are permitted provided that the following conditions
  8. * are met:
  9. *
  10. * - Redistributions of source code must retain the above copyright notice,
  11. * this list of conditions and the following disclaimer.
  12. *
  13. * - Redistributions in binary form must reproduce the above copyright
  14. * notice, this list of conditions and the following disclaimer in the
  15. * documentation and/or other materials provided with the distribution.
  16. *
  17. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  18. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  19. * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
  21. * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  22. * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  23. * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
  24. * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  25. * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  26. * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  27. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  28. */
  29. #import <Foundation/Foundation.h>
  30. #import "RedditItem.h"
  31. @interface Reddit : NSObject
  32. @property (atomic, retain) NSString *username;
  33. @property (atomic, retain) NSString *modhash;
  34. @property (atomic, retain) NSString *password;
  35. @property (atomic, retain) NSString *version;
  36. @property (atomic, retain) NSString *appName;
  37. @property (atomic, retain) NSString *author;
  38. @property (atomic) NSInteger length;
  39. @property (atomic, retain) NSArray *subreddits;
  40. @property (atomic) NSInteger titleLength;
  41. // Used by Pref Window, unthreaded
  42. -(id)initWithUsername:(NSString *)name Password:(NSString *)pass;
  43. -(NSString *)queryModhash;
  44. // Used by MainMenu
  45. -(id)initWithUsername:(NSString *)name Modhash:(NSString *)hash Length:(NSInteger)leng TitleLength:(NSInteger)title;
  46. // Use Threaded!
  47. -(void)isAuthenticatedNewModhash:(id)parent;
  48. -(void)readFrontpage:(id)parent;
  49. -(void)readSubreddits:(id)parent;
  50. -(void)readPMs:(id)parent;
  51. // Internal
  52. -(NSData *)queryAPI:(NSString *)api withData:(NSString *)string andResponse:(NSHTTPURLResponse **)res;
  53. -(NSString *)urlencode:(NSString *)string;
  54. @end