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.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /*
  2. * AppDelegate.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 <Cocoa/Cocoa.h>
  30. #import "PrefController.h"
  31. #import "StateModel.h"
  32. #import "Reddit.h"
  33. @interface AppDelegate : NSObject <NSApplicationDelegate, NSUserNotificationCenterDelegate>
  34. @property (atomic, retain) IBOutlet NSMenu *statusMenu;
  35. @property (atomic, retain) IBOutlet NSApplication *application;
  36. @property (atomic, retain) IBOutlet NSMenuItem *firstMenuItem;
  37. @property (atomic, retain) IBOutlet NSMenuItem *PMItem;
  38. @property (atomic, retain) IBOutlet NSMenuItem *PMSeparator;
  39. @property (atomic, retain) NSStatusItem *statusItem;
  40. @property (atomic, retain) NSImage *statusImage;
  41. @property (atomic, retain) NSImage *orangeredImage;
  42. @property (atomic, retain) PrefController *prefWindow;
  43. @property (atomic, retain) StateModel *currentState;
  44. @property (atomic, retain) Reddit *api;
  45. @property (atomic, retain) NSArray *menuItems;
  46. @property (atomic, retain) NSArray *redditItems;
  47. @property (atomic, retain) NSString *lastFullName;
  48. @property (atomic, retain) NSTimer *refreshTimer;
  49. -(IBAction)showPreferences:(id)sender;
  50. -(IBAction)showAbout:(id)sender;
  51. -(IBAction)reloadCompleteList:(id)sender;
  52. -(IBAction)reloadNextList:(id)sender;
  53. -(IBAction)linkToOpen:(id)sender;
  54. -(IBAction)openUnread:(id)sender;
  55. -(void)reloadListWithOptions;
  56. -(void)reloadListIsAuthenticatedCallback;
  57. -(void)reloadListNotAuthenticatedCallback;
  58. -(void)reloadListHasSubredditsCallback:(NSArray *)items;
  59. -(void)reloadListHasFrontpageCallback:(NSArray *)items;
  60. -(void)readPMsCallback:(NSArray *)items;
  61. -(void)singleItemReloadedCallback:(NSArray *)items;
  62. -(void)prefsDidSaveReload:(Boolean)shouldReload;
  63. @end