Implemented datePicking controller. Refactored popup handling in MPInspectorViewController

This commit is contained in:
michael starke
2014-03-17 00:07:25 +01:00
parent 6bbaccdb25
commit 51a59d73c6
12 changed files with 154 additions and 71 deletions

View File

@@ -8,8 +8,17 @@
#import "MPDatePickingViewController.h"
typedef NS_ENUM(NSUInteger, MPDatePresets) {
MPDatePresetTomorrow,
MPDatePresetOneWeek,
MPDatePresetOneMonth,
MPDatePresetOneYear,
};
@interface MPDatePickingViewController ()
@property (strong) NSDate *date;
@end
@implementation MPDatePickingViewController
@@ -19,11 +28,30 @@
return self;
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
}
return self;
- (void)awakeFromNib {
NSMenu *presetMenu = [[NSMenu alloc] init];
NSDictionary *dateItems = @{ @(MPDatePresetTomorrow): NSLocalizedString(@"TOMORROW", ""),
@(MPDatePresetOneWeek): NSLocalizedString(@"ONE_WEEK", ""),
@(MPDatePresetOneMonth): NSLocalizedString(@"ONE_MONTH", ""),
@(MPDatePresetOneYear): NSLocalizedString(@"ONE_YEAR", "") };
for(NSNumber *tagNumber in dateItems) {
NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:dateItems[tagNumber] action:NULL keyEquivalent:@""];
[item setTag:[tagNumber integerValue]];
[presetMenu addItem:item];
}
[self.presetPopupButton setMenu:presetMenu];
}
- (IBAction)useDate:(id)sender {
self.date = [self.datePicker dateValue];
id target = [NSApp targetForAction:@selector(performClose:)];
[target performClose:sender];
}
- (IBAction)cancel:(id)sender {
self.date = [NSDate distantFuture];
id target = [NSApp targetForAction:@selector(performClose:)];
[target performClose:sender];
}
@end