Fréchet View  1.6.0
A Tool for Exploring Fréchet Distance Algorithms
frechet::view::MainWindow Class Reference

Detailed Description

The single application window.

Contains three panels:

Also has a menu bar and tool button area;

Author
Peter Schäfer

Definition at line 33 of file mainwindow.h.

#include <mainwindow.h>

Inherits QMainWindow.

Public Slots

void enterFullScreen (bool fullscreen)
 enter/leave full-screen mode More...
 
void showHideAnimation ()
 
void showHideXAnimation ()
 
void startStopAnimation ()
 
void startStopFSAnimation ()
 
void startStopCVAnimation ()
 
void startStopProjectionAnimation ()
 

Public Member Functions

 MainWindow (QWidget *parent=0)
 default constructor More...
 
 ~MainWindow ()
 destructor; closes the window, releases all widgets More...
 
ControlPanelgetControlPanel ()
 
CurveViewgetCurveView ()
 
FreeSpaceViewgetFreeSpaceView ()
 
void closeEvent (QCloseEvent *event)
 catch window close event and quit the application More...
 
QAction * actionOpen ()
 
QAction * actionOpenRecent ()
 
QAction * actionOpenPrevious ()
 
QAction * actionOpenNext ()
 
QAction * actionQuit ()
 
void saveSettings (QSettings &settings)
 store settings to application preferences More...
 
void restoreSettings (QSettings &settings)
 load settings from application preferences More...
 
void setShowBounds (bool show)
 called when the user clicks the "Show Bounds" button More...
 
void setSeparateCurves (bool separate)
 called when the user clicks the "Separate Curves" button More...
 

Private Member Functions

void showHideAnimation (bool fspath)
 

Private Attributes

Ui::MainWindow * ui
 widgets (auto-generated by Qt) More...
 
CurveViewcurveView
 curve view More...
 
FreeSpaceViewfreeSpaceView
 free-space view More...
 
ControlPanelcontrolPanel
 control panel More...
 
QSplitter * splitter
 splitter between panels More...
 
AnimationDialog * overlayWindow
 

Friends

class frechet::app::FrechetViewApplication
 

Constructor & Destructor Documentation

◆ MainWindow()

MainWindow::MainWindow ( QWidget *  parent = 0)

default constructor

Parameters
parentwidget (optional)

Set up UI and wire menu actions to slots.

Definition at line 13 of file mainwindow.cpp.

◆ ~MainWindow()

MainWindow::~MainWindow ( )

destructor; closes the window, releases all widgets

Definition at line 135 of file mainwindow.cpp.

Member Function Documentation

◆ actionOpen()

QAction * MainWindow::actionOpen ( )
Returns
menu action File/Open

Definition at line 146 of file mainwindow.cpp.

◆ actionOpenNext()

QAction* frechet::view::MainWindow::actionOpenNext ( )

◆ actionOpenPrevious()

QAction* frechet::view::MainWindow::actionOpenPrevious ( )

◆ actionOpenRecent()

QAction * MainWindow::actionOpenRecent ( )
Returns
menu action File/Open Recent...

Definition at line 147 of file mainwindow.cpp.

◆ actionQuit()

QAction * MainWindow::actionQuit ( )
Returns
menu action File/Quit

Definition at line 148 of file mainwindow.cpp.

◆ closeEvent()

void MainWindow::closeEvent ( QCloseEvent *  event)

catch window close event and quit the application

Parameters
eventwindow close event

Definition at line 140 of file mainwindow.cpp.

◆ enterFullScreen

void MainWindow::enterFullScreen ( bool  fullscreen)
slot

enter/leave full-screen mode

Parameters
fullscreen

Definition at line 196 of file mainwindow.cpp.

◆ getControlPanel()

ControlPanel* frechet::view::MainWindow::getControlPanel ( )
inline
Returns
the control panel

Definition at line 47 of file mainwindow.h.

◆ getCurveView()

CurveView* frechet::view::MainWindow::getCurveView ( )
inline
Returns
the curve view

Definition at line 49 of file mainwindow.h.

◆ getFreeSpaceView()

FreeSpaceView* frechet::view::MainWindow::getFreeSpaceView ( )
inline
Returns
the free-space view

Definition at line 51 of file mainwindow.h.

◆ restoreSettings()

void MainWindow::restoreSettings ( QSettings &  settings)

load settings from application preferences

Parameters
settingsapplication preferences

MacOS Fun Fact: QSettings are stored in /Users/hrimfaxi/Library/Preferences/de.fu-hagen.ti.Frechet View.plist however, they are CACHED. If you want to reset QSettings, it is not sufficient to delete the file, you ALSO have to clear the cache: killall -u yourusername cfprefsd

Definition at line 168 of file mainwindow.cpp.

◆ saveSettings()

void MainWindow::saveSettings ( QSettings &  settings)

store settings to application preferences

Parameters
settingsapplication preferences

Definition at line 150 of file mainwindow.cpp.

◆ setSeparateCurves()

void MainWindow::setSeparateCurves ( bool  separate)

called when the user clicks the "Separate Curves" button

Parameters
separate

Definition at line 191 of file mainwindow.cpp.

◆ setShowBounds()

void MainWindow::setShowBounds ( bool  show)

called when the user clicks the "Show Bounds" button

Parameters
showfree-space boundary rectangles

Definition at line 186 of file mainwindow.cpp.

◆ showHideAnimation [1/2]

void frechet::view::MainWindow::showHideAnimation ( )
inlineslot

Definition at line 95 of file mainwindow.h.

◆ showHideAnimation() [2/2]

void frechet::view::MainWindow::showHideAnimation ( bool  fspath)
private

◆ showHideXAnimation

void frechet::view::MainWindow::showHideXAnimation ( )
inlineslot

Definition at line 96 of file mainwindow.h.

◆ startStopAnimation

void frechet::view::MainWindow::startStopAnimation ( )
slot

◆ startStopCVAnimation

void frechet::view::MainWindow::startStopCVAnimation ( )
slot

◆ startStopFSAnimation

void frechet::view::MainWindow::startStopFSAnimation ( )
slot

◆ startStopProjectionAnimation

void frechet::view::MainWindow::startStopProjectionAnimation ( )
slot

Friends And Related Function Documentation

◆ frechet::app::FrechetViewApplication

Definition at line 103 of file mainwindow.h.

Member Data Documentation

◆ controlPanel

ControlPanel* frechet::view::MainWindow::controlPanel
private

control panel

Definition at line 112 of file mainwindow.h.

◆ curveView

CurveView* frechet::view::MainWindow::curveView
private

curve view

Definition at line 108 of file mainwindow.h.

◆ freeSpaceView

FreeSpaceView* frechet::view::MainWindow::freeSpaceView
private

free-space view

Definition at line 110 of file mainwindow.h.

◆ overlayWindow

AnimationDialog* frechet::view::MainWindow::overlayWindow
private

Definition at line 117 of file mainwindow.h.

◆ splitter

QSplitter* frechet::view::MainWindow::splitter
private

splitter between panels

Definition at line 114 of file mainwindow.h.

◆ ui

Ui::MainWindow* frechet::view::MainWindow::ui
private

widgets (auto-generated by Qt)

Definition at line 105 of file mainwindow.h.


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