Mercurial > hg > wabletios
changeset 11:274864620848
preset alert code
author | Robert Tubb <rt300@eecs.qmul.ac.uk> |
---|---|
date | Wed, 15 May 2013 17:43:51 +0100 |
parents | df1d4beb6994 |
children | 5bf377b4c780 |
files | PresetAlertViewController.h PresetAlertViewController.mm |
diffstat | 2 files changed, 123 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PresetAlertViewController.h Wed May 15 17:43:51 2013 +0100 @@ -0,0 +1,18 @@ +// +// iViewController.h +// oscSenderExample +// +// Created by Robert Tubb on 07/01/2013. +// +// + +#import <Foundation/Foundation.h> + + + +@interface PresetAlertViewController : NSObject <UIAlertViewDelegate,UITextFieldDelegate> +@property BOOL alertShowing; +- (void)showPresetNamePrompt; +@property (strong,nonatomic) UIAlertView * alert; +@end +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PresetAlertViewController.mm Wed May 15 17:43:51 2013 +0100 @@ -0,0 +1,105 @@ +// +// iViewController.m +// oscSenderExample +// +// Created by Robert Tubb on 07/01/2013. +// +// +#include "presetManager.h" +#include "testApp.h" +#import "PresetAlertViewController.h" + + +extern PresetManager presetManager; +extern EventLogger eventLogger; + +@implementation PresetAlertViewController +- (PresetAlertViewController *) init{ + [super init]; + self = [super init]; + if (self) { + // Custom initialization + + self.alertShowing = NO; + + } + return self; + +} +- (void)showPresetNamePrompt{ + self.alert = [[UIAlertView alloc] initWithTitle:@"Save" + message:@"Enter preset name:" + delegate:self + cancelButtonTitle:@"Cancel" + otherButtonTitles:@"Enter",nil]; + self.alert.alertViewStyle = UIAlertViewStylePlainTextInput; + UITextField * alertTextField = [self.alert textFieldAtIndex:0]; + [alertTextField setDelegate:self]; + alertTextField.keyboardType = UIKeyboardTypeDefault; + alertTextField.placeholder = @"Preset Name"; + [self.alert show]; + self.alertShowing = YES; + // [self.alert release]; +} + +- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{ + + NSLog(@"Preset save %@", [[alertView textFieldAtIndex:0] text]); + if(buttonIndex == 0){ + // cancel + NSLog(@"preset save was cancelled"); + self.alertShowing = NO; + }else{ + // save it + self.alertShowing = NO; + if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"newuser"]){ + // call new user stufff + eventLogger.newUser(); + }else if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"printall"]){ + presetManager.printAll(); + eventLogger.printAll(); + }else if([[[alertView textFieldAtIndex:0] text] isEqualToString:@"questionnaire"]){ + ((testApp *)ofGetAppPtr())->showQuestionnaire(); + + }else{ + presetManager.addPreset([[[alertView textFieldAtIndex:0] text] cStringUsingEncoding:NSASCIIStringEncoding]); + } + } +} + +-(BOOL)textFieldShouldReturn:(UITextField *)textField{ + // save it + self.alertShowing = NO; + if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"newuser"]){ + // call new user stufff + eventLogger.newUser(); + }else if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"printall"]){ + presetManager.printAll(); + eventLogger.printAll(); + }else if([[[self.alert textFieldAtIndex:0] text] isEqualToString:@"questionnaire"]){ + ((testApp *)ofGetAppPtr())->showQuestionnaire(); + + }else{ + presetManager.addPreset([[[self.alert textFieldAtIndex:0] text] cStringUsingEncoding:NSASCIIStringEncoding]); + } + [self.alert dismissWithClickedButtonIndex:self.alert.firstOtherButtonIndex animated:YES]; + return YES; +} + +- (BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView *)alertView +{ + UITextField *textField = [alertView textFieldAtIndex:0]; + if ([textField.text length] == 0) + { + return NO; + } + return YES; +} + + + +@end + + +// global? again. +PresetAlertViewController *presetAlertViewController = [[PresetAlertViewController alloc] init];