Wrap code for better readability + Mod doc

This commit is contained in:
Simon De Backer
2020-08-02 15:14:16 +02:00
parent e938673872
commit 510aa74266
2 changed files with 308 additions and 109 deletions

View File

@@ -64,7 +64,8 @@ class GenericPanel : public QTreeWidget {
virtual int currentItemType();
virtual QETProject *projectForItem(QTreeWidgetItem *) const;
virtual Diagram *diagramForItem(QTreeWidgetItem *) const;
virtual TitleBlockTemplateLocation templateLocationForItem(QTreeWidgetItem *) const;
virtual TitleBlockTemplateLocation templateLocationForItem(
QTreeWidgetItem *) const;
// convenience methods to obtain what the selected item represents
virtual QETProject *selectedProject() const;
@@ -73,42 +74,89 @@ class GenericPanel : public QTreeWidget {
// project-related methods
public:
virtual QTreeWidgetItem *addProject(QETProject *, QTreeWidgetItem * = nullptr, PanelOptions = AddAllChild);
virtual QTreeWidgetItem *addProject(QETProject *,
QTreeWidgetItem * = nullptr,
PanelOptions = AddAllChild);
virtual QTreeWidgetItem *itemForProject(QETProject *);
protected:
virtual QTreeWidgetItem *getItemForProject(QETProject *, bool * = nullptr);
virtual QTreeWidgetItem *updateProjectItem(QTreeWidgetItem *, QETProject *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *fillProjectItem (QTreeWidgetItem *, QETProject *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *getItemForProject(QETProject *,
bool * = nullptr);
virtual QTreeWidgetItem *updateProjectItem(QTreeWidgetItem *,
QETProject *,
PanelOptions = AddAllChild,
bool = false);
virtual QTreeWidgetItem *fillProjectItem (QTreeWidgetItem *,
QETProject *,
PanelOptions = AddAllChild,
bool = false);
// diagram-related methods
public:
virtual QTreeWidgetItem *addDiagram(Diagram *, QTreeWidgetItem * = nullptr, PanelOptions = AddAllChild);
virtual QTreeWidgetItem *addDiagram(Diagram *,
QTreeWidgetItem * = nullptr,
PanelOptions = AddAllChild);
protected:
virtual QTreeWidgetItem *getItemForDiagram(Diagram *, bool * = nullptr);
virtual QTreeWidgetItem *updateDiagramItem(QTreeWidgetItem *, Diagram *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *fillDiagramItem (QTreeWidgetItem *, Diagram *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *updateDiagramItem(QTreeWidgetItem *,
Diagram *,
PanelOptions = AddAllChild,
bool = false);
virtual QTreeWidgetItem *fillDiagramItem (QTreeWidgetItem *,
Diagram *,
PanelOptions = AddAllChild,
bool = false);
// title block templates collections methods
public:
virtual QTreeWidgetItem *addTemplatesCollection(TitleBlockTemplatesCollection *, QTreeWidgetItem * = nullptr, PanelOptions = AddAllChild);
virtual QTreeWidgetItem *itemForTemplatesCollection(TitleBlockTemplatesCollection *);
virtual QTreeWidgetItem *addTemplatesCollection(
TitleBlockTemplatesCollection *,
QTreeWidgetItem * = nullptr,
PanelOptions = AddAllChild);
virtual QTreeWidgetItem *itemForTemplatesCollection(
TitleBlockTemplatesCollection *);
protected:
virtual QTreeWidgetItem *getItemForTemplatesCollection(TitleBlockTemplatesCollection *, bool * = nullptr);
virtual QTreeWidgetItem *updateTemplatesCollectionItem(QTreeWidgetItem *, TitleBlockTemplatesCollection *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *fillTemplatesCollectionItem (QTreeWidgetItem *, TitleBlockTemplatesCollection *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *getItemForTemplatesCollection(
TitleBlockTemplatesCollection *,
bool * = nullptr);
virtual QTreeWidgetItem *updateTemplatesCollectionItem(
QTreeWidgetItem *,
TitleBlockTemplatesCollection *,
PanelOptions = AddAllChild,
bool = false);
virtual QTreeWidgetItem *fillTemplatesCollectionItem(
QTreeWidgetItem *,
TitleBlockTemplatesCollection *,
PanelOptions = AddAllChild,
bool = false);
// title block templates methods
public:
virtual QTreeWidgetItem *addTemplate(const TitleBlockTemplateLocation &, QTreeWidgetItem * = nullptr, PanelOptions = AddAllChild);
virtual QTreeWidgetItem *addTemplate(const TitleBlockTemplateLocation &,
QTreeWidgetItem * = nullptr,
PanelOptions = AddAllChild);
protected:
virtual QTreeWidgetItem *getItemForTemplate(const TitleBlockTemplateLocation &, bool * = nullptr);
virtual QTreeWidgetItem *updateTemplateItem(QTreeWidgetItem *, const TitleBlockTemplateLocation &, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *fillTemplateItem (QTreeWidgetItem *, const TitleBlockTemplateLocation &, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *getItemForTemplate(
const TitleBlockTemplateLocation &,
bool * = nullptr);
virtual QTreeWidgetItem *updateTemplateItem(
QTreeWidgetItem *,
const TitleBlockTemplateLocation &,
PanelOptions = AddAllChild,
bool = false);
virtual QTreeWidgetItem *fillTemplateItem (
QTreeWidgetItem *,
const TitleBlockTemplateLocation &,
PanelOptions = AddAllChild,
bool = false);
// generic methods
protected:
virtual QTreeWidgetItem *updateItem(QTreeWidgetItem *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *fillItem (QTreeWidgetItem *, PanelOptions = AddAllChild, bool = false);
virtual QTreeWidgetItem *updateItem(QTreeWidgetItem *,
PanelOptions = AddAllChild,
bool = false);
virtual QTreeWidgetItem *fillItem(QTreeWidgetItem *,
PanelOptions = AddAllChild,
bool = false);
// slots used to receive change notifications from added objects
protected slots:
@@ -117,19 +165,28 @@ class GenericPanel : public QTreeWidget {
virtual void diagramRemoved(QETProject *, Diagram *);
virtual void projectDiagramsOrderChanged(QETProject *, int, int);
virtual void diagramTitleChanged(Diagram *, const QString &);
virtual void templatesCollectionChanged(TitleBlockTemplatesCollection*, const QString &);
virtual void diagramUsedTemplate(TitleBlockTemplatesCollection *, const QString &);
virtual void templatesCollectionChanged(TitleBlockTemplatesCollection*,
const QString &);
virtual void diagramUsedTemplate(TitleBlockTemplatesCollection *,
const QString &);
// various other methods
protected:
virtual QString defaultText(QET::ItemType);
virtual QIcon defaultIcon(QET::ItemType);
virtual QTreeWidgetItem *makeItem(QET::ItemType, QTreeWidgetItem * = nullptr, const QString & = QString(), const QIcon & = QIcon());
virtual QTreeWidgetItem *makeItem(QET::ItemType,
QTreeWidgetItem * = nullptr,
const QString & = QString(),
const QIcon & = QIcon());
virtual void deleteItem(QTreeWidgetItem *, bool = false);
virtual void markItemAsUnused(QTreeWidgetItem *);
virtual void reparent(QTreeWidgetItem *, QTreeWidgetItem *);
QList<QTreeWidgetItem *> childItems(QTreeWidgetItem *, QET::ItemType, bool = false) const;
template<typename T> void removeObsoleteItems(const QList<T> &, QTreeWidgetItem *, QET::ItemType, bool);
QList<QTreeWidgetItem *> childItems(QTreeWidgetItem *,
QET::ItemType, bool = false) const;
template<typename T> void removeObsoleteItems(const QList<T> &,
QTreeWidgetItem *,
QET::ItemType,
bool);
template<typename T> T valueForItem(QTreeWidgetItem *) const;
void unregisterItem(QTreeWidgetItem *);
@@ -143,9 +200,27 @@ class GenericPanel : public QTreeWidget {
void emitFirstActivated();
private:
bool first_activation_; ///< boolean used to track the first time this widget is activated/shown
QHash<QETProject *, QTreeWidgetItem *> projects_; ///< Allow quick retrieval of the item representing a given project
QHash<Diagram *, QTreeWidgetItem *> diagrams_; ///< Allow quick retrieval of the item representing a given diagram
QHash<TitleBlockTemplateLocation, QTreeWidgetItem *> tb_templates_; ///< Allow quick retrieval of the item representing a title block template
/**
@brief first_activation_
boolean used to track the first time this widget is
activated/shown
*/
bool first_activation_;
/**
@brief projects_
Allow quick retrieval of the item representing a given project
*/
QHash<QETProject *, QTreeWidgetItem *> projects_;
/**
@brief diagrams_
Allow quick retrieval of the item representing a given diagram
*/
QHash<Diagram *, QTreeWidgetItem *> diagrams_;
/**
@brief tb_templates_
Allow quick retrieval of the item
representing a title block template
*/
QHash<TitleBlockTemplateLocation, QTreeWidgetItem *> tb_templates_;
};
#endif