HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_Desktop.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * COMMENTS:
7  */
8 
9 #ifndef __HOM_Desktop_h__
10 #define __HOM_Desktop_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_Defines.h"
14 #include "HOM_Errors.h"
15 #include "HOM_Module.h"
16 #include "HOM_EnumValue.h"
17 #include <string>
18 #include <vector>
19 
20 class HOM_ShelfDock;
21 class HOM_Pane;
22 class HOM_PaneTab;
23 class HOM_FloatingPanel;
24 
25 SWIGOUT(%rename(Desktop) HOM_Desktop;)
26 
28 {
29 public:
31  { HOM_CONSTRUCT_OBJECT(this) }
33  { HOM_CONSTRUCT_OBJECT(this) }
34  virtual ~HOM_Desktop()
35  { HOM_DESTRUCT_OBJECT(this) }
36 
37  virtual std::string __repr__() = 0;
38 
39  virtual std::vector<HOM_ElemPtr<HOM_Pane> > panes() = 0;
40 
41  virtual std::vector<HOM_ElemPtr<HOM_PaneTab> > paneTabs() = 0;
42 
43  virtual std::vector<HOM_ElemPtr<HOM_PaneTab> > currentPaneTabs() = 0;
44 
45  virtual std::vector<HOM_ElemPtr<HOM_PaneTab> > floatingPaneTabs() = 0;
46 
47  SWIGOUT(%newobject paneTabOfType;)
49  virtual HOM_PaneTab *paneTabOfType(HOM_EnumValue &type, int index=0) = 0;
50 
51  SWIGOUT(%newobject findPane;)
52  virtual HOM_Pane *findPane(int pane_id) = 0;
53 
54  SWIGOUT(%newobject findPaneTab;)
55  virtual HOM_PaneTab *findPaneTab(const char *name) = 0;
56 
57  SWIGOUT(%newobject createFloatingPaneTab;)
58  SWIGOUT(%kwargs createFloatingPaneTab;)
59  virtual HOM_PaneTab *createFloatingPaneTab(
60  HOM_EnumValue &pane_tab_type,
61  const std::vector<int> &position = std::vector<int>(),
62  const std::vector<int> &size = std::vector<int>(),
63  const char *python_panel_interface=nullptr,
64  bool immediate=false) = 0;
65 
66  // This method is deprecated:
67  SWIGOUT(%newobject createFloatingPane;)
69  HOM_EnumValue &pane_tab_type,
70  const std::vector<int> &position = std::vector<int>(),
71  const std::vector<int> &size = std::vector<int>())
72  { return createFloatingPaneTab(pane_tab_type, position, size); }
73 
74  virtual std::vector<HOM_ElemPtr<HOM_FloatingPanel> > floatingPanels() = 0;
75 
76  SWIGOUT(%newobject createFloatingPanel;)
77  SWIGOUT(%kwargs createFloatingPanel;)
78  virtual HOM_FloatingPanel *createFloatingPanel(HOM_EnumValue &pane_tab_type,
79  const std::vector<int> &position = std::vector<int>(),
80  const std::vector<int> &size = std::vector<int>(),
81  const char *python_panel_interface=nullptr,
82  bool immediate=false) = 0;
83 
84  SWIGOUT(%newobject paneUnderCursor;)
85  virtual HOM_Pane *paneUnderCursor() = 0;
86  SWIGOUT(%newobject paneTabUnderCursor;)
87  virtual HOM_PaneTab *paneTabUnderCursor() = 0;
88 
89 
90  virtual std::string name() = 0;
91 
92  SWIGOUT(%newobject shelfDock;)
93  virtual HOM_ShelfDock *shelfDock() = 0;
94 
95  SWIGOUT(%newobject displaySideHelp;)
96  virtual HOM_PaneTab *displaySideHelp(bool show = true) = 0;
97  virtual void displayHelp(HOM_NodeType &node_type) = 0;
98  virtual void displayHelpPath(const char *help_path) = 0;
99  virtual void displayHelpPyPanel(const char *interface_name) = 0;
100 
101  virtual void setAsCurrent() = 0;
102 };
103 
104 #endif
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1210
GLsizeiptr size
Definition: glew.h:1681
GLuint const GLchar * name
Definition: glew.h:1814
GLuint index
Definition: glew.h:1814
OIIO_API bool rename(string_view from, string_view to, std::string &err)
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:349
virtual ~HOM_Desktop()
Definition: HOM_Desktop.h:34
#define HOM_API
Definition: HOM_API.h:13
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1209
virtual HOM_PaneTab * paneTabOfType(HOM_EnumValue &type, int index=0)=0
GLuint GLuint GLsizei GLenum type
Definition: glew.h:1253
virtual HOM_Vector2 * position()=0
virtual HOM_PaneTab * findPaneTab(const char *name)=0
GLsizei const GLchar *const * string
Definition: glew.h:1844
virtual std::vector< HOM_ElemPtr< HOM_Pane > > panes()=0
HOM_Desktop(const HOM_Desktop &)
Definition: HOM_Desktop.h:32
HOM_PaneTab * createFloatingPane(HOM_EnumValue &pane_tab_type, const std::vector< int > &position=std::vector< int >(), const std::vector< int > &size=std::vector< int >())
Definition: HOM_Desktop.h:68
virtual std::vector< HOM_ElemPtr< HOM_PaneTab > > paneTabs()=0