[iOS] Dybamically enable addPeopleEnabled / dialOutEnabled

If the beginAddPeople delegate method is implemented, and they haven't been
explicitly set to NO, they willbe YES.
This commit is contained in:
Saúl Ibarra Corretgé 2018-05-02 14:12:49 +02:00 committed by Lyubo Marinov
parent 552fadc4a4
commit 0bad2dffb4
2 changed files with 39 additions and 4 deletions

View File

@ -33,9 +33,6 @@
// inviteController
InviteController *inviteController = view.inviteController;
//inviteController.addPeopleEnabled = TRUE;
//inviteController.dialOutEnabled = TRUE;
inviteController.delegate = self;
#endif // #ifdef DEBUG

View File

@ -17,7 +17,15 @@
#import "InviteController+Private.h"
#import "AddPeopleController+Private.h"
@implementation InviteController
@implementation InviteController {
NSNumber *_addPeopleEnabled;
NSNumber *_dialOutEnabled;
}
@dynamic addPeopleEnabled;
@dynamic dialOutEnabled;
#pragma mark Constructor
-(instancetype)initWithExternalAPIScope:(NSString * _Nonnull)externalAPIScope
andInviteModule:(Invite * _Nonnull)inviteModule {
@ -30,6 +38,8 @@
return self;
}
#pragma mark Public API
-(void)beginAddPeople {
if (_delegate == nil) {
return;
@ -57,6 +67,34 @@
}
}
#pragma mark Property getters / setters
- (void) setAddPeopleEnabled:(BOOL)addPeopleEnabled {
_addPeopleEnabled = [NSNumber numberWithBool:addPeopleEnabled];
}
- (BOOL) addPeopleEnabled {
if (_addPeopleEnabled == nil || [_addPeopleEnabled boolValue]) {
return self.delegate
&& [self.delegate respondsToSelector:@selector(beginAddPeople:)];
}
return NO;
}
- (void) setDialOutEnabled:(BOOL)dialOutEnabled {
_dialOutEnabled = [NSNumber numberWithBool:dialOutEnabled];
}
- (BOOL) dialOutEnabled {
if (_dialOutEnabled == nil || [_dialOutEnabled boolValue]) {
return self.delegate
&& [self.delegate respondsToSelector:@selector(beginAddPeople:)];
}
return NO;
}
#pragma mark Result handling
- (void)inviteSettled:(NSString *)addPeopleControllerScope