ChatViewHeader.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. // _____ _
  2. // |_ _| |_ _ _ ___ ___ _ __ __ _
  3. // | | | ' \| '_/ -_) -_) ' \/ _` |_
  4. // |_| |_||_|_| \___\___|_|_|_\__,_(_)
  5. //
  6. // Threema iOS Client
  7. // Copyright (c) 2014-2020 Threema GmbH
  8. //
  9. // This program is free software: you can redistribute it and/or modify
  10. // it under the terms of the GNU Affero General Public License, version 3,
  11. // as published by the Free Software Foundation.
  12. //
  13. // This program is distributed in the hope that it will be useful,
  14. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. // GNU Affero General Public License for more details.
  17. //
  18. // You should have received a copy of the GNU Affero General Public License
  19. // along with this program. If not, see <https://www.gnu.org/licenses/>.
  20. #import <UIKit/UIKit.h>
  21. #import "MKNumberBadgeView.h"
  22. #import "Conversation.h"
  23. #import "ImageMessage.h"
  24. @class ChatViewController;
  25. @class HairlineView;
  26. @protocol ChatViewHeaderDelegate <NSObject>
  27. - (void)didChangeHeightTo:(CGFloat)newHeight;
  28. @end
  29. @interface ChatViewHeader : UIView
  30. @property (weak) ChatViewController *chatViewController;
  31. @property (nonatomic) Conversation *conversation;
  32. @property (weak, nonatomic) IBOutlet UIView *wrapperView;
  33. @property (weak, nonatomic) IBOutlet UIView *mainView;
  34. @property (weak, nonatomic) IBOutlet UIView *optionalButtonsView;
  35. @property (weak, nonatomic) IBOutlet UIButton *callButton;
  36. @property (weak, nonatomic) IBOutlet UIButton *avatarButton;
  37. @property (weak, nonatomic) IBOutlet UIButton *verificationLevel;
  38. @property (weak, nonatomic) IBOutlet UIButton *mediaButton;
  39. @property (weak, nonatomic) IBOutlet UIButton *ballotsButton;
  40. @property (weak, nonatomic) IBOutlet UIButton *searchButton;
  41. @property (weak, nonatomic) IBOutlet UIButton *notificationsSettingsButton;
  42. @property (weak, nonatomic) IBOutlet MKNumberBadgeView *ballotBadge;
  43. @property (weak, nonatomic) IBOutlet HairlineView *verticalDividerLine1;
  44. @property (weak, nonatomic) IBOutlet HairlineView *verticalDividerLine2;
  45. @property (weak, nonatomic) IBOutlet UIView *verticalDividerLine3;
  46. @property (weak, nonatomic) IBOutlet HairlineView *horizontalDividerLine1;
  47. @property (weak, nonatomic) IBOutlet HairlineView *horizontalDividerLine2;
  48. @property (weak, nonatomic) IBOutlet UIImageView *threemaTypeIcon;
  49. @property (weak) id<ChatViewHeaderDelegate> delegate;
  50. - (IBAction)callAction:(id)sender;
  51. - (IBAction)mediaAction:(id)sender;
  52. - (IBAction)ballotAction:(id)sender;
  53. - (IBAction)searchAction:(id)sender;
  54. - (IBAction)notificationsSettingsAction:(id)sender;
  55. - (UIViewController *)getPhotoBrowserAtMessage:(BaseMessage*)msg forPeeking:(BOOL)peeking;
  56. - (void)cleanupMedia;
  57. - (CGFloat)getHeight;
  58. - (void)refresh;
  59. - (void)cancelSearch;
  60. - (NSUInteger)mediaSelectionCount;
  61. - (NSSet *)mediaPhotoSelection;
  62. - (void)showThreemaVideoCallInfo;
  63. @end