itom
Loading...
Searching...
No Matches
ito::HelpTreeDockWidget Class Reference
Inheritance diagram for ito::HelpTreeDockWidget:

Public Types

enum  HelpItemType {
  typeFilter = 2 , typeWidget = 3 , typeFPlugin = 4 , typeWPlugin = 5 ,
  typeCategory = 6 , typeDataIO = 7 , typeActuator = 8
}
 
enum  IconType {
  iconFilter = 100 , iconPluginAlgo = 101 , iconPluginFilter = 102 , iconWidget = 103 ,
  iconPluginDataIO = 104 , iconPluginGrabber = 105 , iconPluginAdda = 106 , iconPluginRawIO = 107 ,
  iconPluginActuator = 108
}
 
enum  State { stateIdle = 0x00 , stateVisible = 0x01 , stateContentLoaded = 0x02 }
 

Public Slots

void navigateBackwards ()
 
void navigateForwards ()
 
void expandTree ()
 
void collapseTree ()
 
void reloadHelpResources ()
 Reload different help resources and clear search-edit and start the new thread.
 
void liveFilter (const QString &filterText)
 slot invoked by toolbar
 
void propertiesChanged ()
 (Re)load the help resources if some properties have changed
 
void showPluginInfo (const QString &name, HelpItemType type, const QModelIndex &modelIndex, bool fromLink)
 slot invoked by different widgets to display a help page from extern
 
ito::RetVal showFilterWidgetPluginHelp (const QString &filtername, HelpItemType type)
 Get the DocString from a Filter and parse is to html.
 

Public Member Functions

 HelpTreeDockWidget (QWidget *parent, ito::AbstractDockWidget *dock=0, Qt::WindowFlags flags=Qt::WindowFlags())
 
QColor backgroundColorHeading () const
 
void setBackgroundColorHeading (const QColor &color)
 
QColor textColorHeading () const
 
void setTextColorHeading (const QColor &color)
 
QColor backgroundColorSection () const
 
void setBackgroundColorSection (const QColor &color)
 
QColor textColorSection () const
 
void setTextColorSection (const QColor &color)
 
QColor linkColor () const
 
void setLinkColor (const QColor &color)
 
QColor backgroundParamName () const
 
void setBackgroundParamName (const QColor &color)
 

Protected Member Functions

void showEvent (QShowEvent *event)
 
void timerEvent (QTimerEvent *event)
 

Properties

QColor backgroundColorHeading
 
QColor textColorHeading
 
QColor linkColor
 
QColor backgroundParamName
 
QColor textColorSection
 
QColor backgroundColorSection
 

Private Slots

void on_splitter_splitterMoved (int pos, int index)
 
void on_helpTreeContent_anchorClicked (const QUrl &link)
 
void loadHelpResourcesFinished (int index)
 This slot is called when the loading thread is finished.
 
void on_treeView_expanded (const QModelIndex &index)
 
void on_treeView_collapsed (const QModelIndex &index)
 
void selectedItemChanged (const QModelIndex &current, const QModelIndex &previous)
 

Private Member Functions

void storeSettings ()
 Save Gui positions to Main-ini-File.
 
void restoreSettings ()
 Load Gui positions to Main-ini-File.
 
QStringList separateLink (const QUrl &link)
 Returns a list containing the protocol[0] and the real link[1].
 
ito::RetVal highlightContent (const QString &prefix, const QString &name, const QString &param, const QString &shortDesc, const QString &helpText, const QString &error, QTextDocument *document, const QMap< QString, QImage > &images)
 
QModelIndex findIndexByPath (const int type, QStringList path, const QStandardItem *current)
 finds a model index related to MainModel (not FilterModel)belonging to an Itemname
 
QString parseFilterWidgetContent (const QString &input)
 Reformats all help strings that come from the widgets and plugins.
 
ito::RetVal parseParamVector (const QString &sectionname, const QVector< ito::Param > &paramVector, QString &content)
 Creates the Parameter- and Return- sections in html-Code.
 
QString parseParam (const QString &tmpl, const ito::Param &param)
 Parses a single Parameter to html code (called by parseParamVector)
 
