Todo List
Member scram::gui::diagram::DiagramScene::DiagramScene (model::Gate *event, model::Model *model, QObject *parent=nullptr)
Remove the implicit delete.
Class scram::gui::EventDialog
Generalize to all model element types.
Member scram::gui::EventDialog::EventDialog (mef::Model *model, QWidget *parent=nullptr)

Implement container change.

Enable fault-tree as a container for events.

Member scram::gui::EventDialog::setupData (const model::Gate &element)

Consider providing a template constructor instead.

Deal with type changes of the top gate.

Bogus signal order conflicts.

Deal with type changes of the top gate.

Bogus signal order conflicts.

Class scram::gui::MainWindow
Static build issues if the header is included.
Member scram::gui::MainWindow::extract (const EventDialog &dialog)
Add into the parent undo.
Member scram::gui::MainWindow::getFaultTree (mef::Gate *gate)
Duplicate code from EventDialog.
Class scram::gui::model::Element::SetId< T >
Generalize for non-Event types.
Class scram::gui::model::Model::AddEvent< T >
Generalize for all element types.
Class scram::gui::model::Model::AddFaultTree
Provide a proxy class for the fault tree.