Vuo  2.0.3
VuoInputEditorSession.hh
Go to the documentation of this file.
1 
10 #pragma once
11 
13 class VuoEditorWindow;
16 class VuoRendererPort;
17 
18 #include "VuoHeap.h"
19 
24 class VuoInputEditorSession : public QObject
25 {
26  Q_OBJECT
27 
28 public:
29  VuoInputEditorSession(VuoInputEditorManager *inputEditorManager, VuoEditorComposition *composition, VuoPublishedPortSidebar *sidebar, QMainWindow *window);
30  map<VuoRendererPort *, pair<string, string> > execute(VuoRendererPort *port, bool forwardTabTraversal);
31 
32 protected:
33  bool eventFilter(QObject *object, QEvent *event) VuoWarnUnusedResult;
34 
35 private slots:
36  void updateValueForEditedPort(json_object *newValue);
37 
38 private:
39  void showInputEditor(VuoRendererPort *port, bool forwardTabTraversal);
40  void showPreviousInputEditor();
41  void showNextInputEditor();
42 
43  VuoInputEditorManager *inputEditorManager;
44  VuoEditorComposition *composition;
45  VuoPublishedPortSidebar *sidebar;
46  QMainWindow *window;
47  VuoRendererPort *portWithOpenInputEditor;
48  QPoint firstPortLeftCenterGlobal;
49  map<VuoRendererPort *, string> startValueForPort;
50  map<VuoRendererPort *, string> finalValueForPort;
51 };