blob: 8a920484ea11dfa83e17ec3b5243bddfb14d2e20 [file] [log] [blame]
Alexandre Lision0f66bd32016-01-18 11:30:45 -05001/*
Anthony Léonarde7d62ed2018-01-25 10:51:47 -05002 * Copyright (C) 2016-2018 Savoir-faire Linux Inc.
Alexandre Lision0f66bd32016-01-18 11:30:45 -05003 * Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com>
Anthony Léonarde7d62ed2018-01-25 10:51:47 -05004 * Author: Anthony Léonard <anthony.leonard@savoirfairelinux.com>
Alexandre Lision0f66bd32016-01-18 11:30:45 -05005 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 */
20
21#import <Cocoa/Cocoa.h>
Kateryna Kostiuk58276bc2017-06-07 08:50:48 -040022#import "MessageBubbleView.h"
Alexandre Lision0f66bd32016-01-18 11:30:45 -050023
24@interface IMTableCellView : NSTableCellView
25
26@property (nonatomic, strong) IBOutlet NSImageView* photoView;
27@property (nonatomic, strong) IBOutlet NSTextView* msgView;
Kateryna Kostiuk58276bc2017-06-07 08:50:48 -040028@property (nonatomic, strong) IBOutlet MessageBubbleView* msgBackground;
Anthony Léonarde7d62ed2018-01-25 10:51:47 -050029@property (nonatomic, strong) IBOutlet NSButton* acceptButton;
30@property (nonatomic, strong) IBOutlet NSButton* declineButton;
31@property (nonatomic, strong) IBOutlet NSProgressIndicator* progressIndicator;
32@property (nonatomic, strong) IBOutlet NSTextField* statusLabel;
Kateryna Kostiukae660fd2018-04-24 14:10:41 -040033@property (nonatomic, strong) IBOutlet NSBox* timeBox;
34@property (nonatomic, strong) IBOutlet NSTextField* timeLabel;
Kateryna Kostiuk0f0ba992018-06-07 14:22:58 -040035@property (nonatomic, strong) IBOutlet NSButton* transferedFileName;
36@property (nonatomic, strong) IBOutlet NSButton* transferedImage;
Kateryna Kostiukae660fd2018-04-24 14:10:41 -040037@property (nonatomic, strong) IBOutlet NSProgressIndicator* sendingMessageIndicator;
Kateryna Kostiuka0f16862018-05-04 09:11:41 -040038@property (nonatomic, strong) IBOutlet NSImageView* messageFailed;
Kateryna Kostiukae660fd2018-04-24 14:10:41 -040039@property (nonatomic, strong) IBOutlet NSView* messageStatus;
Alexandre Lision0f66bd32016-01-18 11:30:45 -050040
Anthony Léonarde7d62ed2018-01-25 10:51:47 -050041
42- (uint64_t) interaction;
Kateryna Kostiuka0f16862018-05-04 09:11:41 -040043- (void) setupForInteraction:(uint64_t)inter isFailed:(bool) failed;
Anthony Léonarde7d62ed2018-01-25 10:51:47 -050044- (void) setupForInteraction:(uint64_t)inter;
Kateryna Kostiuk9d8b7922018-05-02 12:52:53 -040045- (void) updateMessageConstraint:(CGFloat) width andHeight: (CGFloat) height timeIsVisible: (bool) visible isTopPadding: (bool) padding;
Kateryna Kostiukae660fd2018-04-24 14:10:41 -040046- (void) updateImageConstraint: (CGFloat) width andHeight: (CGFloat) height;
47- (void) invalidateImageConstraints;
Alexandre Lision0f66bd32016-01-18 11:30:45 -050048
49@end