#import "NJInput.h"
#import "NJOutput.h"
#import "NJEvents.h"
-#import "NJDeviceViewController.h"
@implementation NJDeviceController {
NJHIDManager *_hidManager;
[_continuousOutputsTick invalidate];
}
-- (NJDevice *)objectAtIndexedSubscript:(NSUInteger)idx {
- return idx < _devices.count ? _devices[idx] : nil;
-}
-
-- (NSUInteger)count {
- return _devices.count;
-}
-
- (void)addRunningOutput:(NJOutput *)output {
// Axis events will trigger every small movement, don't keep
// re-adding them or they trigger multiple times each time.
- (void)setSimulatingEvents:(BOOL)simulatingEvents {
if (simulatingEvents != _simulatingEvents) {
_simulatingEvents = simulatingEvents;
- NSInteger state = simulatingEvents ? NSOnState : NSOffState;
- simulatingEventsButton.state = state;
NSString *name = simulatingEvents
? NJEventSimulationStarted
: NJEventSimulationStopped;
[self stopHid];
}
-- (IBAction)simulatingEventsChanged:(NSButton *)sender {
- self.simulatingEvents = sender.state == NSOnState;
-}
-
-- (NSInteger)numberOfDevicesInDeviceList:(NJDeviceViewController *)dvc {
- return _devices.count;
-}
-
-- (NJDevice *)deviceViewController:(NJDeviceViewController *)dvc
- deviceForIndex:(NSUInteger)idx {
- return _devices[idx];
-}
-
-- (NJInputPathElement *)objectForKeyedSubscript:(NSString *)uid {
+- (NJInputPathElement *)elementForUID:(NSString *)uid {
for (NJDevice *dev in _devices) {
id item = [dev elementForUID:uid];
if (item)