Commit 8643d47cfd54c483293a31c4d880bdc4cd58d527

Authored by Imanol-Mikel Barba Sabariego
1 parent 254682d8

--no commit message

DUREX Vendor Control/DUREX Vendor Control.xcodeproj/project.xcworkspace/xcuserdata/imanol.xcuserdatad/UserInterfaceState.xcuserstate
No preview for this file type
DUREX Vendor Control/MenuTableViewController.m
... ... @@ -73,25 +73,27 @@
73 73  
74 74 - (void) changeNavLevel: (uint8_t) level : (BOOL) push
75 75 {
  76 + NSLog(@"[MenuTableViewController.m]: navLevel is %d",level);
76 77 if(push)
77 78 {
78 79 [[self parentLayout] push: [NSNumber numberWithUnsignedChar:self.currentNavLevel]];
79 80 }
80 81 [self setCurrentNavLevel:level];
81 82 [self setCurrentCellIdentifier:[[self cellIdentifiers] objectAtIndex:[self currentNavLevel]]];
82   - if([self currentNavLevel] == MAINTENANCE)
  83 + if([self currentNavLevel] == MENU)
  84 + {
  85 + [[self navigationItem] setTitle:[[[EMConnectionManager sharedManager] connectedDevice] name]];
  86 + [self setCurrentElements:[self menuElements]];
  87 + [self setCurrentStructure:[self menuStructure]];
  88 + [self setCurrentHeaders:[self menuHeaders]];
  89 + }
  90 + else if([self currentNavLevel] == MAINTENANCE)
83 91 {
84 92 [self setCurrentElements:[self maintenanceElements]];
85 93 [self setCurrentStructure:[self maintenanceStructure]];
86 94 [self setCurrentHeaders:[self maintenanceHeaders]];
87 95 }
88 96 //AND SO ON...
89   - else
90   - {
91   - [self setCurrentElements:[self menuElements]];
92   - [self setCurrentStructure:[self menuStructure]];
93   - [self setCurrentHeaders:[self menuHeaders]];
94   - }
95 97 [[self tableView] reloadData];
96 98 NSRange range = NSMakeRange(0, [self numberOfSectionsInTableView:[self tableView]]);
97 99 NSIndexSet *sections = [NSIndexSet indexSetWithIndexesInRange:range];
... ... @@ -115,16 +117,28 @@
115 117 return title;
116 118 }
117 119  
  120 +- (void) backButtonPressed: (id) sender
  121 +{
  122 + NSLog(@"[MenuTableViewController.m]: Navigation Stack has %ld remaining levels",[[self parentLayout] count]);
  123 + if([[self parentLayout] count] > 0)
  124 + {
  125 + NSLog(@"[MenuTableViewController.m]: Falling to previous navigation level");
  126 + [self navBack];
  127 + }
  128 + else
  129 + {
  130 + NSLog(@"[MenuTableViewController.m]: No more navigation levels in stack, falling to previous view");
  131 + [self.navigationController popViewControllerAnimated:YES];
  132 + }
  133 +}
  134 +
118 135 - (void)viewDidLoad
119 136 {
120 137 [super viewDidLoad];
121 138 [_activityIndicator setHidden:YES];
122 139  
123   - //Set title
124   - NSMutableString *title;
125   - [title setString:[[self navigationItem] title]] ;
126   - [title appendString:[[[EMConnectionManager sharedManager] connectedDevice] name]];
127   - [[self navigationItem] setTitle:title];
  140 + self.navigationItem.hidesBackButton = YES;
  141 + self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self action:@selector(backButtonPressed:)];
