14 #ifndef _OP_IndirectInput_h_
15 #define _OP_IndirectInput_h_
24 #include <hboost/function.hpp>
40 virtual int getInputItemOutputIndex()
const = 0;
45 int getNodeOutputIndex();
50 {
return myOutputs.entries(); }
52 {
return (idx < getNOutputs()) ? myOutputs(idx) : 0; }
53 void clearOutputs(
bool for_delete =
false);
58 bool into_subnets =
false)
const;
64 bool traverseOutputNodes(hboost::function
65 <
bool (
const OP_Node &)> cb)
const;
68 OP_Node *getFirstOutputNode()
const;
75 bool propagate_parent_event =
true)
override;
88 bool setUseColorFromOutput(
bool use_output_color);
89 bool getUseColorFromOutput()
const;
99 int64 mem = inclusive ?
sizeof(*this) : 0;
101 mem += myOutputs.getMemoryUsage(
false);
102 mem += mySymbolicColorName.getMemoryUsage(
false);
113 void saveColorString(std::ostream &os)
const;
116 void propagateModification(
OP_Node *by_whom,
131 bool myUseColorFromOutput;
virtual bool setColor(const UT_Color &color)
int64 getMemoryUsage(bool inclusive) const
virtual void setXY(fpreal x, fpreal y)=0
virtual OP_Network * getParentNetwork() const =0
Returns the network that is our parent.
GLuint const GLchar * name
virtual bool setPicked(bool on_off, bool propagate_parent_event=true)=0
virtual bool getPicked() const =0