Olive
Public Slots | Signals | Public Member Functions | Protected Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
MainWindow Class Reference
Inheritance diagram for MainWindow:

Public Slots

void toggle_full_screen ()
 Toggles full screen mode. More...
 

Signals

void finished_first_paint ()
 Signal emitted once when the main window has finished initializing. More...
 

Public Member Functions

 MainWindow (QWidget *parent)
 
void updateTitle ()
 Update window title. More...
 
void load_shortcuts (const QString &fn)
 Load shortcut file. More...
 
void save_shortcuts (const QString &fn)
 Save shortcut file. More...
 
void load_css_from_file (const QString &fn)
 Load a CSS/QSS style from file to customize Olive's interface. More...
 

Protected Member Functions

virtual void closeEvent (QCloseEvent *) override
 Close event. More...
 
virtual void paintEvent (QPaintEvent *) override
 Paint event. More...
 

Private Slots

void maximize_panel ()
 Maximizes the currently hovered panel. More...
 
void reset_layout ()
 Reset panel layout to default. More...
 
void fileMenu_About_To_Be_Shown ()
 Function to prepare File menu. More...
 
void editMenu_About_To_Be_Shown ()
 Function to prepare Edit menu. More...
 
void windowMenu_About_To_Be_Shown ()
 Function to prepare Window menu. More...
 
void playbackMenu_About_To_Be_Shown ()
 Function to prepare Playback menu. More...
 
void viewMenu_About_To_Be_Shown ()
 Function to prepare View menu. More...
 
void toolMenu_About_To_Be_Shown ()
 Function to prepare Tools menu. More...
 
void toggle_panel_visibility ()
 Toggle whether a panel is visible or not. More...
 

Private Member Functions

void setup_layout (bool reset)
 Internal function for setting the panel layout to a predetermined preset. More...
 
void setup_menus ()
 Initialize menu bar menus and items. More...
 

Private Attributes

QMenu * window_menu
 
QMenu * open_recent
 
QAction * clear_open_recent_action
 
QAction * track_lines
 
QAction * frames_action
 
QAction * drop_frame_action
 
QAction * nondrop_frame_action
 
QAction * milliseconds_action
 
QAction * no_autoscroll
 
QAction * page_autoscroll
 
QAction * smooth_autoscroll
 
QAction * title_safe_off
 
QAction * title_safe_default
 
QAction * title_safe_43
 
QAction * title_safe_169
 
QAction * title_safe_custom
 
QAction * full_screen
 
QAction * show_all
 
QAction * pointer_tool_action
 
QAction * edit_tool_action
 
QAction * ripple_tool_action
 
QAction * razor_tool_action
 
QAction * slip_tool_action
 
QAction * slide_tool_action
 
QAction * hand_tool_action
 
QAction * transition_tool_action
 
QAction * snap_toggle
 
QAction * selecting_also_seeks
 
QAction * edit_tool_also_seeks
 
QAction * edit_tool_selects_links
 
QAction * seek_to_end_of_pastes
 
QAction * scroll_wheel_zooms
 
QAction * rectified_waveforms
 
QAction * enable_drag_files_to_timeline
 
QAction * autoscale_by_default
 
QAction * enable_seek_to_import
 
QAction * enable_audio_scrubbing
 
QAction * enable_drop_on_media_to_replace
 
QAction * enable_hover_focus
 
QAction * set_name_and_marker
 
QAction * loop_action
 
QAction * seek_also_selects
 
QAction * undo_action
 
QAction * redo_action
 
QByteArray temp_panel_state
 
bool first_show
 

Member Function Documentation

◆ closeEvent()

void MainWindow::closeEvent ( QCloseEvent *  e)
overrideprotectedvirtual

Close event.

Confirms whether the project can be closed, and if so performs various clean-up functions before the application exits. It's preferable to call clean-up functions here rather than in the destructor because this will get called first.

◆ editMenu_About_To_Be_Shown

void MainWindow::editMenu_About_To_Be_Shown ( )
privateslot

Function to prepare Edit menu.

