From f3694fc39f8c16f31bb41a59120d3ac0254b14fa Mon Sep 17 00:00:00 2001 From: Ptyl Dragon Date: Fri, 1 Nov 2013 14:47:04 +0200 Subject: in progress of linkinh width and height Change-Id: I2d7f5a7bd41b8d2c4a62d199abb81afc466fc2ce --- .../view_controllers/MLOTestingTileParameter.h | 5 +-- .../view_controllers/MLOTestingTileParameter.m | 21 ++++++++--- .../MLOTestingTileParametersViewController.h | 7 ++++ .../MLOTestingTileParametersViewController.m | 43 +++++++++++++++++----- 4 files changed, 58 insertions(+), 18 deletions(-) (limited to 'ios') diff --git a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.h b/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.h index 2f31281dcb04..df0f70bd592e 100644 --- a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.h +++ b/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.h @@ -8,13 +8,12 @@ #import "MLOObject.h" - typedef void (^MLOTestingTileParameterExtractor)(CGFloat value); @class MLOTestingTileParametersViewController; @interface MLOTestingTileParameter : MLOObject --(MLOTestingTileParameter *)initWithParams:(MLOTestingTileParametersViewController *) params label:(NSString *)label extractor:(MLOTestingTileParameterExtractor) extractor defaultValue:(NSInteger) defaultValue; --(void)extract; +-(MLOTestingTileParameter *)initWithParams:(MLOTestingTileParametersViewController *) params label:(NSString *)label extractor1:(MLOTestingTileParameterExtractor) extractor extractor2:(MLOTestingTileParameterExtractor) linkedExtractor defaultValue:(NSInteger) defaultValue; +-(void)extract:(BOOL) isExtractor1; -(void)setParamFrame:(CGRect) paramFrame; -(void)addToSuperview; @end diff --git a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m b/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m index 1107eef91609..b5fcd8dcefc9 100644 --- a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m +++ b/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m @@ -11,7 +11,8 @@ @interface MLOTestingTileParameter () @property MLOTestingTileParametersViewController * params; -@property (nonatomic,strong) MLOTestingTileParameterExtractor extractor; +@property (nonatomic,strong) MLOTestingTileParameterExtractor extractor1; +@property (nonatomic,strong) MLOTestingTileParameterExtractor extractor2; @property UILabel * label; @property UITextField * data; @property UITextField * step; @@ -24,12 +25,13 @@ static const CGFloat DEFAULT_STEP_VALUE = 1; @implementation MLOTestingTileParameter --(MLOTestingTileParameter *)initWithParams:(MLOTestingTileParametersViewController *) params label:(NSString *)label extractor:(MLOTestingTileParameterExtractor) extractor defaultValue:(NSInteger) defaultValue{ +-(MLOTestingTileParameter *)initWithParams:(MLOTestingTileParametersViewController *) params label:(NSString *)label extractor1:(MLOTestingTileParameterExtractor) extractor1 extractor2:(MLOTestingTileParameterExtractor) extractor2 defaultValue:(NSInteger) defaultValue{ NSLog(@"Creating tile testing param %@ with default value %d",label,defaultValue); self = [self init]; if(self){ self.params = params; - self.extractor = extractor; + self.extractor1 = extractor1; + self.extractor2 = extractor2; self.defaultValue = defaultValue; [self initLabel:label]; self.dataStepper = [self createStepper]; @@ -167,9 +169,16 @@ static const CGFloat DEFAULT_STEP_VALUE = 1; return [self.data.text floatValue]; } --(void)extract{ - NSLog(@"%@ extract",self); +-(void)extract:(BOOL) isExtractor1{ - self.extractor([self currentDataValue]); + NSLog(@"%@ extract %d",self,isExtractor1?1:2); + + CGFloat dataValue = [self currentDataValue]; + + if(isExtractor1){ + self.extractor1(dataValue); + }else{ + self.extractor2(dataValue); + } } @end diff --git a/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.h b/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.h index 47c6a6e66954..ffbf903b6f5a 100644 --- a/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.h +++ b/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.h @@ -9,6 +9,13 @@ #import "MLOViewController.h" #import "MLOTestingTileSubviewControllerProtocol.h" +static const CGFloat CONTEXT_WIDTH_DEFAULT = 600; +static const CGFloat CONTEXT_HEIGHT_DEFAULT = 600; +static const CGFloat TILE_POS_X_DEFAULT = 500; +static const CGFloat TILE_POS_Y_DEFAULT = 620; +static const CGFloat TILE_WIDTH_DEFAULT = 1000; +static const CGFloat TILE_HEIGHT_DEFAULT = 1020; + @interface MLOTestingTileParametersViewController : MLOViewController @property CGFloat contextWidth, contextHeight, tilePosX, tilePosY, tileWidth, tileHeight; -(void)renderTile; diff --git a/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.m b/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.m index 4feee1ef6474..c544f2af5596 100644 --- a/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.m +++ b/ios/shared/ios_sharedlo/objective_c/view_controllers/testing_tiles/MLOTestingTileParametersViewController.m @@ -18,7 +18,6 @@ static const CGFloat RENDER_BUTTON_HEIGHT = 50.0f; @property NSArray * params; @property UIButton * renderButton; @end - @implementation MLOTestingTileParametersViewController -(id)initWithTester:(MLOAppRoleTileTester *)tester{ @@ -39,12 +38,31 @@ static const CGFloat RENDER_BUTTON_HEIGHT = 50.0f; } -(void)initParams{ - self.params = @[[self createParam:@"contextWidth" extractor:^(CGFloat value){self.contextWidth = value;} value:600], - [self createParam:@"contextHeight" extractor:^(CGFloat value){self.contextHeight = value;} value:600], - [self createParam:@"tilePosX" extractor:^(CGFloat value){self.tilePosX = value;} value:500], - [self createParam:@"tilePosY" extractor:^(CGFloat value){self.tilePosY = value;} value:620], - [self createParam:@"tileWidth" extractor:^(CGFloat value){self.tileWidth = value;} value:1000], - [self createParam:@"tileHeight" extractor:^(CGFloat value){self.tileHeight = value;} value:1020] + self.params = @[[self createParam:@"contextWidth" + extractor1:^(CGFloat value){self.contextWidth = value;} + extractor2:^(CGFloat value){self.contextWidth = self.contextHeight = value;} + value:CONTEXT_WIDTH_DEFAULT], + + [self createConditionalParam:@"contextHeight" + extractor:^(CGFloat value){self.contextHeight = value;} + value:CONTEXT_HEIGHT_DEFAULT], + + [self createNormalParam:@"tilePosX" + extractor:^(CGFloat value){self.tilePosX = value;} + value:TILE_POS_X_DEFAULT], + + [self createNormalParam:@"tilePosY" + extractor:^(CGFloat value){self.tilePosY = value;} + value:TILE_POS_Y_DEFAULT], + + [self createParam:@"tileWidth" + extractor1:^(CGFloat value){self.tileWidth = value;} + extractor2:^(CGFloat value){self.tileWidth = self.tileHeight = value;} + value:TILE_WIDTH_DEFAULT], + + [self createConditionalParam:@"tileHeight" + extractor:^(CGFloat value){self.tileHeight = value;} + value:TILE_HEIGHT_DEFAULT] ]; } @@ -56,8 +74,15 @@ static const CGFloat RENDER_BUTTON_HEIGHT = 50.0f; } --(MLOTestingTileParameter *) createParam:(NSString *)name extractor:(MLOTestingTileParameterExtractor) extractor value:(CGFloat)defaultValue{ - return [[MLOTestingTileParameter alloc] initWithParams:self label:name extractor:extractor defaultValue:defaultValue]; +-(MLOTestingTileParameter *) createNormalParam:(NSString *)name extractor:(MLOTestingTileParameterExtractor) extractor value:(CGFloat)defaultValue{ + return [self createParam:name extractor1:extractor extractor2:extractor value:defaultValue];} + +-(MLOTestingTileParameter *) createConditionalParam:(NSString *)name extractor:(MLOTestingTileParameterExtractor) extractor value:(CGFloat)defaultValue{ + return [self createParam:name extractor1:extractor extractor2:nil value:defaultValue]; +} + +-(MLOTestingTileParameter *) createParam:(NSString *)name extractor1:(MLOTestingTileParameterExtractor) extractor1 extractor2:(MLOTestingTileParameterExtractor) extractor2 value:(CGFloat)defaultValue{ + return [[MLOTestingTileParameter alloc] initWithParams:self label:name extractor1:extractor1 extractor2:extractor2 defaultValue:defaultValue]; } -- cgit