LookinCustomDisplayItemInfo.m 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifdef SHOULD_COMPILE_LOOKIN_SERVER
  2. //
  3. // LookinCustomDisplayItemInfo.m
  4. // LookinServer
  5. //
  6. // Created by likai.123 on 2023/11/1.
  7. //
  8. #import "LookinCustomDisplayItemInfo.h"
  9. #if TARGET_OS_IPHONE
  10. #import <UIKit/UIKit.h>
  11. #endif
  12. @implementation LookinCustomDisplayItemInfo
  13. - (id)copyWithZone:(NSZone *)zone {
  14. LookinCustomDisplayItemInfo *newInstance = [[LookinCustomDisplayItemInfo allocWithZone:zone] init];
  15. if (self.frameInWindow) {
  16. #if TARGET_OS_IPHONE
  17. CGRect rect = [self.frameInWindow CGRectValue];
  18. newInstance.frameInWindow = [NSValue valueWithCGRect:rect];
  19. #elif TARGET_OS_MAC
  20. CGRect rect = [self.frameInWindow rectValue];
  21. newInstance.frameInWindow = [NSValue valueWithRect:rect];
  22. #endif
  23. }
  24. newInstance.title = self.title;
  25. newInstance.subtitle = self.subtitle;
  26. newInstance.danceuiSource = self.danceuiSource;
  27. return newInstance;
  28. }
  29. - (void)encodeWithCoder:(NSCoder *)aCoder {
  30. [aCoder encodeObject:self.frameInWindow forKey:@"frameInWindow"];
  31. [aCoder encodeObject:self.title forKey:@"title"];
  32. [aCoder encodeObject:self.subtitle forKey:@"subtitle"];
  33. [aCoder encodeObject:self.danceuiSource forKey:@"danceuiSource"];
  34. }
  35. - (instancetype)initWithCoder:(NSCoder *)aDecoder {
  36. if (self = [super init]) {
  37. self.frameInWindow = [aDecoder decodeObjectForKey:@"frameInWindow"];
  38. self.title = [aDecoder decodeObjectForKey:@"title"];
  39. self.subtitle = [aDecoder decodeObjectForKey:@"subtitle"];
  40. self.danceuiSource = [aDecoder decodeObjectForKey:@"danceuiSource"];
  41. }
  42. return self;
  43. }
  44. + (BOOL)supportsSecureCoding {
  45. return YES;
  46. }
  47. @end
  48. #endif /* SHOULD_COMPILE_LOOKIN_SERVER */