Primarily used to set the enabled state on Undo and Redo depending if there are undos/redos available.

◆ fileMenu_About_To_Be_Shown

void MainWindow::fileMenu_About_To_Be_Shown ( )
privateslot

Function to prepare File menu.

Primarily used to populate the Open Recent Projects menu.

◆ finished_first_paint

void MainWindow::finished_first_paint ( )
signal

Signal emitted once when the main window has finished initializing.

Emitted the first time paintEvent runs. Connect this to functions that must be completed post-initialization.

◆ load_css_from_file()

void MainWindow::load_css_from_file ( const QString &  fn)

Load a CSS/QSS style from file to customize Olive's interface.

Parameters
fnURL to load the CSS file from.

◆ load_shortcuts()

void MainWindow::load_shortcuts ( const QString &  fn)

Load shortcut file.

Loads a shortcut configuration from file and sets Olive to use them.

Parameters
fnURL of the shortcut file to be loaded

◆ maximize_panel

void MainWindow::maximize_panel ( )
privateslot

Maximizes the currently hovered panel.

Saves the current state of the panels/dock widgets and removes all except the currently hovered panel, effectively maximizing the panel to the entire window.

◆ paintEvent()

void MainWindow::paintEvent ( QPaintEvent *  event)
overrideprotectedvirtual

Paint event.

Overridden to provide the finished_first_paint() signal.

◆ playbackMenu_About_To_Be_Shown

void MainWindow::playbackMenu_About_To_Be_Shown ( )
privateslot

Function to prepare Playback menu.

Primarily used to set the checked state on the "Loop" item.

◆ reset_layout

void MainWindow::reset_layout ( )
privateslot

Reset panel layout to default.

Resets the current panel layout to default. Doesn't save the current layout.

◆ save_shortcuts()

void MainWindow::save_shortcuts ( const QString &  fn)

Save shortcut file.

Saves the current shortcut configuration to file. Only saves shortcuts that have been changed from default.

Parameters
fnURL to save the shortcut file to.

◆ setup_layout()

void MainWindow::setup_layout ( bool  reset)
private

Internal function for setting the panel layout to a predetermined preset.

Resets layout to default and optionally loads a layout from file. If loading from file, this function will always load from get_config_path() + "/layout".

Parameters
resetTRUE if this function should just reset the current layout. FALSE if it should load from the aforementioned layout file.

◆ setup_menus()

void MainWindow::setup_menus ( )
private

Initialize menu bar menus and items.

Internal initialization function for all menus and menu items in the main window. Called once from the MainWindow() constructor.

◆ toggle_full_screen

void MainWindow::toggle_full_screen ( )
slot

Toggles full screen mode.

Toggles the main window between full screen and windowed modes.

◆ toggle_panel_visibility

void MainWindow::toggle_panel_visibility ( )
privateslot

Toggle whether a panel is visible or not.

Assumes the sender() QAction has a pointer to a QDockWidget in its data variable. Casts it and toggles its visibility.

◆ toolMenu_About_To_Be_Shown

void MainWindow::toolMenu_About_To_Be_Shown ( )
privateslot

Function to prepare Tools menu.

Primarily used to set the checked state on various settings available from the Tools menu.

◆ updateTitle()

void MainWindow::updateTitle ( )

Update window title.

Updates the window title to reflect the current project filename. Call if the project filename changes.

NOTE: It's recommended to use update_project_filename() from Olive::Global to update the filename completely instead of calling this function directly (update_project_filename() calls this function in the process).

◆ viewMenu_About_To_Be_Shown

void MainWindow::viewMenu_About_To_Be_Shown ( )
privateslot

Function to prepare View menu.

Primarily used to set the checked state of various options in the view menu (e.g. title safe area, timecode units, etc.)

◆ windowMenu_About_To_Be_Shown

void MainWindow::windowMenu_About_To_Be_Shown ( )
privateslot

Function to prepare Window menu.

Primarily used to set the checked state of menu items corresponding to the panels that are currently visible.


The documentation for this class was generated from the following files: