TableView Instantiated (to do: load on select, tableview for dropbox (check marking for upload, populating and check marking for download)

This commit is contained in:
Kilian Hofmann 2016-03-27 18:37:25 +02:00
parent 62438ae206
commit ff9b96d277
8 changed files with 227 additions and 5 deletions

View File

@ -18,6 +18,7 @@
E22EE9F51C9DB7B4001F5BC0 /* FMC_Planner_2UITests.m in Sources */ = {isa = PBXBuildFile; fileRef = E22EE9F41C9DB7B4001F5BC0 /* FMC_Planner_2UITests.m */; }; E22EE9F51C9DB7B4001F5BC0 /* FMC_Planner_2UITests.m in Sources */ = {isa = PBXBuildFile; fileRef = E22EE9F41C9DB7B4001F5BC0 /* FMC_Planner_2UITests.m */; };
E2763C721CA6C8AE001E4EDA /* LSKs.plist in Resources */ = {isa = PBXBuildFile; fileRef = E2763C711CA6C8AE001E4EDA /* LSKs.plist */; }; E2763C721CA6C8AE001E4EDA /* LSKs.plist in Resources */ = {isa = PBXBuildFile; fileRef = E2763C711CA6C8AE001E4EDA /* LSKs.plist */; };
E2763C751CA6E777001E4EDA /* ViewControllerServiceMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = E2763C741CA6E777001E4EDA /* ViewControllerServiceMenu.m */; }; E2763C751CA6E777001E4EDA /* ViewControllerServiceMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = E2763C741CA6E777001E4EDA /* ViewControllerServiceMenu.m */; };
E280F3A41CA7C71500DF2A05 /* TableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E280F3A31CA7C71500DF2A05 /* TableViewController.m */; };
E28E106D1C9FF93D006E2C6B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E28E106C1C9FF93D006E2C6B /* QuartzCore.framework */; }; E28E106D1C9FF93D006E2C6B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E28E106C1C9FF93D006E2C6B /* QuartzCore.framework */; };
E28E10711CA01EC9006E2C6B /* MENU.plist in Resources */ = {isa = PBXBuildFile; fileRef = E28E10701CA01EC9006E2C6B /* MENU.plist */; }; E28E10711CA01EC9006E2C6B /* MENU.plist in Resources */ = {isa = PBXBuildFile; fileRef = E28E10701CA01EC9006E2C6B /* MENU.plist */; };
E28E10731CA0375F006E2C6B /* ROUTE.plist in Resources */ = {isa = PBXBuildFile; fileRef = E28E10721CA0375F006E2C6B /* ROUTE.plist */; }; E28E10731CA0375F006E2C6B /* ROUTE.plist in Resources */ = {isa = PBXBuildFile; fileRef = E28E10721CA0375F006E2C6B /* ROUTE.plist */; };
@ -66,6 +67,8 @@
E2763C711CA6C8AE001E4EDA /* LSKs.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = LSKs.plist; sourceTree = "<group>"; }; E2763C711CA6C8AE001E4EDA /* LSKs.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = LSKs.plist; sourceTree = "<group>"; };
E2763C731CA6E777001E4EDA /* ViewControllerServiceMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewControllerServiceMenu.h; sourceTree = "<group>"; }; E2763C731CA6E777001E4EDA /* ViewControllerServiceMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewControllerServiceMenu.h; sourceTree = "<group>"; };
E2763C741CA6E777001E4EDA /* ViewControllerServiceMenu.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ViewControllerServiceMenu.m; sourceTree = "<group>"; }; E2763C741CA6E777001E4EDA /* ViewControllerServiceMenu.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ViewControllerServiceMenu.m; sourceTree = "<group>"; };
E280F3A21CA7C71500DF2A05 /* TableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewController.h; sourceTree = "<group>"; };
E280F3A31CA7C71500DF2A05 /* TableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TableViewController.m; sourceTree = "<group>"; };
E28E106C1C9FF93D006E2C6B /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; E28E106C1C9FF93D006E2C6B /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
E28E10701CA01EC9006E2C6B /* MENU.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = MENU.plist; sourceTree = "<group>"; }; E28E10701CA01EC9006E2C6B /* MENU.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = MENU.plist; sourceTree = "<group>"; };
E28E10721CA0375F006E2C6B /* ROUTE.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ROUTE.plist; sourceTree = "<group>"; }; E28E10721CA0375F006E2C6B /* ROUTE.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ROUTE.plist; sourceTree = "<group>"; };
@ -185,6 +188,7 @@
E2A9270B1CA2FD6000606E07 /* Header */ = { E2A9270B1CA2FD6000606E07 /* Header */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
E280F3A21CA7C71500DF2A05 /* TableViewController.h */,
E22EE9D51C9DB7B3001F5BC0 /* ViewController.h */, E22EE9D51C9DB7B3001F5BC0 /* ViewController.h */,
E227C7811C9F42AB00DE0CA4 /* ViewControllerKeyboard.h */, E227C7811C9F42AB00DE0CA4 /* ViewControllerKeyboard.h */,
E227C7841C9F474100DE0CA4 /* ViewControllerScreen.h */, E227C7841C9F474100DE0CA4 /* ViewControllerScreen.h */,
@ -196,6 +200,7 @@
E2A9270C1CA2FD6D00606E07 /* Implementation */ = { E2A9270C1CA2FD6D00606E07 /* Implementation */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
E280F3A31CA7C71500DF2A05 /* TableViewController.m */,
E22EE9D61C9DB7B3001F5BC0 /* ViewController.m */, E22EE9D61C9DB7B3001F5BC0 /* ViewController.m */,
E227C7821C9F42AB00DE0CA4 /* ViewControllerKeyboard.m */, E227C7821C9F42AB00DE0CA4 /* ViewControllerKeyboard.m */,
E227C7851C9F474100DE0CA4 /* ViewControllerScreen.m */, E227C7851C9F474100DE0CA4 /* ViewControllerScreen.m */,
@ -376,6 +381,7 @@
E227C7831C9F42AB00DE0CA4 /* ViewControllerKeyboard.m in Sources */, E227C7831C9F42AB00DE0CA4 /* ViewControllerKeyboard.m in Sources */,
E2763C751CA6E777001E4EDA /* ViewControllerServiceMenu.m in Sources */, E2763C751CA6E777001E4EDA /* ViewControllerServiceMenu.m in Sources */,
E227C7861C9F474100DE0CA4 /* ViewControllerScreen.m in Sources */, E227C7861C9F474100DE0CA4 /* ViewControllerScreen.m in Sources */,
E280F3A41CA7C71500DF2A05 /* TableViewController.m in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };

View File

@ -6,11 +6,11 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "FMC Planner 2/ViewControllerServiceMenu.m" filePath = "FMC Planner 2/TableViewController.m"
timestampString = "480701863.847546" timestampString = "480789262.461033"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "13" startingLineNumber = "13"
@ -19,5 +19,21 @@
landmarkType = "5"> landmarkType = "5">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "FMC Planner 2/TableViewController.m"
timestampString = "480789290.645136"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "86"
endingLineNumber = "86"
landmarkName = "-tableView:didSelectRowAtIndexPath:"
landmarkType = "5">
</BreakpointContent>
</BreakpointProxy>
</Breakpoints> </Breakpoints>
</Bucket> </Bucket>

View File

@ -81,13 +81,99 @@
<view key="view" contentMode="scaleToFill" id="Q1M-LV-Smi"> <view key="view" contentMode="scaleToFill" id="Q1M-LV-Smi">
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/> <rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MYC-QY-v42">
<rect key="frame" x="87" y="72" width="147" height="30"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="2iN-qg-kf5"/>
<constraint firstAttribute="width" constant="147" id="30a-wW-H5A"/>
</constraints>
<state key="normal" title="Connect to Dropbox"/>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="n9p-C2-IND">
<rect key="frame" x="91" y="110" width="138" height="30"/>
<constraints>
<constraint firstAttribute="width" constant="138" id="r6d-mz-hzw"/>
<constraint firstAttribute="height" constant="30" id="zix-yU-gXi"/>
</constraints>
<state key="normal" title="Upload to Dropbox"/>
<connections>
<segue destination="qw7-1R-cA8" kind="push" identifier="Upload" id="PbX-LR-FGE"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="V5o-Hb-Mk0">
<rect key="frame" x="73" y="148" width="175" height="30"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="NyA-gq-Qud"/>
<constraint firstAttribute="width" constant="175" id="gAm-kR-Mds"/>
</constraints>
<state key="normal" title="Download from Dropbox"/>
<connections>
<segue destination="qw7-1R-cA8" kind="push" identifier="Download" id="Inw-91-2L8"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="xba-tH-5D0">
<rect key="frame" x="106" y="186" width="108" height="30"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="CUF-py-0j8"/>
<constraint firstAttribute="width" constant="108" id="y2w-le-Ge2"/>
</constraints>
<state key="normal" title="Manage Saves"/>
<connections>
<segue destination="qw7-1R-cA8" kind="push" identifier="Manage" id="Thn-Z7-qri"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstItem="n9p-C2-IND" firstAttribute="leading" secondItem="Q1M-LV-Smi" secondAttribute="leading" constant="91" id="3OR-Oa-8cl"/>
<constraint firstAttribute="trailing" secondItem="n9p-C2-IND" secondAttribute="trailing" constant="91" id="6nb-b2-JUb"/>
<constraint firstItem="MYC-QY-v42" firstAttribute="top" secondItem="ggM-lD-yT2" secondAttribute="bottom" constant="8" id="7Aw-oA-8DT"/>
<constraint firstAttribute="trailing" secondItem="MYC-QY-v42" secondAttribute="trailing" constant="86" id="9o7-P0-T70"/>
<constraint firstItem="MYC-QY-v42" firstAttribute="leading" secondItem="Q1M-LV-Smi" secondAttribute="leading" constant="87" id="Clk-jD-xRP"/>
<constraint firstItem="V5o-Hb-Mk0" firstAttribute="leading" secondItem="Q1M-LV-Smi" secondAttribute="leading" constant="73" id="ISQ-lm-JNH"/>
<constraint firstItem="xba-tH-5D0" firstAttribute="top" secondItem="V5o-Hb-Mk0" secondAttribute="bottom" constant="8" id="UcB-x5-idK"/>
<constraint firstItem="n9p-C2-IND" firstAttribute="top" secondItem="MYC-QY-v42" secondAttribute="bottom" constant="8" id="fvc-m1-XMt"/>
<constraint firstItem="xba-tH-5D0" firstAttribute="leading" secondItem="Q1M-LV-Smi" secondAttribute="leading" constant="106" id="gPD-fO-cXe"/>
<constraint firstItem="V5o-Hb-Mk0" firstAttribute="top" secondItem="n9p-C2-IND" secondAttribute="bottom" constant="8" id="iyC-R1-ynj"/>
<constraint firstAttribute="trailing" secondItem="xba-tH-5D0" secondAttribute="trailing" constant="106" id="ucb-R9-rXU"/>
<constraint firstAttribute="trailing" secondItem="V5o-Hb-Mk0" secondAttribute="trailing" constant="72" id="w7R-ZC-VDc"/>
</constraints>
</view> </view>
<navigationItem key="navigationItem" id="74M-cv-MGw"/> <navigationItem key="navigationItem" id="74M-cv-MGw"/>
</viewController> </viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="PNG-bU-UDR" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="PNG-bU-UDR" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
<point key="canvasLocation" x="883" y="346"/> <point key="canvasLocation" x="856" y="344"/>
</scene>
<!--Table View Controller-->
<scene sceneID="F3q-5D-4t0">
<objects>
<tableViewController id="qw7-1R-cA8" customClass="TableViewController" sceneMemberID="viewController">
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="0dH-a1-JuC">
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<prototypes>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="Cell" id="GLu-S8-RZg">
<rect key="frame" x="0.0" y="92" width="320" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="GLu-S8-RZg" id="r83-TH-eMI">
<rect key="frame" x="0.0" y="0.0" width="320" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
</tableViewCellContentView>
</tableViewCell>
</prototypes>
<connections>
<outlet property="dataSource" destination="qw7-1R-cA8" id="TZz-Wq-5PI"/>
<outlet property="delegate" destination="qw7-1R-cA8" id="kgH-dp-dIF"/>
</connections>
</tableView>
<navigationItem key="navigationItem" id="zeC-W5-eig"/>
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="deD-WD-0i0" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="1236" y="344"/>
</scene> </scene>
<!--View Controller Keyboard--> <!--View Controller Keyboard-->
<scene sceneID="L6e-QQ-dPq"> <scene sceneID="L6e-QQ-dPq">
@ -960,4 +1046,7 @@
<image name="tri" width="15" height="21"/> <image name="tri" width="15" height="21"/>
<image name="triFlip" width="15" height="21"/> <image name="triFlip" width="15" height="21"/>
</resources> </resources>
<inferredMetricsTieBreakers>
<segue reference="PbX-LR-FGE"/>
</inferredMetricsTieBreakers>
</document> </document>

View File

@ -0,0 +1,16 @@
//
// TableViewController.h
// FMC Planner 2
//
// Created by Kilian Hofmann on 27.03.16.
// Copyright © 2016 Kilian Hofmann. All rights reserved.
//
#import "SharedDeclerations.h"
#import <UIKit/UIKit.h>
@interface TableViewController : UITableViewController
@property(strong, nonatomic) NSMutableArray *dataSource;
@end

View File

@ -0,0 +1,90 @@
//
// TableViewController.m
// FMC Planner 2
//
// Created by Kilian Hofmann on 27.03.16.
// Copyright © 2016 Kilian Hofmann. All rights reserved.
//
#import "TableViewController.h"
@implementation TableViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Uncomment the following line to preserve selection between presentations.
// self.clearsSelectionOnViewWillAppear = NO;
// Uncomment the following line to display an Edit button in the navigation
// bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem;
if ([self.title isEqualToString:@"Manage"]) {
NSArray *temp = [[NSFileManager defaultManager]
contentsOfDirectoryAtPath:[SharedDeclerations savePathForFile:@""]
error:nil];
_dataSource = [[temp
filteredArrayUsingPredicate:
[NSPredicate predicateWithFormat:@"NOT (SELF BEGINSWITH %@)",
@"."]] mutableCopy];
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section {
return _dataSource.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell =
[tableView dequeueReusableCellWithIdentifier:@"Cell"
forIndexPath:indexPath];
if ([self.title isEqualToString:@"Manage"]) {
NSDictionary *data = [[NSDictionary alloc]
initWithContentsOfFile:[SharedDeclerations
savePathForFile:_dataSource[indexPath
.row]]];
cell.textLabel.text = [data valueForKey:@"MENU@LSKR1"];
}
return cell;
}
// Override to support editing the table view.
- (void)tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the row from the data source
[[NSFileManager defaultManager]
removeItemAtPath:[SharedDeclerations
savePathForFile:_dataSource[indexPath.row]]
error:nil];
[_dataSource removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:@[ indexPath ]
withRowAnimation:UITableViewRowAnimationFade];
} else if (editingStyle == UITableViewCellEditingStyleInsert) {
// Create a new instance of the appropriate class, insert it into the
// array, and add a new row to the table view
}
}
- (void)tableView:(UITableView *)tableView
didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
}
@end

View File

@ -107,7 +107,6 @@
#warning EXPORT TO PMDG GOES HERE #warning EXPORT TO PMDG GOES HERE
} else if ([((UILabel *)tapReg.view) } else if ([((UILabel *)tapReg.view)
.restorationIdentifier isEqualToString:@"LSKR6"]) { .restorationIdentifier isEqualToString:@"LSKR6"]) {
#warning SERVICE MENU GOES HERE
[self [self
presentViewController: presentViewController:
[self.storyboard [self.storyboard

View File

@ -7,6 +7,7 @@
// //
#import "SharedDeclerations.h" #import "SharedDeclerations.h"
#import "TableViewController.h"
#import "ViewController.h" #import "ViewController.h"
#import <UIKit/UIKit.h> #import <UIKit/UIKit.h>

View File

@ -24,4 +24,9 @@
[self dismissViewControllerAnimated:YES completion:nil]; [self dismissViewControllerAnimated:YES completion:nil];
} }
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
((TableViewController *)[segue destinationViewController]).title =
segue.identifier;
}
@end @end