Home | History | Annotate | Download | only in ios
      1 /*
      2  *  Copyright 2015 The WebRTC Project Authors. All rights reserved.
      3  *
      4  *  Use of this source code is governed by a BSD-style license
      5  *  that can be found in the LICENSE file in the root of the source
      6  *  tree. An additional intellectual property rights grant can be found
      7  *  in the file PATENTS.  All contributing project authors may
      8  *  be found in the AUTHORS file in the root of the source tree.
      9  */
     10 
     11 #import "ARDStatsView.h"
     12 
     13 #import "RTCStatsReport.h"
     14 
     15 #import "ARDStatsBuilder.h"
     16 
     17 @implementation ARDStatsView {
     18   UILabel *_statsLabel;
     19   ARDStatsBuilder *_statsBuilder;
     20 }
     21 
     22 - (instancetype)initWithFrame:(CGRect)frame {
     23   if (self = [super initWithFrame:frame]) {
     24     _statsLabel = [[UILabel alloc] initWithFrame:CGRectZero];
     25     _statsLabel.numberOfLines = 0;
     26     _statsLabel.font = [UIFont fontWithName:@"Roboto" size:12];
     27     _statsLabel.adjustsFontSizeToFitWidth = YES;
     28     _statsLabel.minimumScaleFactor = 0.6;
     29     _statsLabel.textColor = [UIColor greenColor];
     30     [self addSubview:_statsLabel];
     31     self.backgroundColor = [UIColor colorWithWhite:0 alpha:.6];
     32     _statsBuilder = [[ARDStatsBuilder alloc] init];
     33   }
     34   return self;
     35 }
     36 
     37 - (void)setStats:(NSArray *)stats {
     38   for (RTCStatsReport *report in stats) {
     39     [_statsBuilder parseStatsReport:report];
     40   }
     41   _statsLabel.text = _statsBuilder.statsString;
     42 }
     43 
     44 - (void)layoutSubviews {
     45   _statsLabel.frame = self.bounds;
     46 }
     47 
     48 - (CGSize)sizeThatFits:(CGSize)size {
     49   return [_statsLabel sizeThatFits:size];
     50 }
     51 
     52 @end
     53