18#ifndef SUBTITLESDOCK_H
19#define SUBTITLESDOCK_H
21#include "MltPlaylist.h"
26class SubtitlesSelectionModel;
35class SubtitlesDock :
public QDockWidget
40 explicit SubtitlesDock(QWidget *parent = 0);
42 void setModel(SubtitlesModel *model, SubtitlesSelectionModel *selectionModel);
45 void seekRequested(
int pos);
46 void addAllTimeline(Mlt::Playlist *,
bool skipProxy,
bool emptyTrack);
47 void createOrEditFilterOnOutput(Mlt::Filter *,
const QStringList &key_properties);
50 void onPositionChanged(
int position);
51 void onStartColumnToggled(
bool checked);
52 void onEndColumnToggled(
bool checked);
53 void onDurationColumnToggled(
bool checked);
56 void resizeEvent(QResizeEvent *) Q_DECL_OVERRIDE;
60 void onCreateOrEditRequested();
61 void onAddRequested();
62 void onRemoveRequested();
63 void onSetStartRequested();
64 void onSetEndRequested();
65 void onMoveRequested();
68 void updateActionAvailablity();
69 void addSubtitleTrack();
70 void removeSubtitleTrack();
71 void editSubtitleTrack();
72 void refreshTracksCombo();
73 void importSubtitles();
74 void exportSubtitles();
75 void onItemDoubleClicked(
const QModelIndex &index);
76 void resizeTextWidgets();
77 void updateTextWidgets();
78 void setCurrentItem(
int trackIndex,
int itemIndex);
79 void refreshWidgets();
80 void selectItemForTime();
81 bool trackNameExists(
const QString &name);
82 void ensureTrackExists();
83 void burnInOnTimeline();
84 void generateTextOnTimeline();
86 SubtitlesModel *m_model;
87 SubtitlesSelectionModel *m_selectionModel;
88 QLabel *m_addToTimelineLabel;
89 QComboBox *m_trackCombo;
90 QTreeView *m_treeView;
98 bool m_textEditInProgress;