annotate PresetAlertViewController.mm @ 11:274864620848

preset alert code
author Robert Tubb <rt300@eecs.qmul.ac.uk>
date Wed, 15 May 2013 17:43:51 +0100
parents
children 5bf377b4c780
rev   line source
rt300@11 1 //
rt300@11 2 // iViewController.m
rt300@11 3 // oscSenderExample
rt300@11 4 //
rt300@11 5 // Created by Robert Tubb on 07/01/2013.
rt300@11 6 //
rt300@11 7 //
rt300@11 8 #include "presetManager.h"
rt300@11 9 #include "testApp.h"
rt300@11 10 #import "PresetAlertViewController.h"
rt300@11 11
rt300@11 12
rt300@11 13 extern PresetManager presetManager;
rt300@11 14 extern EventLogger eventLogger;
rt300@11 15
rt300@11 16 @implementation PresetAlertViewController
rt300@11 17 - (PresetAlertViewController *) init{
rt300@11 18 [super init];
rt300@11 19 self = [super init];
rt300@11 20 if (self) {
rt300@11 21 // Custom initialization
rt300@11 22
rt300@11 23 self.alertShowing = NO;
rt300@11 24
rt300@11 25 }
rt300@11 26 return self;
rt300@11 27
rt300@11 28 }
rt300@11 29 - (void)showPresetNamePrompt{
rt300@11 30 self.alert = [[UIAlertView alloc] initWithTitle:@"Save"
rt300@11 31 message:@"Enter preset name:"
rt300@11 32 delegate:self
rt300@11 33 cancelButtonTitle:@"Cancel"
rt300@11 34 otherButtonTitles:@"Enter",nil];
rt300@11 35 self.alert.alertViewStyle = UIAlertViewStylePlainTextInput;
rt300@11 36 UITextField * alertTextField = [self.alert textFieldAtIndex:0];
rt300@11 37 [alertTextField setDelegate:self];
rt300@11 38 alertTextField.keyboardType = UIKeyboardTypeDefault;
rt300@11 39 alertTextField.placeholder = @"Preset Name";
rt300@11 40 [self.alert show];
rt300@11 41 self.alertShowing = YES;
rt300@11 42 // [self.alert release];
rt300@11 43 }
rt300@11 44
rt300@11 45 - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
rt300@11 46
rt300@11 47 NSLog(@"Preset save %@", [[alertView textFieldAtIndex:0] text]);
rt300@11 48 if(buttonIndex == 0){
rt300@11 49 // cancel
rt300@11 50 NSLog(@"preset save was cancelled");
rt300@11 51 self.alertShowing = NO;
rt300@11 52 }else{
rt300@11 53 // save it
rt300@11 54 self.alertShowing = NO;
rt300@11 55 if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"newuser"]){
rt300@11 56 // call new user stufff
rt300@11 57 eventLogger.newUser();
rt300@11 58 }else if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"printall"]){
rt300@11 59 presetManager.printAll();
rt300@11 60 eventLogger.printAll();
rt300@11 61 }else if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"questionnaire"]){
rt300@11 62 ((testApp *)ofGetAppPtr())->showQuestionnaire();
rt300@11 63
rt300@11 64 }else{
rt300@11 65 presetManager.addPreset([[[alertView textFieldAtIndex:0] text] cStringUsingEncoding:NSASCIIStringEncoding]);
rt300@11 66 }
rt300@11 67 }
rt300@11 68 }
rt300@11 69
rt300@11 70 -(BOOL)textFieldShouldReturn:(UITextField *)textField{
rt300@11 71 // save it
rt300@11 72 self.alertShowing = NO;
rt300@11 73 if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"newuser"]){
rt300@11 74 // call new user stufff
rt300@11 75 eventLogger.newUser();
rt300@11 76 }else if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"printall"]){
rt300@11 77 presetManager.printAll();
rt300@11 78 eventLogger.printAll();
rt300@11 79 }else if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"questionnaire"]){
rt300@11 80 ((testApp *)ofGetAppPtr())->showQuestionnaire();
rt300@11 81
rt300@11 82 }else{
rt300@11 83 presetManager.addPreset([[[self.alert textFieldAtIndex:0] text] cStringUsingEncoding:NSASCIIStringEncoding]);
rt300@11 84 }
rt300@11 85 [self.alert dismissWithClickedButtonIndex:self.alert.firstOtherButtonIndex animated:YES];
rt300@11 86 return YES;
rt300@11 87 }
rt300@11 88
rt300@11 89 - (BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView *)alertView
rt300@11 90 {
rt300@11 91 UITextField *textField = [alertView textFieldAtIndex:0];
rt300@11 92 if ([textField.text length] == 0)
rt300@11 93 {
rt300@11 94 return NO;
rt300@11 95 }
rt300@11 96 return YES;
rt300@11 97 }
rt300@11 98
rt300@11 99
rt300@11 100
rt300@11 101 @end
rt300@11 102
rt300@11 103
rt300@11 104 // global? again.
rt300@11 105 PresetAlertViewController *presetAlertViewController = [[PresetAlertViewController alloc] init];