void loadAndProcessCssStyleSheet ()
 

Static Private Member Functions

static void createFilterWidgetNode (int fOrW, QStandardItemModel *model, const QMap< int, QIcon > *iconGallery)
 Get The Filters and put them into a node of the Tree.
 
static ito::RetVal loadHelpResources (QStandardItemModel *mainModel, const QMap< int, QIcon > *iconGallery)
 Load help resources from various plugins in a different thread.
 

Private Attributes

Ui::HelpTreeDockWidget ui
 
QStandardItemModel * m_pMainModel
 
LeafFilterProxyModelm_pMainFilterModel
 
ito::AbstractDockWidgetm_pParent
 
QList< QModelIndex > m_history
 
QMovie * m_previewMovie
 
QMap< int, QIcon > m_iconGallery
 
int m_historyIndex
 
int m_autoCollTime
 
double m_treeWidthVisible
 
double m_treeWidthInvisible
 
bool m_treeVisible
 
bool m_plaintext
 
bool m_autoCollTree
 
bool m_internalCall
 
bool m_doingExpandAll
 
States m_state
 
QString m_filterTextPending
 
int m_filterTextPendingTimer
 
QColor m_backgroundColorHeading
 
QColor m_textColorHeading
 
QColor m_linkColor
 
QColor m_backgroundParamName
 
QColor m_textColorSection
 
QColor m_backgroundColorSection
 
QFutureWatcher< ito::RetValm_loaderWatcher
 
QMutex m_dbLoaderMutex
 

Static Private Attributes

static const int rolePath = Qt::UserRole + 1
 
static const int roleType = Qt::UserRole + 2
 
static const int roleFilename = Qt::UserRole + 3
 

Member Function Documentation

◆ createFilterWidgetNode()

void ito::HelpTreeDockWidget::createFilterWidgetNode ( int fOrW,
QStandardItemModel * model,
const QMap< int, QIcon > * iconGallery )
staticprivate

Get The Filters and put them into a node of the Tree.

Parameters
fOrW
model
iconGallery

◆ findIndexByPath()

QModelIndex ito::HelpTreeDockWidget::findIndexByPath ( const int type,
QStringList path,
const QStandardItem * current )
private

finds a model index related to MainModel (not FilterModel)belonging to an Itemname

Parameters
typeof the item (for more information see type enumeration in header file)
pathpath to the item split into a list
currentitem whose children are searched
Returns
QModelIndex

◆ liveFilter

void ito::HelpTreeDockWidget::liveFilter ( const QString & filterText)
slot

slot invoked by toolbar

This is the Slot is called by the toolbar when the user enters a filter into the search edit.

Parameters
filterTextthe text that the model is filtered with.

◆ loadHelpResources()

ito::RetVal ito::HelpTreeDockWidget::loadHelpResources ( QStandardItemModel * mainModel,
const QMap< int, QIcon > * iconGallery )
staticprivate

Load help resources from various plugins in a different thread.

This function parses the information pages for both algorithm and hardware plugins.

Parameters
mainModelpointer to the mainModel
iconGallerythe gallery is passed to createFilterWidgetNode
See also
reloadHelpResources, loadHelpResources, createFilterWidgetNode

◆ loadHelpResourcesFinished

void ito::HelpTreeDockWidget::loadHelpResourcesFinished ( int index)
privateslot

This slot is called when the loading thread is finished.

When this slot is called, the database is loaded and the main model created

See also
reloadHelpResources, loadHelpResources

◆ parseFilterWidgetContent()

QString ito::HelpTreeDockWidget::parseFilterWidgetContent ( const QString & input)
private

Reformats all help strings that come from the widgets and plugins.

All newLine characters are replaced by the html tag

Parameters
inputThe text that is supposed to be reformatted
Returns
QString contains the reformatted text

◆ parseParam()

QString ito::HelpTreeDockWidget::parseParam ( const QString & tmpl,
const ito::Param & param )
private

Parses a single Parameter to html code (called by parseParamVector)

Parameters
tmpl
param
Returns
QString

◆ parseParamVector()

ito::RetVal ito::HelpTreeDockWidget::parseParamVector ( const QString & sectionname,
const QVector< ito::Param > & paramVector,
QString & content )
private

Creates the Parameter- and Return- sections in html-Code.

Parameters
sectionname
paramVector
content
Returns
RetVal

◆ reloadHelpResources

void ito::HelpTreeDockWidget::reloadHelpResources ( )
slot

Reload different help resources and clear search-edit and start the new thread.

This function starts a new thread that loads the help resources.

See also
loadHelpResourcesFinished

< will be unlocked again if QtConcurrent run is finished.

◆ separateLink()

QStringList ito::HelpTreeDockWidget::separateLink ( const QUrl & link)
private

Returns a list containing the protocol[0] and the real link[1].

This functions looks for different protocols in the links that can be clicked inside the textBrowser

Parameters
linklink link that is analysed
Returns
returns a list of all parts of the link

◆ showFilterWidgetPluginHelp

ito::RetVal ito::HelpTreeDockWidget::showFilterWidgetPluginHelp ( const QString & filterpath,
HelpItemType type )
slot

Get the DocString from a Filter and parse is to html.

This function puts all information of a Widget or Plugin together and builds the html help text.

Parameters
filterpathpath with all parents
typethe enumeration itemType is defined in the header file helpTreeDockWidget.h
Returns
ito::RetVal

◆ showPluginInfo

void ito::HelpTreeDockWidget::showPluginInfo ( const QString & name,
HelpItemType type,
const QModelIndex & modelIndex,
bool fromLink )
slot

slot invoked by different widgets to display a help page from extern

This is the Slot that can be externally called by other widgets to display filter or widget help ... i.a. AIManagerWidget

Parameters
namename of the function that is supposed to be displayed
typeit decides whether the help is stored in a database (1) or calls showFilterWidgetPluginHelp(...) (2-8)
modelIndexthat was clicked. If it's empty, it's a call from a link or from extern
fromLinkif true, a link called that slot

Member Data Documentation

◆ m_autoCollTime

int ito::HelpTreeDockWidget::m_autoCollTime
private

after this time the tree automatically becomes smaller

◆ m_doingExpandAll

bool ito::HelpTreeDockWidget::m_doingExpandAll
private

if expand all is executed from somewhere, the slots on_treeView_expanded or on_treeView_collapsed should not be called to avoid crazy never-ending loops in Qt5, debug.

◆ m_history

QList<QModelIndex> ito::HelpTreeDockWidget::m_history
private

List to store the addresses of the last visited pages

◆ m_internalCall

bool ito::HelpTreeDockWidget::m_internalCall
private

If a page is called by the history buttons, this bool prevents from that this page is stored in the historylist again

◆ m_plaintext

bool ito::HelpTreeDockWidget::m_plaintext
private

true: html code is displayed, false: normal help with style is displayed

◆ m_pMainFilterModel

LeafFilterProxyModel* ito::HelpTreeDockWidget::m_pMainFilterModel
private

Filtered Tree Model (between the model and the tree

◆ m_pMainModel

QStandardItemModel* ito::HelpTreeDockWidget::m_pMainModel
private

Model to store the tree with all database entries

◆ m_pParent

ito::AbstractDockWidget* ito::HelpTreeDockWidget::m_pParent
private

pointer to helpDockWidget with Toolbar

◆ m_previewMovie

QMovie* ito::HelpTreeDockWidget::m_previewMovie
private

turning circle to show "wait" status

◆ m_state

States ito::HelpTreeDockWidget::m_state
private

stateIdle if the widget is not visible yet and no content has been loaded, stateVisible if it became visible for the first time, stateContentLoaded if all contents have been loaded.

◆ m_treeWidthInvisible

double ito::HelpTreeDockWidget::m_treeWidthInvisible
private

width of tree while small (in percent of the total width)

◆ m_treeWidthVisible

double ito::HelpTreeDockWidget::m_treeWidthVisible
private

width of tree while visible (in percent of the total width)


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