A Component that wants to link to another components must:
A component that wants to do something when linked must implement one or both:
void setLinkedValue( double v, int i=0 )
void setLinkedString( QString str, int i=0 )
component.h:
void setLinkedValue( double v, int i=0 )
void setLinkedString( QString str, int i=0 )
void setLinked( bool l )
linkable.h
void createLinks( QList<Component> )
void compSelected( Component* comp )
Dialed (Dial, Potentiometer, Variable Resistor, Resistive Sensors):
Called:
setLinkedValue( double v, int i=0 )
i = 0: set Dial value (0-1000)
else : set value.
Text Component
Called:
setLinkedString( QString str, int i )
setLinkedValue( double v, int i )
i = 0: set text.
else : append text.
7 segment BCD
Called:
setLinkedValue( double v, int i )
i = 0: display value.
else : 1 bit for each segment.
Clock & Wave Gen
Called:
setLinkedValue( double v, int i )
Set frequency.
Capacitor
Called:
setLinkedValue( double v, int i )
Set capacitance (0 to 1000 = 0 to 100%).
Inductor
Called:
setLinkedValue( double v, int i )
Set inductance (0 to 1000 = 0 to 100%).
Controlled Source
Called:
setLinkedValue( double v, int i )
Set control voltage or current.
Scripted
Can be called:
setLinkedString( string str, int i )
setLinkedValue( double v, int i )