Skip to content
Snippets Groups Projects
Commit 4f8dc340 authored by Maxime Graulich's avatar Maxime Graulich
Browse files

Fix insert parameters/pviews

parent adc51a0c
Branches
Tags
No related merge requests found
...@@ -72,7 +72,7 @@ if(ENABLE_BUILD_IOS_EMULATOR OR ENABLE_BUILD_IOS) ...@@ -72,7 +72,7 @@ if(ENABLE_BUILD_IOS_EMULATOR OR ENABLE_BUILD_IOS)
COMMAND ${CMAKE_COMMAND} -E copy ${PETSC_FRAMEWORK}/petsc ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/petsc.framework/ COMMAND ${CMAKE_COMMAND} -E copy ${PETSC_FRAMEWORK}/petsc ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/petsc.framework/
) )
copy_headers(${GETDP_FRAMEWORK}/Headers/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/GetDP.framework/Headers/) copy_headers(${GETDP_FRAMEWORK}/Headers/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/GetDP.framework/Headers/)
copy_headers(${GMSH_FRAMEWORK}/Headers/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/Gmsh.framework/Headers/) copy_headers(${GMSH_FRAMEWORK}/Headers/gmsh/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/Gmsh.framework/Headers/)
copy_headers(${PETSC_FRAMEWORK}/Headers/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/petsc.framework/Headers/) copy_headers(${PETSC_FRAMEWORK}/Headers/ ${CMAKE_CURRENT_BINARY_DIR}/Onelab/Onelab/frameworks/petsc.framework/Headers/)
endif(ENABLE_BUILD_IOS_EMULATOR OR ENABLE_BUILD_IOS) endif(ENABLE_BUILD_IOS_EMULATOR OR ENABLE_BUILD_IOS)
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include <gmsh/PView.h> #include <gmsh/PView.h>
#include <gmsh/PViewData.h> #include <gmsh/PViewData.h>
#include <gmsh/PViewOptions.h> #include <gmsh/PViewOptions.h>
#include <gmsh/GmshDefines.h>
@interface OptionsViewController () @interface OptionsViewController ()
...@@ -34,7 +35,8 @@ ...@@ -34,7 +35,8 @@
{ {
[super viewDidLoad]; [super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshParameters:) name:@"refreshParameters" object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshOptions:) name:@"refreshParameters" object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshOptions:) name:@"resetParameters" object:nil];
self.navigationItem.title = @"Options"; self.navigationItem.title = @"Options";
...@@ -64,10 +66,23 @@ ...@@ -64,10 +66,23 @@
// Dispose of any resources that can be recreated. // Dispose of any resources that can be recreated.
} }
- (void)refreshParameters:(id)sender - (void)refreshOptions:(id)sender
{
[self performSelectorOnMainThread:@selector(refreshOptions) withObject:nil waitUntilDone:NO];
}
- (void)refreshOptions
{ {
NSInteger nrow = [self.tableView numberOfRowsInSection:1]; NSInteger nrow = [self.tableView numberOfRowsInSection:1];
if(nrow < PView::list.size()-1) if(PView::list.size() == 0)
{
NSMutableArray *array = [[NSMutableArray alloc] init];
for(NSInteger i = 0; i<nrow; i++)
[array addObject:[NSIndexPath indexPathForRow:i inSection:1]];
[self.tableView beginUpdates];
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithArray:array] withRowAnimation:UITableViewRowAnimationAutomatic];
[self.tableView endUpdates];
}
else if(nrow < PView::list.size())
{ {
NSMutableArray *array = [[NSMutableArray alloc] init]; NSMutableArray *array = [[NSMutableArray alloc] init];
for(NSInteger i = nrow; i<PView::list.size(); i++) for(NSInteger i = nrow; i<PView::list.size(); i++)
...@@ -119,8 +134,10 @@ ...@@ -119,8 +134,10 @@
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if(cell == nil) if(cell == nil)
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"postproCell"]; cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"postproCell"];
else else {
return cell; cell = nil;
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"postproCell"];
}
[cell setFrame:CGRectMake(cell.frame.origin.x, cell.frame.origin.x, tableView.frame.size.width, cell.frame.size.height)]; [cell setFrame:CGRectMake(cell.frame.origin.x, cell.frame.origin.x, tableView.frame.size.width, cell.frame.size.height)];
switch (indexPath.section) { switch (indexPath.section) {
case 0: case 0:
...@@ -139,14 +156,14 @@ ...@@ -139,14 +156,14 @@
[showHideOptions addTarget:self action:@selector(setShowGeomLines:) forControlEvents:UIControlEventValueChanged]; [showHideOptions addTarget:self action:@selector(setShowGeomLines:) forControlEvents:UIControlEventValueChanged];
} }
else if(indexPath.row == 2) { else if(indexPath.row == 2) {
[lblOptions setText:@"Show mesh lines"]; [lblOptions setText:@"Show mesh surface edges"];
[showHideOptions setOn:(CTX::instance()->mesh.lines)]; [showHideOptions setOn:(CTX::instance()->mesh.surfacesEdges)];
[showHideOptions addTarget:self action:@selector(setShowMeshLines:) forControlEvents:UIControlEventValueChanged]; [showHideOptions addTarget:self action:@selector(setShowMeshSurfacesEdges:) forControlEvents:UIControlEventValueChanged];
} }
else if(indexPath.row == 3) { else if(indexPath.row == 3) {
[lblOptions setText:@"Show mesh edges"]; [lblOptions setText:@"Show mesh volumes edges"];
[showHideOptions setOn:(CTX::instance()->mesh.surfacesEdges || CTX::instance()->mesh.volumesEdges)]; [showHideOptions setOn:CTX::instance()->mesh.volumesEdges];
[showHideOptions addTarget:self action:@selector(setShowMeshEdges:) forControlEvents:UIControlEventValueChanged]; [showHideOptions addTarget:self action:@selector(setShowMeshVolumesEdges:) forControlEvents:UIControlEventValueChanged];
} }
[cell addSubview:showHideOptions]; [cell addSubview:showHideOptions];
[cell addSubview:lblOptions]; [cell addSubview:lblOptions];
...@@ -191,17 +208,16 @@ ...@@ -191,17 +208,16 @@
CTX::instance()->geom.lines = sender.on; CTX::instance()->geom.lines = sender.on;
[[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil];
} }
- (void)setShowMeshEdges:(UISwitch*)sender - (void)setShowMeshVolumesEdges:(UISwitch*)sender
{ {
CTX::instance()->mesh.surfacesEdges = sender.on;
CTX::instance()->mesh.volumesEdges = sender.on; CTX::instance()->mesh.volumesEdges = sender.on;
CTX::instance()->mesh.changed = YES; CTX::instance()->mesh.changed = ENT_VOLUME;
[[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil];
} }
- (void)setShowMeshLines:(UISwitch*)sender - (void)setShowMeshSurfacesEdges:(UISwitch*)sender
{ {
CTX::instance()->mesh.lines = sender.on; CTX::instance()->mesh.surfacesEdges = sender.on;
CTX::instance()->mesh.changed = YES; CTX::instance()->mesh.changed = ENT_SURFACE;
[[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil];
} }
-(IBAction)PViewVisible:(id)sender -(IBAction)PViewVisible:(id)sender
......
...@@ -355,6 +355,7 @@ ...@@ -355,6 +355,7 @@
if(number.size() < 1) return YES; if(number.size() < 1) return YES;
number[0].setValue([textField.text doubleValue]); number[0].setValue([textField.text doubleValue]);
onelab::server::instance()->set(number[0]); onelab::server::instance()->set(number[0]);
[textField setText:[NSString stringWithFormat:@"%f", number[0].getValue()]];
return YES; return YES;
} }
-(BOOL)textFieldShouldReturn:(UITextField *)textField -(BOOL)textFieldShouldReturn:(UITextField *)textField
......
...@@ -128,11 +128,6 @@ ...@@ -128,11 +128,6 @@
} }
- (void)refreshTableView - (void)refreshTableView
{ {
if(!_lastRefresh) _lastRefresh = [NSDate date];
else {
if([_lastRefresh timeIntervalSinceNow] >= -1) return;
_lastRefresh = [NSDate date];
}
std::vector<onelab::number> number; std::vector<onelab::number> number;
onelab::server::instance()->get(number); onelab::server::instance()->get(number);
...@@ -209,8 +204,16 @@ ...@@ -209,8 +204,16 @@
} }
- (void)refreshParameters:(id)sender - (void)refreshParameters:(id)sender
{ {
[self performSelectorOnMainThread:@selector(refreshParameters) withObject:nil waitUntilDone:NO];
}
- (void)refreshParameters
{
if(!_lastRefresh) _lastRefresh = [NSDate date];
else {
if([_lastRefresh timeIntervalSinceNow] >= -1) return;
_lastRefresh = [NSDate date];
}
[self refreshTableView]; // Get the param [self refreshTableView]; // Get the param
[self.tableView setNeedsDisplay];
} }
- (void)resetParameters:(id)sender - (void)resetParameters:(id)sender
{ {
...@@ -218,8 +221,8 @@ ...@@ -218,8 +221,8 @@
[_sections removeAllObjects]; [_sections removeAllObjects];
[_sectionstitle removeAllObjects]; [_sectionstitle removeAllObjects];
[self.tableView reloadData]; [self.tableView reloadData];
[self refreshParameters:sender]; onelab_cb("check");
onelab_cb("check"); [self refreshTableView];
[[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil]; [[NSNotificationCenter defaultCenter] postNotificationName:@"requestRender" object:nil];
} }
...@@ -283,8 +286,10 @@ ...@@ -283,8 +286,10 @@
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if(cell == nil) if(cell == nil)
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
else else {
return cell; cell = nil;
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
[cell setSelectionStyle:UITableViewCellSelectionStyleNone]; [cell setSelectionStyle:UITableViewCellSelectionStyleNone];
[cell setUserInteractionEnabled:!([tmp isReadOnly])]; [cell setUserInteractionEnabled:!([tmp isReadOnly])];
[tmp setLabelFrame:CGRectMake(20, 5, cell.frame.size.width - 40, cell.frame.size.height/2)]; [tmp setLabelFrame:CGRectMake(20, 5, cell.frame.size.width - 40, cell.frame.size.height/2)];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment