2015-03-24 01:07:33 +03:00
|
|
|
/**
|
2019-03-28 23:44:57 +03:00
|
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
2015-03-24 01:07:33 +03:00
|
|
|
*
|
2018-02-17 05:24:55 +03:00
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
2015-03-24 01:07:33 +03:00
|
|
|
*/
|
2015-03-10 02:18:15 +03:00
|
|
|
|
|
|
|
#import "RCTSwitch.h"
|
|
|
|
|
2019-03-01 21:09:07 +03:00
|
|
|
#if TARGET_OS_OSX // [TODO(macOS ISS#2323203)
|
|
|
|
#import <QuartzCore/QuartzCore.h>
|
|
|
|
#endif // ]TODO(macOS ISS#2323203)
|
|
|
|
|
2015-03-10 02:18:15 +03:00
|
|
|
#import "RCTEventDispatcher.h"
|
2015-03-26 16:32:01 +03:00
|
|
|
#import "UIView+React.h"
|
2015-03-10 02:18:15 +03:00
|
|
|
|
|
|
|
@implementation RCTSwitch
|
|
|
|
|
2019-03-01 21:09:07 +03:00
|
|
|
#if TARGET_OS_OSX // [TODO(macOS ISS#2323203)
|
|
|
|
- (instancetype)initWithFrame:(CGRect)frame
|
|
|
|
{
|
|
|
|
if ((self = [super initWithFrame:frame])) {
|
|
|
|
self.buttonType = NSSwitchButton;
|
|
|
|
self.title = @""; // default is "Button"
|
|
|
|
}
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !TARGET_OS_OSX // ]TODO(macOS ISS#2323203)
|
2015-03-10 02:18:15 +03:00
|
|
|
- (void)setOn:(BOOL)on animated:(BOOL)animated {
|
|
|
|
_wasOn = on;
|
|
|
|
[super setOn:on animated:animated];
|
|
|
|
}
|
2019-03-01 21:09:07 +03:00
|
|
|
#endif // [TODO(macOS ISS#2323203)
|
|
|
|
|
|
|
|
#if TARGET_OS_OSX
|
|
|
|
|
|
|
|
- (BOOL)on
|
|
|
|
{
|
|
|
|
return self.state == NSOnState;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)setOn:(BOOL)on
|
|
|
|
{
|
|
|
|
self.state = on ? NSOnState : NSOffState;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // ]TODO(macOS ISS#2323203)
|
2015-03-10 02:18:15 +03:00
|
|
|
|
|
|
|
@end
|