HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros 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;)
48  SWIGOUT(%kwargs paneTabOfType;)
49  virtual HOM_PaneTab *paneTabOfType(HOM_EnumValue &type, int index=0) = 0;
50 
51  SWIGOUT(%newobject findPaneTab;)
52  virtual HOM_PaneTab *findPaneTab(const char *name) = 0;
53 
54  SWIGOUT(%newobject createFloatingPaneTab;)
55  SWIGOUT(%kwargs createFloatingPaneTab;)
56  virtual HOM_PaneTab *createFloatingPaneTab(
57  HOM_EnumValue &pane_tab_type,
58  const std::vector<int> &position = std::vector<int>(),
59  const std::vector<int> &size = std::vector<int>(),
60  const char *python_panel_interface=nullptr) = 0;
61 
62  // This method is deprecated:
63  SWIGOUT(%newobject createFloatingPane;)
65  HOM_EnumValue &pane_tab_type,
66  const std::vector<int> &position = std::vector<int>(),
67  const std::vector<int> &size = std::vector<int>())
68  { return createFloatingPaneTab(pane_tab_type, position, size); }
69 
70  virtual std::vector<HOM_ElemPtr<HOM_FloatingPanel> > floatingPanels() = 0;
71 
72  SWIGOUT(%newobject createFloatingPanel;)
73  SWIGOUT(%kwargs createFloatingPanel;)
74  virtual HOM_FloatingPanel *createFloatingPanel(HOM_EnumValue &pane_tab_type,
75  const std::vector<int> &position = std::vector<int>(),
76  const std::vector<int> &size = std::vector<int>(),
77  const char *python_panel_interface=nullptr) = 0;
78 
79  SWIGOUT(%newobject paneUnderCursor;)
80  virtual HOM_Pane *paneUnderCursor() = 0;
81  SWIGOUT(%newobject paneTabUnderCursor;)
82  virtual HOM_PaneTab *paneTabUnderCursor() = 0;
83 
84 
85  virtual std::string name() = 0;
86 
87  SWIGOUT(%newobject shelfDock;)
88  virtual HOM_ShelfDock *shelfDock() = 0;
89 
90  SWIGOUT(%newobject displaySideHelp;)
91  virtual HOM_PaneTab *displaySideHelp(bool show = true) = 0;
92  virtual void displayHelp(HOM_NodeType &node_type) = 0;
93  virtual void displayHelpPath(const char *help_path) = 0;
94  virtual void displayHelpPyPanel(const char *interface_name) = 0;
95 
96  virtual void setAsCurrent() = 0;
97 };
98 
99 #endif
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:981
GLsizei const GLchar *const * string
Definition: glcorearb.h:813
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
GLsizeiptr size
Definition: glcorearb.h:663
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:980
virtual HOM_PaneTab * paneTabOfType(HOM_EnumValue &type, int index=0)=0
GLuint const GLchar * name
Definition: glcorearb.h:785
virtual HOM_Vector2 * position()=0
virtual HOM_PaneTab * findPaneTab(const char *name)=0
virtual std::string __repr__()=0
GLuint index
Definition: glcorearb.h:785
virtual std::vector< HOM_ElemPtr< HOM_Pane > > panes()=0
GLint GLint GLsizei GLint GLenum GLenum type
Definition: glcorearb.h:107
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:64
virtual std::vector< HOM_ElemPtr< HOM_PaneTab > > paneTabs()=0