VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
dataEntryVariableWidgetManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
15 #include <vrvUtil/DtUnicode.h>
19 
20 #include <QtWidgets/QWidget>
21 
22 namespace makVrv
23 {
24  class DtDe;
25 }
26 
27 namespace makVrf
28 {
29  class DtTaskSetVariableWidgetInterface;
30  class DtTaskSetVariableWidgetCreatorInterface;
31 
34  {
35  public:
38 
40  static DtDataEntryVariableWidgetManager& instance(makVrv::DtDe& de);
41  static void registerInstance(makVrv::DtDe&, DtDataEntryVariableWidgetManager*);
42 
44  virtual void addTaskSetVariableCreator(const std::string& type, DtTaskSetVariableWidgetCreatorInterface*, const makVrv::DtUnicode&);
45 
46  virtual DtTaskSetVariableWidgetInterface* create(const std::string& type, QWidget* parent, const std::set<makVrv::DtUniqueID>& selection = std::set<makVrv::DtUniqueID>(),
47  const Qt::WindowFlags& flags = 0, const DtTaskSetVariableWidget::CreationFlags& cflags = DtTaskSetVariableWidget::NormalMode);
48 
49  virtual bool canBeUsedAsVariable(const std::string& type) const;
50 
51  virtual makVrv::DtUnicode screenName(const std::string& type) const;
52 
54  std::map<std::string, makVrv::DtUnicode> variables() const;
55 
57  virtual makVrv::DtUnicode codeVariableType(const std::string& type) const;
58 
60  virtual std::string typeNameFromClassName(const std::string&) const;
61 
62  typedef std::pair<DtTaskSetVariableWidgetCreatorInterface*, makVrv::DtUnicode> TaskSetVariableInformation;
63  typedef std::map<std::string, TaskSetVariableInformation> VariableCreators;
64 
65  const VariableCreators& variableCreators() { return myVariableCreators; };
66 
68  virtual void setWidgetCreationMode(DtTaskSetVariableWidget::CreationFlags);
69  virtual DtTaskSetVariableWidget::CreationFlags widgetCreationMode() const;
70 
71  protected:
73 
75 
76  std::map<std::string, std::string> myVariableWidgetCreatorsByClassName;
77 
79  };
80 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
std::map< std::string, std::string > myVariableWidgetCreatorsByClassName
Definition: dataEntryVariableWidgetManager.h:76
std::pair< DtTaskSetVariableWidgetCreatorInterface *, makVrv::DtUnicode > TaskSetVariableInformation
Definition: dataEntryVariableWidgetManager.h:62
CreationFlags
Definition: taskSetVariableWidget.h:119
makVrv::DtDe & myDe
Definition: dataEntryVariableWidgetManager.h:72
Definition: taskSetVariableWidget.h:121
VariableCreators myVariableCreators
Definition: dataEntryVariableWidgetManager.h:74
Contains makVrv::DtVirtualBaseClass class.
std::map< std::string, TaskSetVariableInformation > VariableCreators
Definition: dataEntryVariableWidgetManager.h:63
This class will define the interface needed for being a task set variable that can be used in task di...
Definition: taskSetVariableWidget.h:116
const VariableCreators & variableCreators()
Definition: dataEntryVariableWidgetManager.h:65
#define DT_DLL_VRFGUIDATAENTRYWIDGETS
Definition: vrfGuiDataEntryWidgets.h:22
Creator class to be used when creating instances of task/set variables.
Definition: taskSetVariableWidget.h:382
DtTaskSetVariableWidget::CreationFlags myWidgetCreationMode
Definition: dataEntryVariableWidgetManager.h:78
This class will create individual variable widgets.
Definition: dataEntryVariableWidgetManager.h:33
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:72

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)