open_iA 2023.02
A tool for the visual analysis and processing of volumetric datasets, with a focus on industrial computed tomography.
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
iASavableProject Class Referenceabstract

Interface for anything that can be saved as a project. More...

#include <iASavableProject.h>

Inheritance diagram for iASavableProject:
[legend]

Public Member Functions

QString const & fileName () const
 return the name of the last file that was stored
 
bool saveProject (QString const &basePath)
 Called from main window to save the project of the current window.
 

Protected Member Functions

virtual ~iASavableProject ()
 Prevent destruction of the object through this interface.
 

Detailed Description

Interface for anything that can be saved as a project.

Necessary since not all current tools employ iAMdiChild as container for their widgets. So every such container needs to implement this class and its doLoadProject method, in order to be called when the user selects to "Save Project".

Refactoring ideas:

Constructor & Destructor Documentation

◆ ~iASavableProject()

iASavableProject::~iASavableProject ( )
protectedvirtual

Prevent destruction of the object through this interface.

Member Function Documentation

◆ fileName()

QString const & iASavableProject::fileName ( ) const

return the name of the last file that was stored

◆ saveProject()

bool iASavableProject::saveProject ( QString const &  basePath)

Called from main window to save the project of the current window.

In case you're wondering why there are two methods in this class, this one and the virtual "doSaveProject": This is because it follows the "Non-Virtual Interface Idiom", see http://www.gotw.ca/publications/mill18.htm


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