summaryrefslogtreecommitdiff
path: root/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m
diff options
context:
space:
mode:
Diffstat (limited to 'ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m')
-rw-r--r--ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m204
1 files changed, 0 insertions, 204 deletions
diff --git a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m b/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m
deleted file mode 100644
index f43dfb8e322b..000000000000
--- a/ios/shared/ios_sharedlo/objective_c/view_controllers/MLOTestingTileParameter.m
+++ /dev/null
@@ -1,204 +0,0 @@
-// -*- Mode: Objective-C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-//
-// This file is part of the LibreOffice project.
-//
-// This Source Code Form is subject to the terms of the Mozilla Public
-// License, v. 2.0. If a copy of the MPL was not distributed with this
-// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-#import "MLOTestingTileParameter.h"
-#import "MLOTestingTileParametersViewController.h"
-
-@interface MLOTestingTileParameter ()
-@property MLOTestingTileParametersViewController * params;
-@property (nonatomic,strong) MLOTestingTileParameterExtractor widthIsHeightExtractor;
-@property (nonatomic,strong) MLOTestingTileParameterExtractor widthIsNotHeightExtractor;
-@property UILabel * label;
-@property UITextField * data;
-@property UITextField * step;
-@property NSInteger defaultValue;
-@property UIStepper * dataStepper;
-@property UIStepper * stepStepper;
-@end
-
-static const CGFloat DEFAULT_STEP_VALUE = 10;
-
-@implementation MLOTestingTileParameter
-
--(MLOTestingTileParameter *)initWithParams:(MLOTestingTileParametersViewController *) params label:(NSString *)label widthIsNotHeightExtractor:(MLOTestingTileParameterExtractor) widthIsNotHeightExtractor widthIsHeightExtractor:(MLOTestingTileParameterExtractor) widthIsHeightExtractor defaultValue:(NSInteger) defaultValue{
- NSLog(@"Creating tile testing param %@ with default value %d",label,defaultValue);
- self = [self init];
- if(self){
- self.params = params;
- self.widthIsHeightExtractor = widthIsHeightExtractor;
- self.widthIsNotHeightExtractor = widthIsNotHeightExtractor;
- self.defaultValue = defaultValue;
- [self initLabel:label];
- self.dataStepper = [self stepperWithMinValue:-MAXFLOAT];
- self.stepStepper = [self stepperWithMinValue:1];
- // The step stepper obviously needs a step value of 1,
- // and an initial value of DEFAULT_STEP_VALUE.
- self.stepStepper.stepValue = 1;
- self.stepStepper.value = DEFAULT_STEP_VALUE;
- [self initDataTextField];
- [self initStepTextField];
- }
- return self;
-}
-
--(UIStepper *) stepperWithMinValue:(CGFloat) minValue{
- UIStepper * stepper = [UIStepper new];
- stepper.maximumValue = MAXFLOAT;
- stepper.minimumValue = minValue;
- stepper.stepValue = DEFAULT_STEP_VALUE;
- stepper.autorepeat = YES;
- stepper.continuous = NO;
- [stepper addObserver:self forKeyPath:@"value"
- options: NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld
- context:0];
- return stepper;
-}
-
-- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
-{
-
- if (object == self.dataStepper) {
- NSNumber * newNumber = change[NSKeyValueChangeNewKey];
- NSNumber * oldNumber = change[NSKeyValueChangeOldKey];
-
- CGFloat value = [self currentDataValue] + [newNumber floatValue] - [oldNumber floatValue];
-
- if(value == ((NSInteger) value)){
- self.data.text = [[NSNumber numberWithInteger:(NSInteger) value] stringValue];
- }else{
- self.data.text = [[NSNumber numberWithFloat:value] stringValue];
- }
- [self.params renderTile];
- }else if (object == self.stepStepper){
-
- NSNumber * floatNumber = change[NSKeyValueChangeNewKey];
- NSInteger value = [floatNumber integerValue];
- NSNumber * newValue = [NSNumber numberWithInteger:value];
- self.step.text = [newValue stringValue];
- self.dataStepper.stepValue = [newValue floatValue];
- }
-}
-
-
--(void)initStepTextField{
-
- self.step =[[UITextField alloc] initWithFrame:CGRECT_ZERO];
- self.data.textAlignment = NSTextAlignmentLeft;
- self.step.text = [[NSNumber numberWithInteger:(NSInteger)DEFAULT_STEP_VALUE] stringValue];
-}
-
--(NSString *)description{
- return [@"MLOTestingTileParameter: " stringByAppendingString:self.label.text];
-}
-
--(void) initLabel:(NSString *) label{
- self.label =[[UILabel alloc] initWithFrame:CGRECT_ZERO];
- self.label.text = label;
- self.label.textAlignment = NSTextAlignmentCenter;
-}
-
--(void) initDataTextField{
- self.data = [[UITextField alloc] initWithFrame:CGRECT_ZERO];
- [self.data setKeyboardType:UIKeyboardTypeNumberPad];
- self.data.textAlignment = NSTextAlignmentLeft;
- [self resetValue];
-}
-
--(void)resetValue{
-
- self.data.text = [NSString stringWithFormat:@"%d",self.defaultValue];
-}
-
--(void)setParamFrame:(CGRect) paramFrame{
- NSLog(@"%@ setParamFrame",self);
-
- CGFloat x = paramFrame.origin.x;
- CGFloat y = paramFrame.origin.y;
- CGFloat w = paramFrame.size.width;
- CGFloat h = paramFrame.size.height;
-
- CGFloat labelW = w/3.0f;
- CGFloat otherW = w/6.0f;
-
- self.label.frame=CGRectMake(x,
- y,
- labelW,
- h);
- self.data.frame =CGRectMake(x + labelW,
- y,
- otherW,
- h);
- self.dataStepper.frame = CGRectMake(x + labelW + otherW,
- y,
- otherW,
- h);
-
- self.step.frame = CGRectMake(x + labelW + 2*otherW,
- y,
- otherW,
- h);
- self.stepStepper.frame = CGRectMake(x + labelW + 3*otherW,
- y,
- otherW,
- h);
-
-}
-
--(void)addToSuperview{
- NSLog(@"%@ addToSuperview",self);
- [self.params.view addSubview:self.label];
- [self.params.view addSubview:self.data];
- [self.params.view addSubview:self.dataStepper];
- [self.params.view addSubview:self.step];
- [self.params.view addSubview:self.stepStepper];
-}
-
--(BOOL)isNumber:(NSString *) string{
-
- return [[NSNumberFormatter new]numberFromString:string] == nil;
-}
-
--(CGFloat) currentDataValue{
- if([self isNumber:self.data.text]){
-
- NSLog(@"%@ got illegal value: %@, reseting to %d",self,self.data.text,self.defaultValue);
-
- [self resetValue];
- }
- return [self.data.text floatValue];
-}
-
--(MLOTestingTileParameterExtractor) getExtractor:(MLOTestingTileParametersMode) mode{
- switch (mode) {
- case WIDTH_IS_HEIGHT:
- return self.widthIsHeightExtractor;
- case WIDTH_IS_NOT_HEIGHT:
- return self.widthIsNotHeightExtractor;
- }
-}
-
--(void)extractMode:(MLOTestingTileParametersMode) mode{
- MLOTestingTileParameterExtractor extractor = [self getExtractor:mode];
- if(extractor!=nil){
- // NSLog(@"%@ extract %@",self,MLOTestingTileParametersModeString(mode));
- extractor([self currentDataValue]);
- }
-}
--(BOOL)isSupportingMode:(MLOTestingTileParametersMode) mode{
- return [self getExtractor:mode]!=nil;
-}
--(void)enterMode:(MLOTestingTileParametersMode)mode{
- CGFloat alpha = [self isSupportingMode:mode] ? 1.0f: 0.0f;
- self.label.alpha = alpha;
- self.data.alpha = alpha;
- self.dataStepper.alpha = alpha;
- self.step.alpha =alpha;
- self.stepStepper.alpha = alpha;
-}
-
-@end