SkillDetailsGroupBox.h
Go to the documentation of this file.
1 #ifndef SKILLDETAILGROUPBOX_H
2 #define SKILLDETAILGROUPBOX_H
3 
4 #include <QGroupBox>
5 #include <QPushButton>
6 #include <QSplitter>
7 #include <QVBoxLayout>
8 
11 
12 #include "../aron_tree_widget/widgets/SkillDescriptionWidget.h"
13 #include "../memory/MemoryCommunicatorBase.h"
14 #include "ProfileMenuWidget.h"
15 #include "SkillDetailsTreeWidget.h"
16 
17 namespace armarx::skills::gui
18 {
19  class SkillDetailGroupBox : public QGroupBox, public MemoryCommunicatorBase
20  {
21  Q_OBJECT
22  public:
23  static const constexpr char* EXECUTE_SKILL_BUTTON_TEXT = " Request Execution";
24  static const constexpr char* GROUP_BOX_TITLE = "Skill Description";
25 
26  SkillDetailGroupBox(std::shared_ptr<SkillManagerWrapper> _memory,
27  QWidget* parent = nullptr) :
28  QGroupBox(parent), MemoryCommunicatorBase(_memory)
29  {
30  setupUi();
31  }
32 
33  signals:
34  void disconnectGui();
35 
36  public slots:
37  /**
38  * @brief Notify subwidgets of an updated skill selection.
39  * @param skillId
40  */
41  void updateSkillDetails(skills::SkillID& skillId);
42 
43  void connectGui(std::string observerName);
44 
45  private slots:
46  void handleExecutionRequest();
47  void resizeEvent(QResizeEvent* event) override;
48 
49  private:
50  void setupUi();
51  void connectSignals();
52 
53  QVBoxLayout* layout = nullptr;
54  QSplitter* splitter = nullptr;
55  QPushButton* executeSkillButton = nullptr;
56  SkillDetailsTreeWidget* skillDetailsTreeWidget = nullptr;
57  SkillDescriptionWidget* skillDescriptionWidget = nullptr;
58 
59  ProfileMenuWidget* profileMenuWidget = nullptr;
60  };
61 } // namespace armarx::skills::gui
62 
63 #endif // SKILLDETAILGROUPBOX_H
SkillDetailsTreeWidget.h
armarx::skills::gui::SkillDetailGroupBox::connectGui
void connectGui(std::string observerName)
Definition: SkillDetailsGroupBox.cpp:68
armarx::skills::gui::SkillDetailGroupBox
Definition: SkillDetailsGroupBox.h:19
armarx::skills::gui::SkillDescriptionWidget
Definition: SkillDescriptionWidget.h:13
SkillDescriptionWidget.h
armarx::skills::gui::SkillDetailGroupBox::disconnectGui
void disconnectGui()
armarx::skills::gui::SkillDetailGroupBox::GROUP_BOX_TITLE
static const constexpr char * GROUP_BOX_TITLE
Definition: SkillDetailsGroupBox.h:24
AronTreeWidgetController.h
armarx::skills::gui
Definition: PeriodicUpdateWidget.cpp:11
ProfileMenuWidget.h
armarx::skills::gui::SkillDetailsTreeWidget
Definition: SkillDetailsTreeWidget.h:12
armarx::skills::gui::SkillDetailGroupBox::updateSkillDetails
void updateSkillDetails(skills::SkillID &skillId)
Notify subwidgets of an updated skill selection.
Definition: SkillDetailsGroupBox.cpp:6
armarx::skills::gui::SkillDetailGroupBox::SkillDetailGroupBox
SkillDetailGroupBox(std::shared_ptr< SkillManagerWrapper > _memory, QWidget *parent=nullptr)
Definition: SkillDetailsGroupBox.h:26
armarx::skills::SkillID
Definition: SkillID.h:17
armarx::skills::gui::ProfileMenuWidget
Definition: ProfileMenuWidget.h:12
armarx::skills::gui::MemoryCommunicatorBase
Definition: MemoryCommunicatorBase.h:14
armarx::skills::gui::SkillDetailGroupBox::EXECUTE_SKILL_BUTTON_TEXT
static const constexpr char * EXECUTE_SKILL_BUTTON_TEXT
Definition: SkillDetailsGroupBox.h:23