13 #ifndef __BM_SingleOpState_H__
14 #define __BM_SingleOpState_H__
26 class BM_OpHandleLink;
33 friend class BM_UndoSetNode;
38 BM_SceneManager *scene,
77 void createOpHandleLink(
const char* handle_instance_name,
const char* settings=
nullptr,
78 bool load_settings =
true);
81 bool deleteOpHandleLink(
const char* handle_instance_name,
bool remove_bindings =
false);
87 virtual OP_Node *getChosenOp()
const = 0;
96 virtual void doGenerate();
100 OP_Node *createNode(
const char *optype = 0,
101 const char *nettype = 0,
115 virtual void setNode(
OP_Node *node);
116 void setNodeId(
int id);
119 virtual void setNodeFlags(
OP_Node &node);
122 virtual void clearChosenNodeFlags();
140 virtual void initializeDialogs();
143 virtual void completeDialogs();
158 virtual void addAnyReselectionUndos();
164 virtual bool disconnectInputsOnRestart()
const;
166 void clearOpHandleLinks();
176 void createOpHandleLinks();
188 BM_OpHandleLink * createSingleOpHandleLink(
191 void clearRestartInfo();
192 void saveRestartInfo(
const OP_Node &node,
194 bool restoreRestartInfo(
OP_Node &node);
199 void deleteOpHandleLinks();
virtual void stopGenerating()
virtual int matchesNode(OP_Node &node) const =0
const char * className() const override
UT_IntArray myRestartOpInputs
OPUI_Dialog * myOpToolbox
UT_String myRestartInfoFile
int getToolboxCount() const override
virtual bool allowOpMaxExportToDialog() const
virtual void makePIVisible(int pi_idx, int onoff)
UT_BitArray myHandleVisibility
virtual int hasOpNode(const OP_Node &) const
virtual void removeAllDialogs()
virtual void refreshSettings(int id, const char *op_type)
#define BM_DEFAULT_CURSOR
virtual void refreshBindings(int id, const char *op_type)
const UT_String & getName() const
Return the name passed in the constructor.
UT_SymbolMap< int > myHandleTable
OP_Node * savedNode() const
int enter(BM_SimpleState::BM_EntryType how) override
void savedNode(OP_Node *n)
virtual void handleDialogDeleted(OPUI_Dialog *deleted_dialog)
virtual bool canCreateSelector() const
UT_StringArray myRestartOpIndirectInputs
virtual void handleOpNetClear()
virtual int handleNodeDeleted(OP_Node &)
virtual const char * getCreateNodeName() const
virtual int generate(BM_SimpleState::BM_EntryType how, const GenerateParms &parms)
UI_Feel * getToolbox(int index) const override