UIBarButtonItem+Theme.m 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. //
  2. // UIBarButtonItem+Theme.m
  3. // VLC for iOS
  4. //
  5. // Created by Romain Goyet on 14/06/13.
  6. // Copyright (c) 2013 Applidium. All rights reserved.
  7. //
  8. // Refer to the COPYING file of the official project for license.
  9. //
  10. #import "UIBarButtonItem+Theme.h"
  11. @implementation UIBarButtonItem (Theme)
  12. + (UIBarButtonItem *)themedDoneButtonWithTarget:(id)target andSelector:(SEL)selector
  13. {
  14. UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"BUTTON_DONE", @"")
  15. style:UIBarButtonItemStyleBordered
  16. target:target
  17. action:selector];
  18. [doneButton setBackgroundImage:[UIImage imageNamed:@"doneButton"]
  19. forState:UIControlStateNormal
  20. barMetrics:UIBarMetricsDefault];
  21. [doneButton setBackgroundImage:[UIImage imageNamed:@"doneButtonHighlight"]
  22. forState:UIControlStateHighlighted
  23. barMetrics:UIBarMetricsDefault];
  24. [doneButton setTitleTextAttributes:@{UITextAttributeTextShadowColor : [UIColor whiteColor], UITextAttributeTextColor : [UIColor blackColor]}
  25. forState:UIControlStateNormal];
  26. return doneButton;
  27. }
  28. + (UIBarButtonItem *)themedBackButtonWithTarget:(id)target andSelector:(SEL)selector
  29. {
  30. UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"BUTTON_BACK", @"")
  31. style:UIBarButtonItemStyleBordered
  32. target:target
  33. action:selector];
  34. [backButton setBackgroundImage:[[UIImage imageNamed:@"backButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 12, 0, 6)]
  35. forState:UIControlStateNormal
  36. barMetrics:UIBarMetricsDefault];
  37. [backButton setBackgroundImage:[[UIImage imageNamed:@"backButtonHighlight"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 12, 0, 6)]
  38. forState:UIControlStateHighlighted
  39. barMetrics:UIBarMetricsDefault];
  40. [backButton setTitleTextAttributes:@{UITextAttributeTextShadowColor : [UIColor colorWithWhite:0. alpha:.37], UITextAttributeTextColor : [UIColor whiteColor]} forState:UIControlStateNormal];
  41. [backButton setTitlePositionAdjustment:UIOffsetMake(3, 0) forBarMetrics:UIBarMetricsDefault];
  42. return backButton;
  43. }
  44. + (UIBarButtonItem *)themedRevealMenuButtonWithTarget:(id)target andSelector:(SEL)selector
  45. {
  46. UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"menuCone"] style:UIBarButtonItemStyleBordered target:target action:selector];
  47. [menuButton setBackgroundImage:[UIImage imageNamed:@"button"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
  48. [menuButton setBackgroundImage:[UIImage imageNamed:@"buttonHighlight"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
  49. return menuButton;
  50. }
  51. @end