VLCMovieViewController.h 4.46 KB
Newer Older
1 2 3 4
/*****************************************************************************
 * VLCMovieViewController.h
 * VLC for iOS
 *****************************************************************************
5
 * Copyright (c) 2013-2017 VideoLAN. All rights reserved.
6 7 8 9 10 11 12
 * $Id$
 *
 * Authors: Felix Paul Kühne <fkuehne # videolan.org>
 *          Gleb Pinigin <gpinigin # gmail.com>
 *
 * Refer to the COPYING file of the official project for license.
 *****************************************************************************/
Felix Paul Kühne's avatar
Felix Paul Kühne committed
13

14
#import <MediaPlayer/MediaPlayer.h>
15
#import "VLCFrostedGlasView.h"
16
#import "VLCPlaybackController.h"
Felix Paul Kühne's avatar
Felix Paul Kühne committed
17

18 19 20
@class OBSlider;
@class VLCStatusLabel;
@class VLCVerticalSwipeGestureRecognizer;
21
@class VLCTimeNavigationTitleView;
22
@class VLCMovieViewControlPanelView;
23
@class VLCMovieViewController;
24

25 26 27 28 29 30
typedef NS_ENUM(NSInteger, VLCMovieJumpState) {
    VLCMovieJumpStateDefault,
    VLCMovieJumpStateForward,
    VLCMovieJumpStateBackward
};

31 32 33 34 35
@protocol VLCMovieViewControllerDelegate
- (void)movieViewControllerDidSelectMinimize:(VLCMovieViewController *)movieViewController;
- (BOOL)movieViewControllerShouldBeDisplayed:(VLCMovieViewController *)movieViewController;
@end

36
@interface VLCMovieViewController : UIViewController <UIActionSheetDelegate, VLCPlaybackControllerDelegate>
Felix Paul Kühne's avatar
Felix Paul Kühne committed
37

Felix Paul Kühne's avatar
Felix Paul Kühne committed
38
@property (nonatomic, strong) IBOutlet UIView *movieView;
39
@property (nonatomic, strong) IBOutlet VLCTimeNavigationTitleView *timeNavigationTitleView;
40
@property (nonatomic, strong) IBOutlet UIButton *sleepTimerButton;
41
@property (nonatomic, strong) IBOutlet VLCStatusLabel *statusLabel;
Felix Paul Kühne's avatar
Felix Paul Kühne committed
42 43 44 45 46

@property (nonatomic, strong) IBOutlet UIView *playingExternallyView;
@property (nonatomic, strong) IBOutlet UILabel *playingExternallyTitle;
@property (nonatomic, strong) IBOutlet UILabel *playingExternallyDescription;

47
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *videoFilterView;
48 49 50 51 52 53 54 55 56 57
@property (nonatomic, strong) IBOutlet UILabel *hueLabel;
@property (nonatomic, strong) IBOutlet UISlider *hueSlider;
@property (nonatomic, strong) IBOutlet UILabel *contrastLabel;
@property (nonatomic, strong) IBOutlet UISlider *contrastSlider;
@property (nonatomic, strong) IBOutlet UILabel *brightnessLabel;
@property (nonatomic, strong) IBOutlet UISlider *brightnessSlider;
@property (nonatomic, strong) IBOutlet UILabel *saturationLabel;
@property (nonatomic, strong) IBOutlet UISlider *saturationSlider;
@property (nonatomic, strong) IBOutlet UILabel *gammaLabel;
@property (nonatomic, strong) IBOutlet UISlider *gammaSlider;
58
@property (nonatomic, strong) IBOutlet UIButton *resetVideoFilterButton;
59

60
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *playbackSpeedView;
61 62 63
@property (nonatomic, strong) IBOutlet UISlider *playbackSpeedSlider;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedLabel;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedIndicator;
64 65 66 67 68 69
@property (nonatomic, strong) IBOutlet UISlider *audioDelaySlider;
@property (nonatomic, strong) IBOutlet UILabel *audioDelayLabel;
@property (nonatomic, strong) IBOutlet UILabel *audioDelayIndicator;
@property (nonatomic, strong) IBOutlet UISlider *spuDelaySlider;
@property (nonatomic, strong) IBOutlet UILabel *spuDelayLabel;
@property (nonatomic, strong) IBOutlet UILabel *spuDelayIndicator;
70

71
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *scrubIndicatorView;
72 73 74
@property (nonatomic, strong) IBOutlet UILabel *currentScrubSpeedLabel;
@property (nonatomic, strong) IBOutlet UILabel *scrubHelpLabel;

75 76 77
@property (nonatomic, strong) IBOutlet UILabel *artistNameLabel;
@property (nonatomic, strong) IBOutlet UILabel *albumNameLabel;
@property (nonatomic, strong) IBOutlet UILabel *trackNameLabel;
78
@property (nonatomic, strong) IBOutlet UIImageView *artworkImageView;
79
@property (nonatomic, strong) IBOutlet NSLayoutConstraint *widthConstraint;
80

81 82
@property (nonatomic, weak) id<VLCMovieViewControllerDelegate> delegate;

83
- (IBAction)closePlayback:(id)sender;
84
- (IBAction)minimizePlayback:(id)sender;
85

86
- (IBAction)positionSliderAction:(id)sender;
87 88 89
- (IBAction)positionSliderTouchDown:(id)sender;
- (IBAction)positionSliderTouchUp:(id)sender;
- (IBAction)positionSliderDrag:(id)sender;
90
- (IBAction)toggleTimeDisplay:(id)sender;
91

92
- (IBAction)sleepTimer:(id)sender;
93

94 95
- (IBAction)videoFilterSliderAction:(id)sender;

96
- (IBAction)playbackSliderAction:(id)sender;
97 98
- (IBAction)videoDimensionAction:(id)sender;

99
- (void)toggleRepeatMode;
Soomin Lee's avatar
Soomin Lee committed
100
- (void)toggleShuffleMode;
101 102 103 104 105
- (void)toggleEqualizer;
- (void)toggleUILock;
- (void)toggleChapterAndTitleSelector;
- (void)hideMenu;

106 107
- (BOOL)rotationIsDisabled;

Felix Paul Kühne's avatar
Felix Paul Kühne committed
108
@end