summaryrefslogtreecommitdiff
path: root/javascript/videojs/src/js/tracks/text-track-settings-controls.js
diff options
context:
space:
mode:
Diffstat (limited to 'javascript/videojs/src/js/tracks/text-track-settings-controls.js')
-rw-r--r--javascript/videojs/src/js/tracks/text-track-settings-controls.js59
1 files changed, 59 insertions, 0 deletions
diff --git a/javascript/videojs/src/js/tracks/text-track-settings-controls.js b/javascript/videojs/src/js/tracks/text-track-settings-controls.js
new file mode 100644
index 0000000..e57a831
--- /dev/null
+++ b/javascript/videojs/src/js/tracks/text-track-settings-controls.js
@@ -0,0 +1,59 @@
+import Component from '../component';
+import * as Dom from '../utils/dom';
+import Button from '../button';
+
+/**
+ * Buttons of reset & done that modal 'TextTrackSettings'
+ * uses as part of its content.
+ *
+ * 'Reset': Resets all settings on 'TextTrackSettings'.
+ * 'Done': Closes 'TextTrackSettings' modal.
+ *
+ * @extends Component
+ */
+class TrackSettingsControls extends Component {
+ constructor(player, options = {}) {
+ super(player, options);
+
+ // Create DOM elements
+ const resetButton = new Button(player, {
+ controlText: this.localize('restore all settings to the default values'),
+ className: 'vjs-default-button'
+ });
+
+ resetButton.el().classList.remove('vjs-control', 'vjs-button');
+ resetButton.el().textContent = this.localize('Reset');
+
+ this.addChild(resetButton);
+
+ const doneText = this.localize('Done');
+ const doneButton = new Button(player, {
+ controlText: doneText,
+ className: 'vjs-done-button'
+ });
+
+ // Remove unrequired style classes
+ doneButton.el().classList.remove('vjs-control', 'vjs-button');
+ doneButton.el().textContent = doneText;
+
+ this.addChild(doneButton);
+ }
+
+ /**
+ * Create the `TrackSettingsControls`'s DOM element
+ *
+ * @return {Element}
+ * The DOM element that gets created.
+ */
+ createEl() {
+ const el = Dom.createEl('div', {
+ className: 'vjs-track-settings-controls'
+ });
+
+ return el;
+ }
+
+}
+
+Component.registerComponent('TrackSettingsControls', TrackSettingsControls);
+export default TrackSettingsControls;