VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
unifiedControlToolbar.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
14 #include <vrvCore/DtUniqueID.h>
15 
16 #include <QtWidgets/QWidget>
17 
18 #include <boost/signals2.hpp>
19 
20 namespace makVrv
21 {
22  class DtDe;
23 }
24 
25 class QAction;
26 class QMenu;
27 
28 namespace makVrf
29 {
30  class DtToolButtonWrapperWidget;
31  class DtVrfTaskSetToolbarItem;
32  class DtVrfTaskSetMenu;
33 
34  namespace makVrfGuiObjectInformationQt
35  {
37  {
38  Q_OBJECT
39  public:
40 
42  DtUnifiedControlToolbar(makVrv::DtDe& de, QWidget* parent, Qt::WindowFlags f = Qt::SubWindow);
43 
45  virtual ~DtUnifiedControlToolbar() override;
46 
47  virtual void init(const DtUnifiedControlToolbarConfiguration&);
48  virtual void setSelectedObject(makVrv::DtUniqueID);
49 
51  virtual bool hasItems() const;
52 
53  protected:
54  virtual void processMenu(QMenu*);
55  virtual void addAction(QAction*);
56  virtual void clearActions();
57 
58  protected slots:
59  virtual void onItemTriggered();
60 
61  signals:
62  void buttonsLaidOut();
63 
64  public:
66 
67  protected:
70 
71  struct Action
72  {
73  DtVrfTaskSetToolbarItem* taskSetToolbarItem = nullptr;
74  QAction* action = nullptr;
75  };
76 
77  std::vector<Action> myActions;
78  std::map<std::string, int> myToolbarItems;
79 
80  boost::signals2::connection myWaitingForTaskConnection;
81 
82  DtVrfTaskSetMenu* myTaskMenu = nullptr;
83  DtVrfTaskSetMenu* mySetMenu = nullptr;
84  };
85  }
86 }
std::map< std::string, int > myToolbarItems
Definition: unifiedControlToolbar.h:78
DT_DLL_VRFGUIOBJECTINFORMATIONQT void init(makVrv::DtDe &de)
Definition: vrfTaskSetMenu.h:50
Contains DtUnifiedControlToolbarConfiguration that will contain the configuration for the unified con...
Definition: unifiedControlToolbarConfiguration.h:18
This class will try and space out items such that they will wrap to multiple rows if buttons (or text...
Definition: toolButtonWrapperWidget.h:32
DtToolButtonWrapperWidget * myUnifiedTaskSetItems
Definition: unifiedControlToolbar.h:65
DtUnifiedControlToolbarConfiguration myUnifiedControlToolbarConfiguration
Definition: unifiedControlToolbar.h:69
This class will encapsulate a toolbar item for a task/set menu item. Since those menu items now hide ...
Definition: vrfTaskSetToolbarItem.h:27
makVrv::DtDe & myDe
Definition: unifiedControlToolbar.h:68
boost::signals2::connection myWaitingForTaskConnection
Definition: unifiedControlToolbar.h:80
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
#define DT_DLL_VRFGUIOBJECTINFORMATIONQT
Contains DLL export macros.
Definition: vrfGuiObjectInformationQt.h:24
Contains makVrv::DtUniqueID type.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
std::vector< Action > myActions
Definition: unifiedControlToolbar.h:77

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)