OpenCOVER
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ModuleInteraction.h
Go to the documentation of this file.
1 /* This file is part of COVISE.
2 
3  You can use it under the terms of the GNU Lesser General Public License
4  version 2.1 or later, see lgpl-2.1.txt.
5 
6  * License: LGPL 2+ */
7 
8 #ifndef _MODULE_INTERACTION_H
9 #define _MODULE_INTERACTION_H
10 
12 
13 namespace opencover
14 {
15 class RenderObject;
16 }
17 
18 namespace opencover
19 {
20 class PLUGIN_UTILEXPORT ModuleInteraction : public ModuleFeedbackManager
21 {
22 public:
23  ModuleInteraction(const opencover::RenderObject *container, opencover::coInteractor *inter, const char *pluginName);
24  virtual ~ModuleInteraction();
25  virtual void update(const opencover::RenderObject *container, opencover::coInteractor *inter) override;
26  virtual void preFrame() override;
27  virtual void updatePickInteractors(bool) = 0;
28  virtual void updateDirectInteractors(bool) = 0;
29  virtual void setShowInteractorFromGui(bool state);
30  virtual void enableDirectInteractorFromGui(bool state);
31 
32  void triggerHide(bool state) override;
33 
34 protected:
37  ui::Button *showPickInteractorCheckbox_ = nullptr;
38  ui::Button *showDirectInteractorCheckbox_ = nullptr;
39 };
40 }
41 #endif
base class for data received from visualization systems (e.g. COVISE or Vistle)
Definition: RenderObject.h:146
abstract feedback class for interacting with parameters of visualization modules (e.g. COVISE or Vistle)
Definition: coInteractor.h:36
bool showDirectInteractor_
Definition: ModuleInteraction.h:36
bool showPickInteractor_
Definition: ModuleInteraction.h:35
Definition: ModuleFeedbackManager.h:43
Definition: ModuleInteraction.h:20