From 95f5a78f24abcf871cd90daebdffb2ea7aebf63a Mon Sep 17 00:00:00 2001 From: Maxime Graulich <maxime.graulich@gmail.com> Date: Tue, 25 Mar 2014 12:50:57 +0000 Subject: [PATCH] iOS: check for new parameters when a value change --- contrib/mobile/iOS/Onelab/Parameter.mm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/contrib/mobile/iOS/Onelab/Parameter.mm b/contrib/mobile/iOS/Onelab/Parameter.mm index 251d98f541..c7b37d2362 100644 --- a/contrib/mobile/iOS/Onelab/Parameter.mm +++ b/contrib/mobile/iOS/Onelab/Parameter.mm @@ -39,10 +39,14 @@ { [label setFrame:frame]; } --(bool)isReadOnly +-(void)editValue { - return NO; + if(onelab_cb("check") == 1){ + [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [[NSNotificationCenter defaultCenter] postNotificationName:@"refreshParameters" object:nil]; + } } +-(bool) isReadOnly {return NO;} +(double)getHeight { return 60.0f; @@ -83,8 +87,7 @@ std::string selected = string[0].getChoices()[buttonIndex]; string[0].setValue(selected); onelab::server::instance()->set(string[0]); - if(onelab_cb("check") == 1) - [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [super editValue]; } -(void)refresh { @@ -148,8 +151,7 @@ number[0].setValue(selected); onelab::server::instance()->set(number[0]); [button setTitle:[NSString stringWithFormat:@"%s", number[0].getValueLabel(number[0].getValue()).c_str()] forState:UIControlStateNormal]; - if(onelab_cb("check") == 1) - [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [super editValue]; } -(void)refresh { @@ -206,8 +208,7 @@ if(number.size() < 1) return; number[0].setValue(([sender isOn])? 1 : 0); onelab::server::instance()->set(number[0]); - if(onelab_cb("check") == 1) - [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [super editValue]; } -(void)setFrame:(CGRect)frame { @@ -256,8 +257,7 @@ number[0].setValue(sender.value); onelab::server::instance()->set(number[0]); [label setText:[NSString stringWithFormat:@"%s %d" ,number[0].getShortName().c_str(), (int)number[0].getValue()]]; - if(onelab_cb("check") == 1) - [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [super editValue]; } -(void)refresh { @@ -316,8 +316,7 @@ number[0].setValue(sender.value); onelab::server::instance()->set(number[0]); [label setText:[NSString stringWithFormat:@"%s %f" ,number[0].getShortName().c_str(), number[0].getValue()]]; - if(onelab_cb("check") == 1) - [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; + [super editValue]; } -(void)setFrame:(CGRect)frame { @@ -381,6 +380,7 @@ number[0].setValue([textField.text doubleValue]); onelab::server::instance()->set(number[0]); [textField setText:[NSString stringWithFormat:@"%f", number[0].getValue()]]; + [super editValue]; return YES; } -(BOOL)textFieldShouldReturn:(UITextField *)textField -- GitLab