128 142  
129 143 //Emmoco protocol initialization
130 144 _protocol = [CommunicationProtocol sharedProtocol];
... ... @@ -234,7 +248,6 @@
234 248  
235 249 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
236 250 {
237   - NSLog(@"[MenuTableViewController.m]: navLevel is %d",[self currentNavLevel]);
238 251 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:[self currentCellIdentifier] forIndexPath:indexPath];
239 252  
240 253 if (cell == nil)
... ...
DUREX Vendor Control/durex.json
1 1 {
2 2 "resources": {
3   - "$schemaHash": {
4   - "id": -6,
5   - "align": 1,
6   - "attributes": {"readonly": true},
7   - "type": "A20:u1",
8   - "access": "r",
9   - "size": 20
10   - },
11 3 "$eapProtocolLevel": {
12 4 "id": -3,
13 5 "align": 2,
... ... @@ -16,22 +8,6 @@
16 8 "access": "r",
17 9 "size": 2
18 10 },
19   - "$mcmProtocolLevel": {
20   - "id": -2,
21   - "align": 2,
22   - "attributes": {"readonly": true},
23   - "type": "u2",
24   - "access": "r",
25   - "size": 2
26   - },
27   - "messageAvailable": {
28   - "id": 4,
29   - "align": 1,
30   - "attributes": {"indicator": true},
31   - "type": "E:@emmoco.com.DUREX/BOOLEAN",
32   - "access": "irw",
33   - "size": 1
34   - },
35 11 "numBytes": {
36 12 "id": 1,
37 13 "align": 1,
... ... @@ -40,21 +16,22 @@
40 16 "access": "rw",
41 17 "size": 1
42 18 },
43   - "$mobileRssi": {
44   - "id": -8,
45   - "align": 1,
46   - "attributes": {"readonly": true},
47   - "type": "i1",
48   - "access": "r",
49   - "size": 1
50   - },
51 19 "data": {
52 20 "id": 2,
53 21 "align": 1,
54 22 "attributes": {},
55   - "type": "C:229",
  23 + "type": "C:201",
56 24 "access": "rw",
57   - "size": 229
  25 + "size": 201
  26 + },
  27 + "$activeGroup": {
  28 + "id": -10,
  29 + "align": 1,
  30 + "pack": 1,
  31 + "attributes": {"readwrite": true},
  32 + "type": "E:system@emmoco.com.System/ParameterGroup",
  33 + "access": "rw",
  34 + "size": 1
58 35 },
59 36 "$mcmDisconnect": {
60 37 "id": -9,
... ... @@ -65,6 +42,7 @@
65 42 "size": 1
66 43 },
67 44 "$eapBuildDate": {
  45 + "dim": 8,
68 46 "id": -4,
69 47 "align": 1,
70 48 "attributes": {"readonly": true},
... ... @@ -72,6 +50,14 @@
72 50 "access": "r",
73 51 "size": 8
74 52 },
  53 + "numPackets": {
  54 + "id": 3,
  55 + "align": 1,
  56 + "attributes": {},
  57 + "type": "u1",
  58 + "access": "rw",
  59 + "size": 1
  60 + },
75 61 "$resourceCount": {
76 62 "id": -7,
77 63 "align": 1,
... ... @@ -80,12 +66,38 @@
80 66 "access": "r",
81 67 "size": 2
82 68 },
83   - "numPackets": {
84   - "id": 3,
  69 + "$schemaHash": {
  70 + "dim": 20,
  71 + "id": -6,
85 72 "align": 1,
86   - "attributes": {},
87   - "type": "u1",
88   - "access": "rw",
  73 + "attributes": {"readonly": true},
  74 + "type": "A20:u1",
  75 + "access": "r",
  76 + "size": 20
  77 + },
  78 + "messageAvailable": {
  79 + "id": 4,
  80 + "align": 1,
  81 + "pack": 1,
  82 + "attributes": {"indicator": true},
  83 + "type": "E:@emmoco.com.DUREX/BOOLEAN",
  84 + "access": "ir",
  85 + "size": 1
  86 + },
  87 + "$mcmProtocolLevel": {
  88 + "id": -2,
  89 + "align": 2,
  90 + "attributes": {"readonly": true},
  91 + "type": "u2",
  92 + "access": "r",
  93 + "size": 2
  94 + },
  95 + "$mobileRssi": {
  96 + "id": -8,
  97 + "align": 1,
  98 + "attributes": {"readonly": true},
  99 + "type": "i1",
  100 + "access": "r",
89 101 "size": 1
90 102 },
91 103 "$fileIndexReset": {
... ... @@ -98,6 +110,7 @@
98 110 }
99 111 },
100 112 "resourceNamesSys": [
  113 + "$activeGroup",
101 114 "$eapBuildDate",
102 115 "$eapProtocolLevel",
103 116 "$fileIndexReset",
... ... @@ -108,41 +121,41 @@
108 121 "$schemaHash"
109 122 ],
110 123 "manifest": {
111   - "protocolLevel": 12,
  124 + "protocolLevel": 13,
112 125 "hash": [
113   - 245,
114   - 13,
115   - 216,
116   - 92,
117   - 22,
118   - 189,
119   - 34,
  126 + 0,
  127 + 164,
  128 + 192,
120 129 32,
121   - 16,
122   - 124,
123   - 194,
  130 + 22,
  131 + 163,
  132 + 114,
  133 + 239,
  134 + 91,
  135 + 240,
  136 + 123,
  137 + 128,
  138 + 206,
  139 + 12,
124 140 50,
125   - 87,
126   - 152,
127   - 227,
128   - 110
  141 + 148
129 142 ],
130   - "toolVersion": "12.0.0.201211010336",
  143 + "toolVersion": "13.4.1.201311121909",
131 144 "name": "DUREX",
132   - "$$md5": "f316f8e8839db2a2939bf3e0120a1fdf",
  145 + "$$md5": "00a4c02016a372ef5bf07b80ce0c3294",
133 146 "build": [
134   - 61,
135   - 15,
136   - 116,
137   - 250,
138   - 69,
  147 + 171,
  148 + 30,
  149 + 204,
  150 + 135,
  151 + 71,
139 152 1,
140 153 0,
141 154 0
142 155 ],
143   - "date": "2014-05-14T13:18:01T",
  156 + "date": "2014-07-30T17:03:27T",
144 157 "maxAlign": 2,
145   - "maxSize": 229,
  158 + "maxSize": 201,
146 159 "version": "1.0.0"
147 160 },
148 161 "resourceNames": [
... ... @@ -157,14 +170,22 @@
157 170 "$schemaHash",
158 171 "$resourceCount",
159 172 "$mobileRssi",
160   - "$mcmDisconnect"
  173 + "$mcmDisconnect",
  174 + "$activeGroup"
161 175 ],
162 176 "attributes": {
163 177 "description": "",
164 178 "version": "1.0.0"
165 179 },
  180 + "resourceNamesApp": [
  181 + "numBytes",
  182 + "data",
  183 + "numPackets",
  184 + "messageAvailable"
  185 + ],
166 186 "types": {
167 187 "system@emmoco.com.System/ResourceCount": {
  188 + "packed": false,
168 189 "align": 1,
169 190 "type": "S:system@emmoco.com.System/ResourceCount",
170 191 "size": 2,
... ... @@ -193,17 +214,28 @@
193 214 "align": 1,
194 215 "size": 1
195 216 },
  217 + "std:u1": {
  218 + "align": 1,
  219 + "size": 1
  220 + },
196 221 "@emmoco.com.DUREX/BOOLEAN": {
197 222 "values": [
198 223 "TRUE",
199 224 "FALSE"
200 225 ],
201 226 "align": 1,
  227 + "pack": 1,
202 228 "type": "E:@emmoco.com.DUREX/BOOLEAN",
203 229 "size": 1
204 230 },
205   - "std:u1": {
  231 + "system@emmoco.com.System/ParameterGroup": {
  232 + "values": [
  233 + "GROUP_A",
  234 + "GROUP_B"
  235 + ],
206 236 "align": 1,
  237 + "pack": 1,
  238 + "type": "E:system@emmoco.com.System/ParameterGroup",
207 239 "size": 1
208 240 },
209 241 "std:u2": {
... ... @@ -211,11 +243,5 @@
211 243 "size": 2
212 244 }
213 245 },
214   - "resourceNamesApp": [
215   - "data",
216   - "messageAvailable",
217   - "numBytes",
218   - "numPackets"
219   - ],
220 246 "imports": {"@emmoco.com.DUREX": true}
221 247 }
222 248 \ No newline at end of file
... ...
DUREX tests/CustomNavigationController.h deleted
1   -//
2   -// CustomNavigationController.h
3   -// DUREX test
4   -//
5   -// Created by Imanol Barba on 8/7/14.
6   -// Copyright (c) 2014 Emmoco. All rights reserved.
7   -//
8   -
9   -#import <UIKit/UIKit.h>
10   -#import "MenuTableViewController.h"
11   -
12   -@interface CustomNavigationController : UINavigationController
13   -
14   -@property (strong,nonatomic) MenuTableViewController *auxController;
15   -
16   -@end
DUREX tests/CustomNavigationController.m deleted
1   -//
2   -// CustomNavigationController.m
3   -// DUREX test
4   -//
5   -// Created by Imanol Barba on 8/7/14.
6   -// Copyright (c) 2014 Emmoco. All rights reserved.
7   -//
8   -
9   -#import "CustomNavigationController.h"
10   -
11   -@interface CustomNavigationController ()
12   -
13   -@end
14   -
15   -@implementation CustomNavigationController
16   -
17   -- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
18   -{
19   - self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
20   - if (self) {
21   - // Custom initialization
22   - }
23   - return self;
24   -}
25   -
26   -- (void)viewDidLoad
27   -{
28   - [super viewDidLoad];
29   - // Do any additional setup after loading the view.
30   -}
31   -
32   -- (void)didReceiveMemoryWarning
33   -{
34   - [super didReceiveMemoryWarning];
35   - // Dispose of any resources that can be recreated.
36   -}
37   -
38   -- (UIViewController *)popViewControllerAnimated:(BOOL)animated
39   -{
40   - if(self.auxController == nil)
41   - {
42   - NSLog(@"[CustomNavigationController.m]: WARNING: No Auxiliar Controller assigned to Navigation controller");
43   - return [super popViewControllerAnimated:animated];
44   - }
45   - else
46   - {
47   - NSLog(@"[CustomNavigationController.m]: Navigation Stack has %d remaining levels",[[[self auxController] parentLayout] count]);
48   - if([[[self auxController] parentLayout] count] > 0)
49   - {
50   - NSLog(@"[CustomNavigationController.m]: Falling to previous navigation level");
51   - [[self auxController] navBack];
52   - }
53   - else
54   - {
55   - NSLog(@"[CustomNavigationController.m]: No more navigation levels in stack, falling to previous view");
56   - self.auxController = nil;
57   - return [super popViewControllerAnimated:animated];
58   - }
59   - }
60   - return nil;
61   -}
62   -
63   -/*- (void) setAuxController:(MenuTableViewController *)controller
64   -{
65   - self.auxController = controller;
66   -}*/
67   -
68   -/*
69   -#pragma mark - Navigation
70   -
71   -// In a storyboard-based application, you will often want to do a little preparation before navigation
72   -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
73   -{
74   - // Get the new view controller using [segue destinationViewController].
75   - // Pass the selected object to the new view controller.
76   -}
77   -*/
78   -
79   -@end
DUREX tests/DUREX test.xcodeproj/project.pbxproj
... ... @@ -22,7 +22,6 @@
22 22 F9469169193015EE006DACD3 /* icon_checkmark.png in Resources */ = {isa = PBXBuildFile; fileRef = F9469167193015EE006DACD3 /* icon_checkmark.png */; };
23 23 F946916A193015EE006DACD3 /* icon_delete.png in Resources */ = {isa = PBXBuildFile; fileRef = F9469168193015EE006DACD3 /* icon_delete.png */; };
24 24 F962A233192FCA8A00E4324A /* Stack.m in Sources */ = {isa = PBXBuildFile; fileRef = F962A232192FCA8A00E4324A /* Stack.m */; };
25   - F97A7D701992DF1A0028036D /* CustomNavigationController.m in Sources */ = {isa = PBXBuildFile; fileRef = F97A7D6F1992DF1A0028036D /* CustomNavigationController.m */; };
26 25 F98356D6192E835F00EA6821 /* InitialViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F98356D5192E835F00EA6821 /* InitialViewController.m */; };
27 26 F98356D8192E906600EA6821 /* bluetooth.png in Resources */ = {isa = PBXBuildFile; fileRef = F98356D7192E906600EA6821 /* bluetooth.png */; };
28 27 F98356DB192EAFD400EA6821 /* CommunicationProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = F98356DA192EAFD400EA6821 /* CommunicationProtocol.m */; };
... ... @@ -62,8 +61,6 @@
62 61 F9469168193015EE006DACD3 /* icon_delete.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon_delete.png; sourceTree = SOURCE_ROOT; };
63 62 F962A231192FCA8A00E4324A /* Stack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Stack.h; sourceTree = SOURCE_ROOT; };
64 63 F962A232192FCA8A00E4324A /* Stack.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Stack.m; sourceTree = SOURCE_ROOT; };
65   - F97A7D6E1992DF1A0028036D /* CustomNavigationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomNavigationController.h; sourceTree = SOURCE_ROOT; };
66   - F97A7D6F1992DF1A0028036D /* CustomNavigationController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomNavigationController.m; sourceTree = SOURCE_ROOT; };
67 64 F98356D4192E835F00EA6821 /* InitialViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InitialViewController.h; sourceTree = SOURCE_ROOT; };
68 65 F98356D5192E835F00EA6821 /* InitialViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InitialViewController.m; sourceTree = SOURCE_ROOT; };
69 66 F98356D7192E906600EA6821 /* bluetooth.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = bluetooth.png; sourceTree = SOURCE_ROOT; };
... ... @@ -133,8 +130,6 @@
133 130 3471866618070D9300FA0FB2 /* FirstApp */ = {
134 131 isa = PBXGroup;
135 132 children = (
136   - F97A7D6E1992DF1A0028036D /* CustomNavigationController.h */,
137   - F97A7D6F1992DF1A0028036D /* CustomNavigationController.m */,
138 133 34AAB881189804FF0019860D /* MainStoryboard.storyboard */,
139 134 34AAB876189804FF0019860D /* DUREXAppDelegate.h */,
140 135 34AAB877189804FF0019860D /* DUREXAppDelegate.m */,
... ... @@ -300,7 +295,6 @@
300 295 34AAB883189804FF0019860D /* DUREXAppDelegate.m in Sources */,
301 296 F98356DB192EAFD400EA6821 /* CommunicationProtocol.m in Sources */,
302 297 F98356E1192EC84700EA6821 /* MenuTableViewController.m in Sources */,
303   - F97A7D701992DF1A0028036D /* CustomNavigationController.m in Sources */,
304 298 34AAB889189804FF0019860D /* main.m in Sources */,
305 299 );
306 300 runOnlyForDeploymentPostprocessing = 0;
... ...
DUREX tests/DUREX test.xcodeproj/project.xcworkspace/xcuserdata/imanol.xcuserdatad/UserInterfaceState.xcuserstate
No preview for this file type
DUREX tests/DUREX test.xcodeproj/xcuserdata/imanol.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
... ... @@ -9,28 +9,12 @@
9 9 shouldBeEnabled = "No"
10 10 ignoreCount = "0"
11 11 continueAfterRunningActions = "No"
12   - filePath = "CustomNavigationController.m"
13   - timestampString = "429064161.848095"
14   - startingColumnNumber = "9223372036854775807"
15   - endingColumnNumber = "9223372036854775807"
16   - startingLineNumber = "15"
17   - endingLineNumber = "15"
18   - landmarkName = "@implementation CustomNavigationController"
19   - landmarkType = "3">
20   - </BreakpointContent>
21   - </BreakpointProxy>
22   - <BreakpointProxy
23   - BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
24   - <BreakpointContent
25   - shouldBeEnabled = "No"
26   - ignoreCount = "0"
27   - continueAfterRunningActions = "No"
28 12 filePath = "MenuTableViewController.m"
29   - timestampString = "429105816.932528"
  13 + timestampString = "429132434.984264"
30 14 startingColumnNumber = "9223372036854775807"
31 15 endingColumnNumber = "9223372036854775807"
32   - startingLineNumber = "144"
33   - endingLineNumber = "144"
  16 + startingLineNumber = "165"
  17 + endingLineNumber = "165"
34 18 landmarkName = "-viewDidLoad"
35 19 landmarkType = "5">
36 20 </BreakpointContent>
... ...
DUREX tests/FirstAppExample/DUREXAppDelegate.h
... ... @@ -7,12 +7,11 @@
7 7 //
8 8  
9 9 #import <UIKit/UIKit.h>
10   -#import "CustomNavigationController.h"
11 10  
12 11 @interface DUREXAppDelegate : UIResponder <UIApplicationDelegate>
13 12  
14 13 @property (strong, nonatomic) UIWindow *window;
15   -@property (nonatomic, strong) IBOutlet CustomNavigationController *navController;
  14 +@property (nonatomic, strong) IBOutlet UINavigationController *navController;
16 15  
17 16  
18 17  
... ...
DUREX tests/FirstAppExample/DUREXAppDelegate.m
... ... @@ -20,7 +20,7 @@
20 20  
21 21 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
22 22 {
23   - CustomNavigationController *navController = (CustomNavigationController *)[[self window] rootViewController];
  23 + UINavigationController *navController = (UINavigationController *)[[self window] rootViewController];
24 24 [self setNavController:navController];
25 25 [[self navController] setDelegate:self];
26 26  
... ...
DUREX tests/FirstAppExample/MainStoryboard.storyboard
... ... @@ -53,7 +53,7 @@
53 53 </objects>
54 54 <point key="canvasLocation" x="342" y="-9"/>
55 55 </scene>
56   - <!--Menu Table View Controller - Connected to: PIECE OF CRAP 2000 PRO ULTRA-->
  56 + <!--Menu Table View Controller - Connected to:-->
57 57 <scene sceneID="uT2-Qs-t9O">
58 58 <objects>
59 59 <tableViewController id="iNx-eR-wSX" customClass="MenuTableViewController" sceneMemberID="viewController">
... ... @@ -110,16 +110,16 @@
110 110 <outlet property="delegate" destination="iNx-eR-wSX" id="cfg-Zn-vZq"/>
111 111 </connections>
112 112 </tableView>
113   - <navigationItem key="navigationItem" title="Connected to: PIECE OF CRAP 2000 PRO ULTRA" id="2rA-9H-FRE"/>
  113 + <navigationItem key="navigationItem" title="Connected to:" id="2rA-9H-FRE"/>
114 114 </tableViewController>
115 115 <placeholder placeholderIdentifier="IBFirstResponder" id="R4Z-ct-4GF" userLabel="First Responder" sceneMemberID="firstResponder"/>
116 116 </objects>
117 117 <point key="canvasLocation" x="834" y="-9"/>
118 118 </scene>
119   - <!--Custom Navigation Controller-->
  119 + <!--Navigation Controller-->
120 120 <scene sceneID="Ker-Z3-hzQ">
121 121 <objects>
122   - <navigationController definesPresentationContext="YES" id="kWw-Rk-wD6" customClass="CustomNavigationController" sceneMemberID="viewController">
  122 + <navigationController definesPresentationContext="YES" id="kWw-Rk-wD6" sceneMemberID="viewController">
123 123 <navigationBar key="navigationBar" contentMode="scaleToFill" id="fTx-P1-hLO">
124 124 <autoresizingMask key="autoresizingMask"/>
125 125 </navigationBar>
... ...
DUREX tests/MenuTableViewController.m
... ... @@ -74,26 +74,29 @@
74 74  
75 75 - (void) changeNavLevel: (uint8_t) level : (BOOL) push
76 76 {
  77 + NSLog(@"[MenuTableViewController.m]: navLevel is %d",level);
77 78 if(push)
78 79 {
79 80 [[self parentLayout] push: [NSNumber numberWithUnsignedChar:self.currentNavLevel]];
80 81 }
81 82 [self setCurrentNavLevel:level];
82 83 [self setCurrentCellIdentifier:[[self cellIdentifiers] objectAtIndex:[self currentNavLevel]]];
83   - if([self currentNavLevel] == MAINTENANCE)
  84 + if([self currentNavLevel] == MENU)
  85 + {
  86 + [[self navigationItem] setTitle:@"PIECE OF CRAP 2000 PRO ULTRA"];
  87 + [self setCurrentElements:[self menuElements]];
  88 + [self setCurrentStructure:[self menuStructure]];
  89 + [self setCurrentHeaders:[self menuHeaders]];
  90 + }
  91 + else if([self currentNavLevel] == MAINTENANCE)
84 92 {
  93 + [[self navigationItem] setTitle:@"Maintenance"];
85 94 [self setCurrentElements:[self maintenanceElements]];
86 95 [self setCurrentStructure:[self maintenanceStructure]];
87 96 [self setCurrentHeaders:[self maintenanceHeaders]];
88 97  
89 98 }
90 99 //AND SO ON...
91   - else
92   - {
93   - [self setCurrentElements:[self menuElements]];
94   - [self setCurrentStructure:[self menuStructure]];
95   - [self setCurrentHeaders:[self menuHeaders]];
96   - }
97 100 [[self tableView] reloadData];
98 101 NSRange range = NSMakeRange(0, [self numberOfSectionsInTableView:[self tableView]]);
99 102 NSIndexSet *sections = [NSIndexSet indexSetWithIndexesInRange:range];
... ... @@ -117,11 +120,29 @@
117 120 return title;
118 121 }
119 122  
  123 +- (void) backButtonPressed: (id) sender
  124 +{
  125 + NSLog(@"[MenuTableViewController.m]: Navigation Stack has %d remaining levels",[[self parentLayout] count]);
  126 + if([[self parentLayout] count] > 0)
  127 + {
  128 + NSLog(@"[MenuTableViewController.m]: Falling to previous navigation level");
  129 + [self navBack];
  130 + }
  131 + else
  132 + {
  133 + NSLog(@"[MenuTableViewController.m]: No more navigation levels in stack, falling to previous view");
  134 + [self.navigationController popViewControllerAnimated:YES];
  135 + }
  136 +}
  137 +
120 138 - (void)viewDidLoad
121 139 {
122 140 [super viewDidLoad];
123 141 [_activityIndicator setHidden:YES];
124 142  
  143 + self.navigationItem.hidesBackButton = YES;
  144 + self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self action:@selector(backButtonPressed:)];
  145 +
125 146 //Emmoco protocol initialization
126 147 _protocol = [CommunicationProtocol sharedProtocol];
127 148  
... ... @@ -142,10 +163,7 @@
142 163 [self initializeMenuEntries];
143 164 self.currentNavLevel = 255;
144 165 [self changeNavLevel:MENU:FALSE];
145   - DUREXAppDelegate *appDelegate = (DUREXAppDelegate *)[[UIApplication sharedApplication] delegate];
146   - CustomNavigationController *navController = [appDelegate navController];
147   - navController.auxController = self;
148   -
  166 +
149 167 // Uncomment the following line to preserve selection between presentations.
150 168 // self.clearsSelectionOnViewWillAppear = NO;
151 169  
... ... @@ -204,7 +222,6 @@
204 222  
205 223 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
206 224 {
207   - NSLog(@"[MenuTableViewController.m]: navLevel is %d",[self currentNavLevel]);
208 225 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:[self currentCellIdentifier] forIndexPath:indexPath];
209 226  
210 227 if (cell == nil)
... ...
DUREX tests/durex.json
1 1 {
2 2 "resources": {
3   - "$schemaHash": {
4   - "id": -6,
5   - "align": 1,
6   - "attributes": {"readonly": true},
7   - "type": "A20:u1",
8   - "access": "r",
9   - "size": 20
10   - },
11 3 "$eapProtocolLevel": {
12 4 "id": -3,
13 5 "align": 2,
... ... @@ -16,22 +8,6 @@
16 8 "access": "r",
17 9 "size": 2
18 10 },
19   - "$mcmProtocolLevel": {
20   - "id": -2,
21   - "align": 2,
22   - "attributes": {"readonly": true},
23   - "type": "u2",
24   - "access": "r",
25   - "size": 2
26   - },
27   - "messageAvailable": {
28   - "id": 4,
29   - "align": 1,
30   - "attributes": {"indicator": true},
31   - "type": "E:@emmoco.com.DUREX/BOOLEAN",
32   - "access": "irw",
33   - "size": 1
34   - },
35 11 "numBytes": {
36 12 "id": 1,
37 13 "align": 1,
... ... @@ -40,21 +16,22 @@
40 16 "access": "rw",
41 17 "size": 1
42 18 },
43   - "$mobileRssi": {
44   - "id": -8,
45   - "align": 1,
46   - "attributes": {"readonly": true},
47   - "type": "i1",
48   - "access": "r",
49   - "size": 1
50   - },
51 19 "data": {
52 20 "id": 2,
53 21 "align": 1,
54 22 "attributes": {},
55   - "type": "C:229",
  23 + "type": "C:201",
56 24 "access": "rw",
57   - "size": 229
  25 + "size": 201
  26 + },
  27 + "$activeGroup": {
  28 + "id": -10,
  29 + "align": 1,
  30 + "pack": 1,
  31 + "attributes": {"readwrite": true},
  32 + "type": "E:system@emmoco.com.System/ParameterGroup",
  33 + "access": "rw",
  34 + "size": 1
58 35 },
59 36 "$mcmDisconnect": {
60 37 "id": -9,
... ... @@ -65,6 +42,7 @@
65 42 "size": 1
66 43 },
67 44 "$eapBuildDate": {
  45 + "dim": 8,
68 46 "id": -4,
69 47 "align": 1,
70 48 "attributes": {"readonly": true},
... ... @@ -72,6 +50,14 @@
72 50 "access": "r",
73 51 "size": 8
74 52 },
  53 + "numPackets": {
  54 + "id": 3,
  55 + "align": 1,
  56 + "attributes": {},
  57 + "type": "u1",
  58 + "access": "rw",
  59 + "size": 1
  60 + },
75 61 "$resourceCount": {
76 62 "id": -7,
77 63 "align": 1,
... ... @@ -80,12 +66,38 @@
80 66 "access": "r",
81 67 "size": 2
82 68 },
83   - "numPackets": {
84   - "id": 3,
  69 + "$schemaHash": {
  70 + "dim": 20,
  71 + "id": -6,
85 72 "align": 1,
86   - "attributes": {},
87   - "type": "u1",
88   - "access": "rw",
  73 + "attributes": {"readonly": true},
  74 + "type": "A20:u1",
  75 + "access": "r",
  76 + "size": 20
  77 + },
  78 + "messageAvailable": {
  79 + "id": 4,
  80 + "align": 1,
  81 + "pack": 1,
  82 + "attributes": {"indicator": true},
  83 + "type": "E:@emmoco.com.DUREX/BOOLEAN",
  84 + "access": "ir",
  85 + "size": 1
  86 + },
  87 + "$mcmProtocolLevel": {
  88 + "id": -2,
  89 + "align": 2,
  90 + "attributes": {"readonly": true},
  91 + "type": "u2",
  92 + "access": "r",
  93 + "size": 2
  94 + },
  95 + "$mobileRssi": {
  96 + "id": -8,
  97 + "align": 1,
  98 + "attributes": {"readonly": true},
  99 + "type": "i1",
  100 + "access": "r",
89 101 "size": 1
90 102 },
91 103 "$fileIndexReset": {
... ... @@ -98,6 +110,7 @@
98 110 }
99 111 },
100 112 "resourceNamesSys": [
  113 + "$activeGroup",
101 114 "$eapBuildDate",
102 115 "$eapProtocolLevel",
103 116 "$fileIndexReset",
... ... @@ -108,41 +121,41 @@
108 121 "$schemaHash"
109 122 ],
110 123 "manifest": {
111   - "protocolLevel": 12,
  124 + "protocolLevel": 13,
112 125 "hash": [
113   - 245,
114   - 13,
115   - 216,
116   - 92,
117   - 22,
118   - 189,
119   - 34,
  126 + 0,
  127 + 164,
  128 + 192,
120 129 32,
121   - 16,
122   - 124,
123   - 194,
  130 + 22,
  131 + 163,
  132 + 114,
  133 + 239,
  134 + 91,
  135 + 240,
  136 + 123,
  137 + 128,
  138 + 206,
  139 + 12,
124 140 50,
125   - 87,
126   - 152,
127   - 227,
128   - 110
  141 + 148
129 142 ],
130   - "toolVersion": "12.0.0.201211010336",
  143 + "toolVersion": "13.4.1.201311121909",
131 144 "name": "DUREX",
132   - "$$md5": "f316f8e8839db2a2939bf3e0120a1fdf",
  145 + "$$md5": "00a4c02016a372ef5bf07b80ce0c3294",
133 146 "build": [
134   - 61,
135   - 15,
136   - 116,
137   - 250,
138   - 69,
  147 + 171,
  148 + 30,
  149 + 204,
  150 + 135,
  151 + 71,
139 152 1,
140 153 0,
141 154 0
142 155 ],
143   - "date": "2014-05-14T13:18:01T",
  156 + "date": "2014-07-30T17:03:27T",
144 157 "maxAlign": 2,
145   - "maxSize": 229,
  158 + "maxSize": 201,
146 159 "version": "1.0.0"
147 160 },
148 161 "resourceNames": [
... ... @@ -157,14 +170,22 @@
157 170 "$schemaHash",
158 171 "$resourceCount",
159 172 "$mobileRssi",
160   - "$mcmDisconnect"
  173 + "$mcmDisconnect",
  174 + "$activeGroup"
161 175 ],
162 176 "attributes": {
163 177 "description": "",
164 178 "version": "1.0.0"
165 179 },
  180 + "resourceNamesApp": [
  181 + "numBytes",
  182 + "data",
  183 + "numPackets",
  184 + "messageAvailable"
  185 + ],
166 186 "types": {
167 187 "system@emmoco.com.System/ResourceCount": {
  188 + "packed": false,
168 189 "align": 1,
169 190 "type": "S:system@emmoco.com.System/ResourceCount",
170 191 "size": 2,
... ... @@ -193,17 +214,28 @@
193 214 "align": 1,
194 215 "size": 1
195 216 },
  217 + "std:u1": {
  218 + "align": 1,
  219 + "size": 1
  220 + },
196 221 "@emmoco.com.DUREX/BOOLEAN": {
197 222 "values": [
198 223 "TRUE",
199 224 "FALSE"
200 225 ],
201 226 "align": 1,
  227 + "pack": 1,
202 228 "type": "E:@emmoco.com.DUREX/BOOLEAN",
203 229 "size": 1
204 230 },
205   - "std:u1": {
  231 + "system@emmoco.com.System/ParameterGroup": {
  232 + "values": [
  233 + "GROUP_A",
  234 + "GROUP_B"
  235 + ],
206 236 "align": 1,
  237 + "pack": 1,
  238 + "type": "E:system@emmoco.com.System/ParameterGroup",
207 239 "size": 1
208 240 },
209 241 "std:u2": {
... ... @@ -211,11 +243,5 @@
211 243 "size": 2
212 244 }
213 245 },
214   - "resourceNamesApp": [
215   - "data",
216   - "messageAvailable",
217   - "numBytes",
218   - "numPackets"
219   - ],
220 246 "imports": {"@emmoco.com.DUREX": true}
221 247 }
222 248 \ No newline at end of file
... ...
DUREX/Em/DUREX-STUBS.c
1   -/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-07-30T17:03:27T ****/
  1 +/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-08-07T19:28:56T ****/
2 2 /**** protocolLevel = 13, toolsVersion = 13.4.1.201311121909 ****/
3 3  
4 4 #include "DUREX.h"
... ...
DUREX/Em/DUREX.c
1   -/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-07-30T17:03:27T ****/
  1 +/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-08-07T19:28:56T ****/
2 2 /**** protocolLevel = 13, toolsVersion = 13.4.1.201311121909 ****/
3 3  
4 4 #include "Em_Message.h"
... ... @@ -19,7 +19,7 @@ typedef struct Em_App_Message {
19 19  
20 20 const uint8_t Em_App_hash[] = {0, 164, 192, 32, 22, 163, 114, 239, 91, 240, 123, 128, 206, 12, 50, 148, 13, 0, ((sizeof(struct{uint8_t f1; uint16_t f2;}) - sizeof(uint16_t)) << 4) | (sizeof(struct{uint8_t f1; uint32_t f2;}) - sizeof(uint32_t))};
21 21  
22   -const uint8_t Em_App_build[] = {171, 30, 204, 135, 71, 1, 0, 0};
  22 +const uint8_t Em_App_build[] = {131, 51, 132, 177, 71, 1, 0, 0};
23 23  
24 24 #define Em_App_APP_RESOURCE_COUNT 4
25 25 #define Em_App_SYS_RESOURCE_COUNT 9
... ...
DUREX/Em/DUREX.h
1   -/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-07-30T17:03:27T ****/
  1 +/**** DO NOT EDIT -- this file has been automatically generated from @emmoco.com.DUREX on 2014-08-07T19:28:56T ****/
2 2 /**** protocolLevel = 13, toolsVersion = 13.4.1.201311121909 ****/
3 3  
4 4 #ifndef DUREX__H
... ...
DUREX/Em/durex.json
... ... @@ -144,16 +144,16 @@
144 144 "name": "DUREX",
145 145 "$$md5": "00a4c02016a372ef5bf07b80ce0c3294",
146 146 "build": [
147   - 171,
148   - 30,
149   - 204,
150   - 135,
  147 + 131,
  148 + 51,
  149 + 132,
  150 + 177,
151 151 71,
152 152 1,
153 153 0,
154 154 0
155 155 ],
156   - "date": "2014-07-30T17:03:27T",
  156 + "date": "2014-08-07T19:28:56T",
157 157 "maxAlign": 2,
158 158 "maxSize": 201,
159 159 "version": "1.0.0"
... ...
DUREX/bundle.properties
... ... @@ -6,5 +6,5 @@ com.emmoco.framework.Properties.schemaDestinationDirectory = Em
6 6 com.emmoco.framework.Properties.serverAPIToken =
7 7 com.emmoco.framework.Properties.align16 = 2
8 8 com.emmoco.framework.Properties.align32 = 4
9   -com.emmoco.framework.Properties.schemaFile = /Users/imanol/devel/em-builder/DUREX/DUREX.ems
  9 +com.emmoco.framework.Properties.schemaFile = /Users/imanol/devel/durex/DUREX/DUREX.ems
10 10 com.emmoco.framework.Properties.toolVersion = 13.4.1.201311121909
... ...