9 #ifndef __HOM_NetworkEditor_h__
10 #define __HOM_NetworkEditor_h__
53 virtual bool isShowingConnectors() = 0;
54 virtual bool isUnderCursor() = 0;
55 virtual bool isPosInside(
57 bool ignore_floating_windows=
true) = 0;
58 virtual void setCursorPosition(
const HOM_Vector2 &pos) = 0;
59 virtual HOM_Vector2 cursorPosition(
bool confine_to_view =
true) = 0;
62 SWIGOUT(%kwargs setVisibleBounds;)
64 float transition_time = 0.0,
65 float max_scale = 0.0,
66 bool set_center_when_scale_rejected =
false) = 0;
68 virtual void requestZoomReset() = 0;
69 virtual void _requestZoomReset(
const std::vector<HOM_NetworkItem *> &
items) = 0;
70 virtual bool isZoomResetRequested() = 0;
71 virtual void _requestGraphUpdate() = 0;
73 virtual void setLocatingEnabled(
bool enabled) = 0;
74 virtual bool locatingEnabled() = 0;
76 virtual float lengthToScreen(
float len) = 0;
77 virtual float lengthFromScreen(
float len) = 0;
87 virtual bool overviewVisible() = 0;
88 virtual bool overviewVisibleIfAutomatic() = 0;
90 SWIGOUT(%kwargs networkItemsInBox;)
95 bool for_drop =
false,
bool for_select =
false) = 0;
96 virtual void setDropTargetItem(
101 SWIGOUT(%newobject decoratedItem;)
103 virtual bool decorationInteractive() = 0;
105 virtual void setPreSelectedItems(
106 const std::vector<HOM_NetworkItem *> &
items) = 0;
107 virtual std::vector<HOM_ElemPtr<HOM_NetworkItem> > preSelectedItems() = 0;
108 virtual std::vector<HOM_ElemPtr<HOM_NodeConnection> >
109 selectedConnections() = 0;
110 virtual void clearAllSelected() = 0;
112 virtual void setNetworkBoxPendingRemovals(
113 const std::vector<HOM_NetworkMovableItem *> &
items) = 0;
114 virtual std::vector<HOM_ElemPtr<HOM_NetworkMovableItem> >
115 networkBoxPendingRemovals() = 0;
117 virtual void setFootprints(
118 const std::vector<HOM_NetworkFootprint> &footprints) = 0;
119 virtual std::vector<HOM_NetworkFootprint> footprints() = 0;
121 virtual void setCursorMap(
122 std::map<std::pair<std::string, int>, std::string> cursors) = 0;
123 virtual std::map<std::pair<std::string, int>, std::string> cursorMap() = 0;
124 virtual void setDefaultCursor(
const char *cursor_name) = 0;
125 virtual std::string defaultCursor() = 0;
127 virtual void setBackgroundImages(
128 const std::vector<HOM_NetworkImage> &images) = 0;
129 virtual std::vector<HOM_NetworkImage> backgroundImages() = 0;
141 virtual std::vector<std::pair<HOM_ElemPtr<HOM_NetworkMovableItem>,
143 const std::vector<HOM_NetworkMovableItem *> &ignore_items,
144 bool adjusted =
true) = 0;
146 SWIGOUT(%kwargs setAdjustments;)
147 virtual void setAdjustments(
148 const std::vector<HOM_NetworkItem *> &
items,
149 const std::vector<HOM_NetworkAnimValue> &adjustments,
150 bool auto_remove =
false) = 0;
151 virtual void setShapes(
152 const std::vector<HOM_NetworkShape *> &shapes) = 0;
153 virtual void setOverlayShapes(
154 const std::vector<HOM_NetworkShape *> &shapes) = 0;
156 virtual void setTooltip(
const char *tooltip) = 0;
157 virtual std::string tooltip() = 0;
158 virtual void setPrompt(
const char *prompt) = 0;
159 virtual std::string prompt() = 0;
160 virtual void flashMessage(
const char *
image,
161 const char *
message,
float duration) = 0;
164 virtual void openTabMenu(
const char *key = NULL,
165 bool auto_place =
false,
168 int src_connector_index = -1,
170 int dest_connector_index = -1,
172 const std::vector<HOM_NetworkMovableItem *> &src_items =
173 std::vector<HOM_NetworkMovableItem *>(),
174 const std::vector<int> &src_connector_indexes =
176 const std::vector<HOM_NetworkMovableItem *> &dest_items =
177 std::vector<HOM_NetworkMovableItem *>(),
178 const std::vector<int> &dest_connector_indexes =
179 std::vector<int>()) = 0;
182 const std::vector<HOM_NetworkMovableItem *> &
items =
183 std::vector<HOM_NetworkMovableItem *>()) = 0;
184 virtual void openVopEffectsMenu(
HOM_VopNode *
node,
int input_index) = 0;
185 virtual void openVopOutputInfoMenu(
HOM_VopNode *
node,
int output_index) = 0;
186 virtual void openFloatingParameterEditor(
HOM_Node *
node) = 0;
189 bool select_all =
false) = 0;
191 bool select_all =
false) = 0;
193 bool select_all =
false) = 0;
194 SWIGOUT(%kwargs closeTextEditor;)
195 virtual void closeTextEditor(
int id,
bool apply_changes =
true) = 0;
196 virtual void runShelfTool(
const char *tool_name) = 0;
198 virtual int scheduleTimerEvent(
float seconds) = 0;
199 virtual void handleCurrentKeyboardEvent(
bool resend =
false) = 0;
200 virtual void setVolatileHotkeys(
201 const std::vector<std::string> &hotkey_symbols) = 0;
202 virtual bool isVolatileHotkeyDown(
const char *hotkey_symbol) = 0;
204 virtual std::vector<std::vector<std::string> >
205 hotkeyAssignments(
const std::vector<std::string> &hotkey_symbols) = 0;
207 virtual void setPref(
const char *pref,
const char *
value) = 0;
208 virtual std::string getPref(
const char *pref) = 0;
209 virtual void setPrefs(
const std::map<std::string, std::string> &prefs) = 0;
210 virtual std::map<std::string, std::string> getPrefs() = 0;
211 virtual void registerPref(
const char *pref,
const char *
value,
bool global) = 0;
212 virtual std::vector<std::vector<std::string> > badges() = 0;
213 virtual std::vector<std::vector<std::string> > textBadges() = 0;
215 virtual std::vector<std::string> nodeShapes() = 0;
216 virtual std::vector<std::string> reloadNodeShapes() = 0;
217 virtual void redraw() = 0;
219 virtual void setDragSourceData(
220 const std::vector<HOM_NetworkMovableItem *> &
items) = 0;
221 virtual void setDragSourceWorkItem(
int item_id) = 0;
224 virtual bool pushOpaqueEventContext(
const char *module,
void *
data) = 0;
225 virtual void popEventContext() = 0;
227 virtual void *opaqueEventContextData() = 0;
232 virtual void setParmFilterEnabled(
bool on,
bool keyboard_lock=
false ) = 0;
233 virtual bool parmFilterEnabled() = 0;
235 virtual void setParmFilterExactMatch(
bool on ) = 0;
236 virtual bool parmFilterExactMatch() = 0;
238 virtual void setParmFilterPattern(
const char*
filter ) = 0;
239 virtual std::string parmFilterPattern() = 0;
241 virtual void setParmFilterMode(
HOM_EnumValue &
mode=HOM_parmFilterMode::AllParms) = 0;
244 virtual void setParmFilterCriteria(
HOM_EnumValue &criteria=HOM_parmFilterCriteria::NameOrLabel ) = 0;
247 virtual void setMultiParmTab(
const char *
parm,
int index) = 0;
248 virtual int multiParmTab(
const char *
parm) = 0;
250 virtual void setRevertToNetworkViewOnEmpty(
bool revert) = 0;
251 virtual bool revertToNetworkViewOnEmpty() = 0;
254 virtual void _scrollToParms(
const char *
parms ) = 0;
255 virtual void _filterParms(
const char*
parms) = 0;
258 virtual void _startModalUI(
const char *
name ) = 0;
259 virtual void _endModalUI() = 0;
261 virtual void _refreshCopStatusBar() = 0;
263 virtual bool isShowingParmDialog() = 0;
264 virtual void setShowParmDialog(
bool show ) = 0;
266 SWIGOUT(%newobject parmPythonPanelInterface;)
270 virtual void * _opaqueParmPythonPanelInterfaceRootWidget() = 0;
275 virtual bool pushEventContext(
const char *module, InterpreterObject
data)
276 {
return self->pushOpaqueEventContext(module, data); }
277 virtual InterpreterObject eventContextData()
278 {
return HOMincRef((InterpreterObject)self->opaqueEventContextData()); }
281 virtual InterpreterObject parmPythonPanelInterfaceRootWidget()
283 return HOMincRef((InterpreterObject)self->_opaqueParmPythonPanelInterfaceRootWidget());
GLuint GLsizei const GLchar * message
virtual HOM_Parm * parm(const char *parm_path)=0
#define HOM_DESTRUCT_OBJECT(pointer)
virtual std::vector< HOM_ElemPtr< HOM_NetworkMovableItem > > items(const std::vector< std::string > &item_paths)=0
GLsizei const GLfloat * value
string __repr__(VtArray< T > const &self)
~HOM_NetworkEditor() override
GLenum GLenum GLsizei void * image
std::tuple< Types...> UT_Tuple
GLenum GLenum GLsizei const GLuint GLboolean enabled
void ignore(T const &) VULKAN_HPP_NOEXCEPT
#define HOM_CONSTRUCT_OBJECT(pointer)
virtual HOM_Node * node(const char *node_path)=0
virtual HOM_NetworkMovableItem * item(const char *item_path)=0
GLuint const GLchar * name
GA_API const UT_StringHolder parms
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
SIM_API const UT_StringHolder position
PUGI__FN char_t * translate(char_t *buffer, const char_t *from, const char_t *to, size_t to_length)
HOM_NetworkEditor(const HOM_NetworkEditor &pane)
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter