3D Forest
Software for analysis of Lidar data from forest environment.
MainWindow Class Reference

#include <MainWindow.hpp>

Inherits QMainWindow, and ThreadCallbackInterface.

Public Slots

void slotRender ()
 
void slotRenderViewport ()
 
void slotRenderViewport (size_t viewportId)
 

Signals

void signalRender ()
 
void signalUpdate (void *sender, const QSet< Editor::Type > &target)
 

Public Member Functions

 MainWindow (QWidget *parent=nullptr)
 
virtual ~MainWindow ()
 
QSize minimumSizeHint () const override
 
QSize sizeHint () const override
 
void showError (const char *message)
 
void setWindowTitle (const QString &path)
 
void createAction (QAction **result, const QString &menu, const QString &toolBar, const QString &text, const QString &toolTip, const QIcon &icon, const QObject *receiver, const char *member)
 
void hideToolBar (const QString &menu)
 
void suspendThreads ()
 
void resumeThreads ()
 
virtual void threadProgress (bool finished) override
 
void update (void *sender, const QSet< Editor::Type > &target)
 
void update (const QSet< Editor::Type > &target, Page::State viewPortsCacheState=Page::STATE_READ, bool resetCamera=false)
 
void updateEverything ()
 
void updateData ()
 
void updateFilter ()
 
void updateModifiers ()
 
void updateRender ()
 
Editoreditor ()
 
- Public Member Functions inherited from ThreadCallbackInterface
virtual ~ThreadCallbackInterface ()=default
 
virtual void threadProgress (bool finished)=0
 

Static Public Member Functions

static void createToolButton (QToolButton **result, const QString &text, const QString &toolTip, const QIcon &icon, const QObject *receiver, const char *member)
 

Static Public Attributes

static const char * APPLICATION_NAME = "3D Forest"
 
static const char * APPLICATION_VERSION = "1.0"
 
static const int ICON_SIZE = 24
 
static const int ICON_SIZE_TEXT = 16
 

Protected Member Functions

void showEvent (QShowEvent *event) override
 
void hideEvent (QHideEvent *event) override
 
void closeEvent (QCloseEvent *event) override
 

Private Member Functions

void loadPlugins ()
 
void loadPlugin (QObject *plugin)
 
void createMenuSeparator (const QString &menu)
 

Private Attributes

Editor editor_
 
RenderThread threadRender_
 
ImportFilePluginimportFilePlugin_
 
ExportFilePluginexportFilePlugin_
 
MessageLogPluginmessageLogPlugin_
 
ExplorerPluginexplorerPlugin_
 
ProjectFilePluginprojectFilePlugin_
 
SettingsPluginsettingsPlugin_
 
ViewerPluginviewerPlugin_
 
HelpPluginhelpPlugin_
 
std::vector< PluginInterface * > plugins_
 
QHash< QString, QMenu * > menu_
 
QHash< QString, QToolBar * > toolBar_
 
QAction * actionExit_
 

Constructor & Destructor Documentation

◆ MainWindow()

MainWindow::MainWindow ( QWidget *  parent = nullptr)

◆ ~MainWindow()

MainWindow::~MainWindow ( )
virtual

Member Function Documentation

◆ closeEvent()

void MainWindow::closeEvent ( QCloseEvent *  event)
overrideprotected

◆ createAction()

void MainWindow::createAction ( QAction **  result,
const QString &  menu,
const QString &  toolBar,
const QString &  text,
const QString &  toolTip,
const QIcon &  icon,
const QObject *  receiver,
const char *  member 
)

◆ createMenuSeparator()

void MainWindow::createMenuSeparator ( const QString &  menu)
private

Referenced by createAction().

◆ createToolButton()

void MainWindow::createToolButton ( QToolButton **  result,
const QString &  text,
const QString &  toolTip,
const QIcon &  icon,
const QObject *  receiver,
const char *  member 
)
static

◆ editor()

◆ hideEvent()

void MainWindow::hideEvent ( QHideEvent *  event)
overrideprotected

◆ hideToolBar()

void MainWindow::hideToolBar ( const QString &  menu)

◆ loadPlugin()

void MainWindow::loadPlugin ( QObject *  plugin)
private

Referenced by loadPlugins().

◆ loadPlugins()

void MainWindow::loadPlugins ( )
private

Referenced by MainWindow().

◆ minimumSizeHint()

QSize MainWindow::minimumSizeHint ( ) const
override

◆ resumeThreads()

◆ setWindowTitle()

void MainWindow::setWindowTitle ( const QString &  path)

Referenced by updateEverything().

◆ showError()

◆ showEvent()

void MainWindow::showEvent ( QShowEvent *  event)
overrideprotected

◆ signalRender

void MainWindow::signalRender ( )
signal

Referenced by MainWindow(), and threadProgress().

◆ signalUpdate

void MainWindow::signalUpdate ( void *  sender,
const QSet< Editor::Type > &  target 
)
signal

Referenced by update(), and updateEverything().

◆ sizeHint()

QSize MainWindow::sizeHint ( ) const
override

◆ slotRender

void MainWindow::slotRender ( )
slot

Referenced by MainWindow().

◆ slotRenderViewport [1/2]

void MainWindow::slotRenderViewport ( )
slot

◆ slotRenderViewport [2/2]

void MainWindow::slotRenderViewport ( size_t  viewportId)
slot

◆ suspendThreads()

◆ threadProgress()

void MainWindow::threadProgress ( bool  finished)
overridevirtual

◆ update() [1/2]

void MainWindow::update ( const QSet< Editor::Type > &  target,
Page::State  viewPortsCacheState = Page::STATE_READ,
bool  resetCamera = false 
)

◆ update() [2/2]

◆ updateData()

◆ updateEverything()

void MainWindow::updateEverything ( )

◆ updateFilter()

◆ updateModifiers()

void MainWindow::updateModifiers ( )

◆ updateRender()

void MainWindow::updateRender ( )

Member Data Documentation

◆ actionExit_

QAction* MainWindow::actionExit_
private

Referenced by MainWindow().

◆ APPLICATION_NAME

const char * MainWindow::APPLICATION_NAME = "3D Forest"
static

Referenced by setWindowTitle().

◆ APPLICATION_VERSION

const char * MainWindow::APPLICATION_VERSION = "1.0"
static

Referenced by HelpPlugin::slotAbout().

◆ editor_

◆ explorerPlugin_

ExplorerPlugin* MainWindow::explorerPlugin_
private

Referenced by MainWindow(), and showEvent().

◆ exportFilePlugin_

ExportFilePlugin* MainWindow::exportFilePlugin_
private

Referenced by MainWindow().

◆ helpPlugin_

HelpPlugin* MainWindow::helpPlugin_
private

Referenced by MainWindow().

◆ ICON_SIZE

◆ ICON_SIZE_TEXT

const int MainWindow::ICON_SIZE_TEXT = 16
static

◆ importFilePlugin_

ImportFilePlugin* MainWindow::importFilePlugin_
private

Referenced by MainWindow().

◆ menu_

QHash<QString, QMenu *> MainWindow::menu_
private

◆ messageLogPlugin_

MessageLogPlugin* MainWindow::messageLogPlugin_
private

Referenced by MainWindow().

◆ plugins_

std::vector<PluginInterface *> MainWindow::plugins_
private

Referenced by loadPlugin().

◆ projectFilePlugin_

ProjectFilePlugin* MainWindow::projectFilePlugin_
private

Referenced by closeEvent(), and MainWindow().

◆ settingsPlugin_

SettingsPlugin* MainWindow::settingsPlugin_
private

Referenced by MainWindow(), and showEvent().

◆ threadRender_

RenderThread MainWindow::threadRender_
private

◆ toolBar_

QHash<QString, QToolBar *> MainWindow::toolBar_
private

Referenced by createAction(), and hideToolBar().

◆ viewerPlugin_


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