HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_RadialMenu.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_RadialMenu_h__
10 #define __HOM_RadialMenu_h__
11 
12 #include "HOM_RadialItem.h"
13 
14 class HOM_RadialSubmenu;
16 
17 SWIGOUT(%rename(RadialMenu) HOM_RadialMenu;)
18 
20 {
21 public:
23  { HOM_CONSTRUCT_OBJECT(this) }
25  { HOM_CONSTRUCT_OBJECT(this) }
26  virtual ~HOM_RadialMenu()
27  { HOM_DESTRUCT_OBJECT(this) }
28 
29  virtual std::string __repr__() = 0;
30 
31  virtual void destroy() = 0;
32 
33  virtual std::string name() = 0;
34 
35  virtual const char *categories() = 0;
36 
37  virtual void setCategories(const std::string &s) = 0;
38 
39  virtual const char *sourceFile() = 0;
40 
41  virtual void save(const std::string &s) = 0;
42 
43  SWIGOUT(%newobject root;)
44  virtual HOM_RadialItem *root() = 0;
45 
46  // Deprecated methods from when RadialMenu was a subclass
47  // of RadialSubmenu. Use root() to get the submenu.
48 
49  // This method is deprecated. Use root()->label() instead.
50  virtual const char *label() = 0;
51 
52  // This method is deprecated. Use root()->setLabel() instead.
53  virtual void setLabel(const char *s) = 0;
54 
55  // This method is deprecated. Use root()->shortcut() instead.
56  virtual const char *shortcut() = 0;
57 
58  // This method is deprecated. Use root()->setShortcut() instead.
59  virtual void setShortcut(const char *s) = 0;
60 
61  // This method is deprecated. Use root()->item() instead (submenu only).
62  SWIGOUT(%newobject item;)
63  virtual HOM_RadialItem *item(HOM_EnumValue &location) = 0;
64 
65  // This method is deprecated. Use root()->items() instead (submenu only).
66  virtual std::map<HOM_EnumValue *, HOM_ElemPtr<HOM_RadialItem> > items() = 0;
67 
68  // This method is deprecated. Use root()->createSubmenu() instead (submenu only).
69  SWIGOUT(%newobject createSubmenu;)
70  SWIGOUT(%kwargs createSubmenu;)
71  virtual HOM_RadialSubmenu *createSubmenu(
73  const char *label=nullptr,
74  const char *shortcut=nullptr) = 0;
75 
76  // This method is deprecated. Use root()->createScriptItem() instead (submenu only).
77  SWIGOUT(%newobject createScriptItem;)
78  SWIGOUT(%kwargs createScriptItem;)
79  virtual HOM_RadialScriptItem *createScriptItem(
81  const char *label=nullptr,
82  const char *icon=nullptr,
83  const char *check=nullptr,
84  const char *script=nullptr,
85  const char *shortcut=nullptr) = 0;
86 };
87 
88 #endif
GLdouble s
Definition: glew.h:1390
virtual const char * icon()=0
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1210
GLuint const GLchar * name
Definition: glew.h:1814
virtual ~HOM_RadialMenu()
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
HOM_RadialMenu(const HOM_RadialMenu &)
GLsizei GLenum * categories
Definition: glew.h:2581
#define HOM_API
Definition: HOM_API.h:13
virtual const char * check()=0
virtual const char * shortcut()=0
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1209
GLuint GLsizei GLsizei GLchar * label
Definition: glew.h:8986
GLsizei const GLchar *const * string
Definition: glew.h:1844
GLint location
Definition: glew.h:1835
virtual const char * script()=0
virtual void setLabel(const char *s)=0
virtual void destroy()=0
virtual void setShortcut(const char *s)=0