mirror of
https://github.com/libretro/RetroArch
synced 2025-04-22 08:43:05 +00:00
(Apple/iOS) Cleanups of menu.m
This commit is contained in:
parent
155e51259e
commit
dfc43810a7
105
apple/iOS/menu.m
105
apple/iOS/menu.m
@ -52,16 +52,17 @@ typedef void (^RAActionSheetCallback)(UIActionSheet*, NSInteger);
|
|||||||
|
|
||||||
static void RunActionSheet(const char* title, const struct string_list* items, UIView* parent, RAActionSheetCallback callback)
|
static void RunActionSheet(const char* title, const struct string_list* items, UIView* parent, RAActionSheetCallback callback)
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
RARunActionSheetDelegate* delegate = [[RARunActionSheetDelegate alloc] initWithCallbackBlock:callback];
|
RARunActionSheetDelegate* delegate = [[RARunActionSheetDelegate alloc] initWithCallbackBlock:callback];
|
||||||
|
|
||||||
UIActionSheet* actionSheet = [UIActionSheet new];
|
UIActionSheet* actionSheet = [UIActionSheet new];
|
||||||
|
|
||||||
actionSheet.title = BOXSTRING(title);
|
actionSheet.title = BOXSTRING(title);
|
||||||
actionSheet.delegate = delegate;
|
actionSheet.delegate = delegate;
|
||||||
|
|
||||||
for (int i = 0; i < items->size; i ++)
|
for (i = 0; i < items->size; i ++)
|
||||||
[actionSheet addButtonWithTitle:BOXSTRING(items->elems[i].data)];
|
[actionSheet addButtonWithTitle:BOXSTRING(items->elems[i].data)];
|
||||||
|
|
||||||
actionSheet.cancelButtonIndex = [actionSheet addButtonWithTitle:@"Cancel"];
|
actionSheet.cancelButtonIndex = [actionSheet addButtonWithTitle:BOXSTRING("Cancel")];
|
||||||
|
|
||||||
objc_setAssociatedObject(actionSheet, associated_delegate_key, delegate, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
|
objc_setAssociatedObject(actionSheet, associated_delegate_key, delegate, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
|
||||||
|
|
||||||
@ -222,6 +223,7 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (UITableViewCell*)cellForTableView:(UITableView*)tableView
|
- (UITableViewCell*)cellForTableView:(UITableView*)tableView
|
||||||
{
|
{
|
||||||
|
char buffer[256];
|
||||||
static NSString* const cell_id = @"string_setting";
|
static NSString* const cell_id = @"string_setting";
|
||||||
|
|
||||||
self.parentTable = tableView;
|
self.parentTable = tableView;
|
||||||
@ -235,7 +237,6 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
[self attachDefaultingGestureTo:result];
|
[self attachDefaultingGestureTo:result];
|
||||||
|
|
||||||
char buffer[256];
|
|
||||||
result.textLabel.text = BOXSTRING(self.setting->short_description);
|
result.textLabel.text = BOXSTRING(self.setting->short_description);
|
||||||
|
|
||||||
if (self.setting)
|
if (self.setting)
|
||||||
@ -250,12 +251,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
||||||
{
|
{
|
||||||
|
char buffer[256];
|
||||||
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:BOXSTRING("Enter new value") message:BOXSTRING(self.setting->short_description) delegate:self
|
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:BOXSTRING("Enter new value") message:BOXSTRING(self.setting->short_description) delegate:self
|
||||||
cancelButtonTitle:BOXSTRING("Cancel") otherButtonTitles:BOXSTRING("OK"), nil];
|
cancelButtonTitle:BOXSTRING("Cancel") otherButtonTitles:BOXSTRING("OK"), nil];
|
||||||
alertView.alertViewStyle = UIAlertViewStylePlainTextInput;
|
alertView.alertViewStyle = UIAlertViewStylePlainTextInput;
|
||||||
|
|
||||||
UITextField* field = [alertView textFieldAtIndex:0];
|
UITextField* field = [alertView textFieldAtIndex:0];
|
||||||
char buffer[256];
|
|
||||||
|
|
||||||
field.delegate = self.formatter;
|
field.delegate = self.formatter;
|
||||||
field.placeholder = BOXSTRING(setting_data_get_string_representation(self.setting, buffer, sizeof(buffer)));
|
field.placeholder = BOXSTRING(setting_data_get_string_representation(self.setting, buffer, sizeof(buffer)));
|
||||||
@ -286,9 +287,10 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
{
|
{
|
||||||
if (gesture.state == UIGestureRecognizerStateBegan)
|
if (gesture.state == UIGestureRecognizerStateBegan)
|
||||||
{
|
{
|
||||||
|
struct string_list* items;
|
||||||
RAMenuItemGeneralSetting __weak* weakSelf = self;
|
RAMenuItemGeneralSetting __weak* weakSelf = self;
|
||||||
|
|
||||||
struct string_list* items = (struct string_list*)string_split("OK", "|");
|
items = (struct string_list*)string_split("OK", "|");
|
||||||
RunActionSheet("Really Reset Value?", items, self.parentTable,
|
RunActionSheet("Really Reset Value?", items, self.parentTable,
|
||||||
^(UIActionSheet* actionSheet, NSInteger buttonIndex)
|
^(UIActionSheet* actionSheet, NSInteger buttonIndex)
|
||||||
{
|
{
|
||||||
@ -360,10 +362,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
||||||
{
|
{
|
||||||
|
NSString *path;
|
||||||
|
RADirectoryList* list;
|
||||||
RAMenuItemPathSetting __weak* weakSelf = self;
|
RAMenuItemPathSetting __weak* weakSelf = self;
|
||||||
|
|
||||||
NSString* path = [BOXSTRING(self.setting->value.string) stringByDeletingLastPathComponent];
|
path = [BOXSTRING(self.setting->value.string) stringByDeletingLastPathComponent];
|
||||||
RADirectoryList* list = [[RADirectoryList alloc] initWithPath:path extensions:self.setting->values action:
|
list = [[RADirectoryList alloc] initWithPath:path extensions:self.setting->values action:
|
||||||
^(RADirectoryList* list, RADirectoryItem* item)
|
^(RADirectoryList* list, RADirectoryItem* item)
|
||||||
{
|
{
|
||||||
if (!list.allowBlank && !item)
|
if (!list.allowBlank && !item)
|
||||||
@ -396,9 +400,10 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
|
||||||
{
|
{
|
||||||
|
struct string_list* items;
|
||||||
RAMenuItemEnumSetting __weak* weakSelf = self;
|
RAMenuItemEnumSetting __weak* weakSelf = self;
|
||||||
|
|
||||||
struct string_list* items = (struct string_list*)string_split(self.setting->values, "|");
|
items = (struct string_list*)string_split(self.setting->values, "|");
|
||||||
RunActionSheet(self.setting->short_description, items, self.parentTable,
|
RunActionSheet(self.setting->short_description, items, self.parentTable,
|
||||||
^(UIActionSheet* actionSheet, NSInteger buttonIndex)
|
^(UIActionSheet* actionSheet, NSInteger buttonIndex)
|
||||||
{
|
{
|
||||||
@ -471,7 +476,10 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
- (void)checkBind:(NSTimer*)send
|
- (void)checkBind:(NSTimer*)send
|
||||||
{
|
{
|
||||||
int32_t value = 0;
|
int32_t value = 0;
|
||||||
int32_t index = self.setting->index ? self.setting->index - 1 : 0;
|
int32_t index = 0;
|
||||||
|
|
||||||
|
if (self.setting->index)
|
||||||
|
index = self.setting->index - 1;
|
||||||
|
|
||||||
if ((value = apple_input_find_any_key()))
|
if ((value = apple_input_find_any_key()))
|
||||||
BINDFOR(*self.setting).key = input_translate_keysym_to_rk(value);
|
BINDFOR(*self.setting).key = input_translate_keysym_to_rk(value);
|
||||||
@ -509,10 +517,11 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)willReloadData
|
- (void)willReloadData
|
||||||
{
|
{
|
||||||
|
NSMutableArray* settings;
|
||||||
RAMainMenu* __weak weakSelf = self;
|
RAMainMenu* __weak weakSelf = self;
|
||||||
self.sections = [NSMutableArray array];
|
self.sections = [NSMutableArray array];
|
||||||
|
|
||||||
NSMutableArray* settings = [NSMutableArray arrayWithObjects:BOXSTRING("Settings"),
|
settings = [NSMutableArray arrayWithObjects:BOXSTRING("Settings"),
|
||||||
[RAMenuItemBasic itemWithDescription:BOXSTRING("Frontend")
|
[RAMenuItemBasic itemWithDescription:BOXSTRING("Frontend")
|
||||||
action:^{ [weakSelf.navigationController pushViewController:[RAFrontendSettingsMenu new] animated:YES]; }],
|
action:^{ [weakSelf.navigationController pushViewController:[RAFrontendSettingsMenu new] animated:YES]; }],
|
||||||
nil];
|
nil];
|
||||||
@ -562,9 +571,10 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)chooseCoreWithPath:(NSString*)path
|
- (void)chooseCoreWithPath:(NSString*)path
|
||||||
{
|
{
|
||||||
|
RAMenuCoreList* list;
|
||||||
RAMainMenu* __weak weakSelf = self;
|
RAMainMenu* __weak weakSelf = self;
|
||||||
|
|
||||||
RAMenuCoreList* list = [[RAMenuCoreList alloc] initWithPath:path allowAutoDetect:!path
|
list = [[RAMenuCoreList alloc] initWithPath:path allowAutoDetect:!path
|
||||||
action: ^(NSString* core)
|
action: ^(NSString* core)
|
||||||
{
|
{
|
||||||
if (path)
|
if (path)
|
||||||
@ -583,10 +593,11 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)loadGame
|
- (void)loadGame
|
||||||
{
|
{
|
||||||
|
RADirectoryList* list;
|
||||||
RAMainMenu __weak* weakSelf = self;
|
RAMainMenu __weak* weakSelf = self;
|
||||||
|
|
||||||
RADirectoryList* list = [[RADirectoryList alloc] initWithPath:[RetroArch_iOS get].documentsDirectory extensions:NULL action:
|
list = [[RADirectoryList alloc] initWithPath:[RetroArch_iOS get].documentsDirectory extensions:NULL action:
|
||||||
^(RADirectoryList *list, RADirectoryItem *item)
|
^(RADirectoryList *list, RADirectoryItem *item)
|
||||||
{
|
{
|
||||||
if (item && !item.isDirectory)
|
if (item && !item.isDirectory)
|
||||||
@ -643,11 +654,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)willReloadData
|
- (void)willReloadData
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
RAHistoryMenu* __weak weakSelf = self;
|
RAHistoryMenu* __weak weakSelf = self;
|
||||||
NSMutableArray* section = [NSMutableArray arrayWithObject:BOXSTRING("")];
|
NSMutableArray *section = [NSMutableArray arrayWithObject:BOXSTRING("")];
|
||||||
|
|
||||||
for (int i = 0; _history && i < rom_history_size(_history); i ++)
|
for (i = 0; _history && i < rom_history_size(_history); i ++)
|
||||||
{
|
{
|
||||||
RAMenuItemBasic* item = [RAMenuItemBasic itemWithDescription:BOXSTRING(path_basename(rom_history_get_path(weakSelf.history, i)))
|
RAMenuItemBasic* item = [RAMenuItemBasic itemWithDescription:BOXSTRING(path_basename(rom_history_get_path(weakSelf.history, i)))
|
||||||
action:^{ apple_run_core(BOXSTRING(rom_history_get_core_path(weakSelf.history, i)),
|
action:^{ apple_run_core(BOXSTRING(rom_history_get_core_path(weakSelf.history, i)),
|
||||||
@ -673,11 +685,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
{
|
{
|
||||||
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
||||||
{
|
{
|
||||||
self.title = BOXSTRING(group->name);
|
const rarch_setting_t *i;
|
||||||
|
|
||||||
NSMutableArray* settings = nil;
|
NSMutableArray* settings = nil;
|
||||||
|
|
||||||
for (const rarch_setting_t* i = group + 1; i->type < ST_END_GROUP; i ++)
|
self.title = BOXSTRING(group->name);
|
||||||
|
|
||||||
|
for (i = group + 1; i->type < ST_END_GROUP; i ++)
|
||||||
{
|
{
|
||||||
if (i->type == ST_SUB_GROUP)
|
if (i->type == ST_SUB_GROUP)
|
||||||
settings = [NSMutableArray arrayWithObjects:BOXSTRING(i->name), nil];
|
settings = [NSMutableArray arrayWithObjects:BOXSTRING(i->name), nil];
|
||||||
@ -717,6 +730,10 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
||||||
{
|
{
|
||||||
|
int i, j;
|
||||||
|
const rarch_setting_t *setting_data, *setting;
|
||||||
|
NSMutableArray* settings;
|
||||||
|
|
||||||
_isCustom = core_info_has_custom_config(core.UTF8String);
|
_isCustom = core_info_has_custom_config(core.UTF8String);
|
||||||
if (_isCustom)
|
if (_isCustom)
|
||||||
{
|
{
|
||||||
@ -731,7 +748,7 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
_pathToSave = apple_platform.globalConfigFile;
|
_pathToSave = apple_platform.globalConfigFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
const rarch_setting_t* setting_data = (const rarch_setting_t*)setting_data_get_list();
|
setting_data = (const rarch_setting_t*)setting_data_get_list();
|
||||||
|
|
||||||
setting_data_reset(setting_data);
|
setting_data_reset(setting_data);
|
||||||
setting_data_load_config_path(setting_data, _pathToSave.UTF8String);
|
setting_data_load_config_path(setting_data, _pathToSave.UTF8String);
|
||||||
@ -748,23 +765,23 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
const char* input[] = { "Input", "input_overlay", "input_overlay_opacity", 0 };
|
const char* input[] = { "Input", "input_overlay", "input_overlay_opacity", 0 };
|
||||||
const char** groups[] = { emula, video, audio, input, 0 };
|
const char** groups[] = { emula, video, audio, input, 0 };
|
||||||
|
|
||||||
for (int i = 0; groups[i]; i ++)
|
for (i = 0; groups[i]; i ++)
|
||||||
{
|
{
|
||||||
NSMutableArray* section = [NSMutableArray arrayWithObject:BOXSTRING(groups[i][0])];
|
NSMutableArray* section = [NSMutableArray arrayWithObject:BOXSTRING(groups[i][0])];
|
||||||
[self.sections addObject:section];
|
[self.sections addObject:section];
|
||||||
|
|
||||||
for (int j = 1; groups[i][j]; j ++)
|
for (j = 1; groups[i][j]; j ++)
|
||||||
[section addObject:[RAMenuItemGeneralSetting itemForSetting:setting_data_find_setting(setting_data, groups[i][j])]];
|
[section addObject:[RAMenuItemGeneralSetting itemForSetting:setting_data_find_setting(setting_data, groups[i][j])]];
|
||||||
}
|
}
|
||||||
|
|
||||||
NSMutableArray* settings = [NSMutableArray arrayWithObjects:BOXSTRING(""), nil];
|
settings = [NSMutableArray arrayWithObjects:BOXSTRING(""), nil];
|
||||||
[self.sections addObject:settings];
|
[self.sections addObject:settings];
|
||||||
|
|
||||||
for (const rarch_setting_t* i = setting_data; i->type < ST_NONE; i++)
|
for (setting = setting_data; setting->type < ST_NONE; setting++)
|
||||||
if (i->type == ST_GROUP)
|
if (setting->type == ST_GROUP)
|
||||||
[settings addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING(i->name) action:
|
[settings addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING(setting->name) action:
|
||||||
^{
|
^{
|
||||||
[weakSelf.navigationController pushViewController:[[RASettingsGroupMenu alloc] initWithGroup:i] animated:YES];
|
[weakSelf.navigationController pushViewController:[[RASettingsGroupMenu alloc] initWithGroup:setting] animated:YES];
|
||||||
}]];
|
}]];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -776,6 +793,7 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
if (self.pathToSave)
|
if (self.pathToSave)
|
||||||
{
|
{
|
||||||
config_file_t* config = (config_file_t*)config_file_new(self.pathToSave.UTF8String);
|
config_file_t* config = (config_file_t*)config_file_new(self.pathToSave.UTF8String);
|
||||||
|
|
||||||
if (!config)
|
if (!config)
|
||||||
config = config_file_new(0);
|
config = config_file_new(0);
|
||||||
|
|
||||||
@ -844,6 +862,8 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)willReloadData
|
- (void)willReloadData
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
|
const core_info_list_t* core_list;
|
||||||
RAFrontendSettingsMenu* __weak weakSelf = self;
|
RAFrontendSettingsMenu* __weak weakSelf = self;
|
||||||
NSMutableArray* cores = (NSMutableArray*)self.coreConfigOptions;
|
NSMutableArray* cores = (NSMutableArray*)self.coreConfigOptions;
|
||||||
|
|
||||||
@ -856,10 +876,15 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
[cores addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING("New Config for Core")
|
[cores addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING("New Config for Core")
|
||||||
action: ^{ [weakSelf createNewConfig]; }]];
|
action: ^{ [weakSelf createNewConfig]; }]];
|
||||||
|
|
||||||
const core_info_list_t* core_list = (const core_info_list_t*)core_info_list_get();
|
core_list = (const core_info_list_t*)core_info_list_get();
|
||||||
for (int i = 0; i < core_list->count; i ++)
|
|
||||||
|
if !(core_list)
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (i = 0; i < core_list->count; i ++)
|
||||||
{
|
{
|
||||||
NSString* core_id = (NSString*)apple_get_core_id(&core_list->list[i]);
|
NSString* core_id = (NSString*)apple_get_core_id(&core_list->list[i]);
|
||||||
|
|
||||||
if (core_info_has_custom_config(core_id.UTF8String))
|
if (core_info_has_custom_config(core_id.UTF8String))
|
||||||
{
|
{
|
||||||
[cores addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING(core_list->list[i].display_name)
|
[cores addObject:[RAMenuItemBasic itemWithDescription:BOXSTRING(core_list->list[i].display_name)
|
||||||
@ -1017,6 +1042,9 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
{
|
{
|
||||||
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
if ((self = [super initWithStyle:UITableViewStyleGrouped]))
|
||||||
{
|
{
|
||||||
|
NSMutableArray* core_section;
|
||||||
|
core_info_list_t* core_list = NULL;
|
||||||
|
|
||||||
self.title = BOXSTRING("Choose Core");
|
self.title = BOXSTRING("Choose Core");
|
||||||
_action = action;
|
_action = action;
|
||||||
_path = path;
|
_path = path;
|
||||||
@ -1028,16 +1056,17 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
action: ^{ if(weakSelf.action) weakSelf.action(nil); }]]];
|
action: ^{ if(weakSelf.action) weakSelf.action(nil); }]]];
|
||||||
}
|
}
|
||||||
|
|
||||||
NSMutableArray* core_section = (NSMutableArray*)[NSMutableArray arrayWithObject:BOXSTRING("Cores")];
|
core_section = (NSMutableArray*)[NSMutableArray arrayWithObject:BOXSTRING("Cores")];
|
||||||
|
|
||||||
[self.sections addObject:core_section];
|
[self.sections addObject:core_section];
|
||||||
|
|
||||||
core_info_list_t* core_list = (core_info_list_t*)core_info_list_get();
|
if (core_list = (core_info_list_t*)core_info_list_get())
|
||||||
if (core_list)
|
|
||||||
{
|
{
|
||||||
if (_path)
|
if (_path)
|
||||||
{
|
{
|
||||||
const core_info_t* core_support = 0;
|
const core_info_t* core_support = NULL;
|
||||||
size_t core_count = 0;
|
size_t core_count = 0;
|
||||||
|
|
||||||
core_info_list_get_supported_cores(core_list, _path.UTF8String, &core_support, &core_count);
|
core_info_list_get_supported_cores(core_list, _path.UTF8String, &core_support, &core_count);
|
||||||
|
|
||||||
if (core_count == 1 && _action)
|
if (core_count == 1 && _action)
|
||||||
@ -1064,7 +1093,8 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
|
|
||||||
- (void)load:(uint32_t)count coresFromList:(const core_info_t*)list toSection:(NSMutableArray*)array
|
- (void)load:(uint32_t)count coresFromList:(const core_info_t*)list toSection:(NSMutableArray*)array
|
||||||
{
|
{
|
||||||
for (int i = 0; i < count; i ++)
|
int i;
|
||||||
|
for (i = 0; i < count; i++)
|
||||||
[array addObject:[[RAMenuItemCoreList alloc] initWithCore:apple_get_core_id(&list[i]) parent:self]];
|
[array addObject:[[RAMenuItemCoreList alloc] initWithCore:apple_get_core_id(&list[i]) parent:self]];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1080,11 +1110,14 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
|
|||||||
{
|
{
|
||||||
if ((self = [super initWithStyle:UITableViewStylePlain]))
|
if ((self = [super initWithStyle:UITableViewStylePlain]))
|
||||||
{
|
{
|
||||||
|
FILE *file;
|
||||||
NSMutableArray* data = [NSMutableArray arrayWithObject:@""];
|
NSMutableArray* data = [NSMutableArray arrayWithObject:@""];
|
||||||
|
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
fflush(stderr);
|
fflush(stderr);
|
||||||
FILE* file = fopen(path, "r");
|
|
||||||
|
file = fopen(path, "r");
|
||||||
|
|
||||||
if (file)
|
if (file)
|
||||||
{
|
{
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user