Tome
A generic data editor for games supporting arbitrary input and output formats.
componentswindow.h
1 #ifndef COMPONENTSWINDOW_H
2 #define COMPONENTSWINDOW_H
3 
4 #include <QMainWindow>
5 
6 #include "../Model/component.h"
7 
8 class ComponentWindow;
9 
10 namespace Ui {
11  class ComponentsWindow;
12 }
13 
14 namespace Tome
15 {
16  class ComponentsController;
17  class FieldDefinitionsController;
18  class UndoController;
19 }
20 
24 class ComponentsWindow : public QMainWindow
25 {
26  Q_OBJECT
27 
28  public:
36  explicit ComponentsWindow(Tome::ComponentsController& componentsController,
37  Tome::FieldDefinitionsController& fieldDefinitionsController,
38  Tome::UndoController& undoController,
39  QWidget* parent = 0);
41 
42  private slots:
43  void on_actionNew_Component_triggered();
44  void on_actionDelete_Component_triggered();
45 
46  void onComponentAdded(const Tome::Component& component);
47  void onComponentRemoved(const Tome::Component& component);
48 
49  private:
50  Ui::ComponentsWindow *ui;
51 
52  Tome::ComponentsController& componentsController;
53  Tome::FieldDefinitionsController& fieldDefinitionsController;
54  Tome::UndoController& undoController;
55 
56  ComponentWindow* componentWindow;
57 };
58 
59 #endif // COMPONENTSWINDOW_H
Definition: commandlineoptions.h:6
Controller for adding, updating and removing field definitions.
Definition: fielddefinitionscontroller.h:15
Definition: mainwindow.h:25
Window for adding and removing components.
Definition: componentswindow.h:24
Window for adding a new component.
Definition: componentwindow.h:13
Controller for adding and removing components.
Definition: componentscontroller.h:15
Controller for performing undo-able commands.
Definition: undocontroller.h:13