Olive
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
config.h
Go to the documentation of this file.
1 /***
2 
3  Olive - Non-Linear Video Editor
4  Copyright (C) 2019 Olive Team
5 
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, see <http://www.gnu.org/licenses/>.
18 
19 ***/
20 
21 #ifndef CONFIG_H
22 #define CONFIG_H
23 
24 #include <QString>
25 
26 #include "ui/styling.h"
27 
28 namespace olive {
42  const int kSaveVersion = 190219; // YYMMDD
43 
56  const int kMinimumSaveVersion = 190219; // lowest compatible project version
57 
65  enum TimecodeType {
68 
71 
74 
77  };
78 
88 
91  };
92 
102 
106 
110  };
111 
118  enum ProjectView {
121 
124 
127  };
128 
142 
145  };
146 }
147 
154 struct Config {
160  Config();
161 
168 
176 
183 
190 
197 
204 
211 
219 
226 
236 
243 
250 
259 
266 
274 
283 
290 
297 
305 
314 
322 
332 
341 
349 
358 
369 
379 
390 
400 
408  bool loop;
409 
418 
425 
432  QString css_path;
433 
442 
453 
462 
471 
480 
488  QString language_file;
489 
499 
506 
514 
521 
528 
535 
540 
545 
550 
555 
560 
565 
575  void load(QString path);
576 
586  void save(QString path);
587 };
588 
601  RuntimeConfig();
602 
609 
617 
624 };
625 
626 namespace olive {
627 extern Config CurrentConfig;
629 }
630 
631 #endif // CONFIG_H
bool invert_timeline_scroll_axes
Invert Timeline scroll axes.
Definition: config.h:520
QString img_seq_formats
Image sequence formats.
Definition: config.h:210
bool show_project_toolbar
Show the project toolbar.
Definition: config.h:357
Definition: config.h:90
Config()
Config Constructor.
Definition: config.cpp:35
bool auto_seek_to_beginning
Automatically seek to the beginning of a sequence if the user plays beyond the end of it...
Definition: config.h:424
bool locked_panels
Sets whether panels should load locked or not.
Definition: config.h:564
RuntimeConfig CurrentRuntimeConfig
Definition: config.cpp:33
int default_sequence_audio_frequency
Default Sequence audio frequency.
Definition: config.h:554
bool enable_seek_to_import
Enable seek to import.
Definition: config.h:289
Definition: config.h:105
bool disable_blending
Disable blending modes.
Definition: config.h:616
int default_sequence_audio_channel_layout
Default Sequence audio channel layout.
Definition: config.h:559
Definition: config.h:144
AutoScrollMode
The AutoScrollMode enum.
Definition: config.h:99
bool center_timeline_timecodes
Center Timeline timecodes.
Definition: config.h:461
olive::styling::Style style
Style to use when theming Olive.
Definition: config.h:527
RuntimeConfig()
RuntimeConfig Constructor.
Definition: config.cpp:327
bool add_default_effects_to_clips
Add default effects to clips.
Definition: config.h:513
Definition: config.h:73
bool set_name_with_marker
Ask for a marker name when setting a marker.
Definition: config.h:348
bool rectified_waveforms
Use rectified waveforms.
Definition: config.h:218
bool loop
Loop.
Definition: config.h:408
bool show_track_lines
Show track lines.
Definition: config.h:167
TimecodeType
The TimecodeType enum.
Definition: config.h:65
int previous_queue_type
Previous frame queue type.
Definition: config.h:378
double custom_title_safe_ratio
Custom title/action safe area aspect ratio.
Definition: config.h:258
QString css_path
CSS Path.
Definition: config.h:432
int project_view_type
Project view type.
Definition: config.h:340
bool edit_tool_also_seeks
Edit tool also seeks.
Definition: config.h:189
Definition: config.h:109
int waveform_resolution
Waveform resolution.
Definition: config.h:498
bool shaders_are_enabled
Enable shaders.
Definition: config.h:608
Definition: config.h:101
int timecode_view
Timecode display mode.
Definition: config.h:235
bool show_title_safe_area
Show title/action safe area.
Definition: config.h:242
Definition: config.h:70
QString external_translation_file
Load an external translation file.
Definition: config.h:623
Definition: config.h:120
bool use_custom_title_safe_ratio
Use custom title/action safe area aspect ratio.
Definition: config.h:249
void save(QString path)
Save config to file.
Definition: config.cpp:257
int default_transition_length
Default transition length.
Definition: config.h:225
int upcoming_queue_type
Upcoming frame queue type.
Definition: config.h:399
bool hover_focus
Enable hover focus.
Definition: config.h:331
bool use_native_menu_styling
Use native menu styling.
Definition: config.h:534
int audio_rate
Current audio sample rate.
Definition: config.h:321
Definition: config.h:87
int default_sequence_width
Default Sequence video width.
Definition: config.h:539
The Config struct.
Definition: config.h:154
The RuntimeConfig struct.
Definition: config.h:595
bool edit_tool_selects_links
Edit tool selects links.
Definition: config.h:182
QString preferred_audio_input
Preferred audio input device.
Definition: config.h:479
Definition: config.h:67
bool scroll_zooms
The scroll wheel zooms rather than scrolls.
Definition: config.h:175
bool enable_audio_scrubbing
Enable audio scrubbing.
Definition: config.h:296
Definition: config.h:76
Config CurrentConfig
Definition: config.cpp:32
FrameQueueType
The FrameQueueType enum.
Definition: config.h:139
bool autoscale_by_default
Auto-scale by default.
Definition: config.h:273
QString language_file
Language/translation file.
Definition: config.h:488
const int kMinimumSaveVersion
Minimum project version that this version of Olive can open.
Definition: config.h:56
Definition: config.h:123
bool drop_on_media_to_replace
Enable drop on media to replace.
Definition: config.h:304
bool enable_drag_files_to_timeline
Enable dragging files outside Olive directly into the Timeline.
Definition: config.h:265
RecordingMode
The RecordingMode enum.
Definition: config.h:85
Definition: config.h:141
int recording_mode
Recording mode/channel layout.
Definition: config.h:282
Style
Officially supported styles to use in Olive.
Definition: styling.h:12
double previous_queue_size
Previous frame queue size.
Definition: config.h:368
bool use_software_fallback
Use software fallbacks when possible.
Definition: config.h:452
int autoscroll
Auto-scroll mode.
Definition: config.h:313
QString preferred_audio_output
Preferred audio output device.
Definition: config.h:470
Definition: config.h:126
ProjectView
The ProjectView enum.
Definition: config.h:118
double upcoming_queue_size
Upcoming frame queue size.
Definition: config.h:389
int default_sequence_height
Default Sequence video height.
Definition: config.h:544
int thumbnail_resolution
Thumbnail resolution.
Definition: config.h:505
bool seek_also_selects
Seeking also selects.
Definition: config.h:417
void load(QString path)
Load config from file.
Definition: config.cpp:85
bool select_also_seeks
Selecting also seeks.
Definition: config.h:196
const int kSaveVersion
Version identifier for saved projects.
Definition: config.h:42
double default_sequence_framerate
Default Sequence video frame rate.
Definition: config.h:549
int effect_textbox_lines
Number of lines that an Effect&#39;s textbox has.
Definition: config.h:441
bool paste_seeks
Paste also seeks.
Definition: config.h:203