|
open_iA 2024.9
|
Interface for anything that can be saved as a project. More...
#include <iASavableProject.h>
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. | |
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:
|
protectedvirtual |
Prevent destruction of the object through this interface.
| QString const & iASavableProject::fileName | ( | ) | const |
return the name of the last file that was stored
| 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