Logo Search packages:      
Sourcecode: ktechlab version File versions  Download package

Component Class Reference

#include <component.h>

Inheritance diagram for Component:

CNItem Item CIWidgetMgr ADDAC BiDirLED BinaryCounter Buffer BusSplitter Capacitor Demultiplexer DependentSource EC555 ECBCDTo7Segment ECBJT ECCell ECClockInput ECCurrentSignal ECCurrentSource ECDiode ECDPDT ECDPST ECFixedVoltage ECGround ECJFET ECKeyPad ECLogicInput ECLogicOutput ECMOSFET ECOpAmp ECPotentiometer ECPTBSwitch ECPTMSwitch ECRotoSwitch ECSevenSegment ECSignalLamp ECSPDT ECSPST ECSRFlipFlop ECSubcircuit ECVoltageSignal ExternalConnection FullAdder Inductor Inverter MagnitudeComparator MatrixDisplay MatrixDisplayDriver Meter MultiInputGate Multiplexer ParallelPortComponent PICComponent Probe RAM Resistor ResistorDIP SerialPortComponent VariableCapacitor VariableResistor

List of all members.

Detailed Description

Base class for all electrical components.

David Saxton

Definition at line 78 of file component.h.

Public Slots

virtual void moveBy (double dx, double dy)
void removeChild (Item *child)
virtual void removeItem ()
virtual void slotUpdateConfiguration ()


void elementCreated (Element *element)
void elementDestroyed (Element *element)
void movedBy (double dx, double dy)
void orientationChanged ()
void removed (Item *item)
void resized ()
void selectionChanged ()
void switchCreated (Switch *sw)
void switchDestroyed (Switch *sw)

Public Member Functions

ButtonaddButton (const QString &id, const QRect &pos, QPixmap pixmap, bool toggle=false)
ButtonaddButton (const QString &id, const QRect &pos, const QString &display, bool toggle=false)
void addChild (Item *child)
SlideraddSlider (const QString &id, int minValue, int maxValue, int pageStep, int value, Qt::Orientation orientation, const QRect &pos)
int angleDegrees () const
QPointArray areaPoints () const
int baseZ () const
QRect boundingRect () const
QBrush brush () const
Buttonbutton (const QString &id) const
virtual void buttonStateChanged (const QString &, bool)
virtual bool canResize () const
QCanvas * canvas () const
NodechildNode (const QString &childId)
ItemList children (bool includeGrandChildren=false) const
CircuitDocumentcircuitDocument () const
bool collidesWith (const QCanvasItem *) const
QCanvasItemList collisions (const bool exact) const
 Component (ICNDocument *icnDocument, bool newItem, const QString &id)
ConnectorList connectorList ()
bool contains (Item *item, bool direct=false) const
virtual bool contentChanged () const
BJTcreateBJT (ECNode *c, ECNode *b, ECNode *e, bool isNPN=true)
BJTcreateBJT (Pin *c, Pin *b, Pin *e, bool isNPN=true)
CapacitancecreateCapacitance (ECNode *n0, ECNode *n1, double capacitance)
CapacitancecreateCapacitance (Pin *n0, Pin *n1, double capacitance)
CCCScreateCCCS (ECNode *n0, ECNode *n1, ECNode *n2, ECNode *n3, double gain)
CCCScreateCCCS (Pin *n0, Pin *n1, Pin *n2, Pin *n3, double gain)
CCVScreateCCVS (ECNode *n0, ECNode *n1, ECNode *n2, ECNode *n3, double gain)
CCVScreateCCVS (Pin *n0, Pin *n1, Pin *n2, Pin *n3, double gain)
CurrentSignalcreateCurrentSignal (ECNode *n0, ECNode *n1, double current)
CurrentSignalcreateCurrentSignal (Pin *n0, Pin *n1, double current)
CurrentSourcecreateCurrentSource (ECNode *n0, ECNode *n1, double current)
CurrentSourcecreateCurrentSource (Pin *n0, Pin *n1, double current)
DiodecreateDiode (ECNode *n0, ECNode *n1)
DiodecreateDiode (Pin *n0, Pin *n1)
InductancecreateInductance (ECNode *n0, ECNode *n1, double inductance)
InductancecreateInductance (Pin *n0, Pin *n1, double inductance)
JFETcreateJFET (ECNode *D, ECNode *G, ECNode *S, int JFET_type)
JFETcreateJFET (Pin *D, Pin *G, Pin *S, int JFET_type)
LogicIncreateLogicIn (ECNode *node)
LogicIncreateLogicIn (Pin *node)
LogicOutcreateLogicOut (ECNode *node, bool isHigh)
LogicOutcreateLogicOut (Pin *node, bool isHigh)
MOSFETcreateMOSFET (ECNode *D, ECNode *G, ECNode *S, ECNode *B, int MOSFET_type)
MOSFETcreateMOSFET (Pin *D, Pin *G, Pin *S, Pin *B, int MOSFET_type)
NodecreateNode (double _x, double _y, int orientation, const QString &name, uint type)
OpAmpcreateOpAmp (ECNode *nonInverting, ECNode *out, ECNode *inverting)
OpAmpcreateOpAmp (Pin *nonInverting, Pin *out, Pin *inverting)
ECNodecreatePin (double _x, double _y, int orientation, const QString &name)
virtual PropertycreateProperty (const QString &id, Variant::Type::Value type)
ResistancecreateResistance (ECNode *n0, ECNode *n1, double resistance)
ResistancecreateResistance (Pin *n0, Pin *n1, double resistance)
SwitchcreateSwitch (ECNode *n0, ECNode *n1, bool open)
SwitchcreateSwitch (Pin *n0, Pin *n1, bool open)
VCCScreateVCCS (ECNode *n0, ECNode *n1, ECNode *n2, ECNode *n3, double gain)
VCCScreateVCCS (Pin *n0, Pin *n1, Pin *n2, Pin *n3, double gain)
VCVScreateVCVS (ECNode *n0, ECNode *n1, ECNode *n2, ECNode *n3, double gain)
VCVScreateVCVS (Pin *n0, Pin *n1, Pin *n2, Pin *n3, double gain)
VoltagePointcreateVoltagePoint (ECNode *n0, double voltage)
VoltagePointcreateVoltagePoint (Pin *n0, double voltage)
VoltageSignalcreateVoltageSignal (ECNode *n0, ECNode *n1, double voltage)
VoltageSignalcreateVoltageSignal (Pin *n0, Pin *n1, double voltage)
VoltageSourcecreateVoltageSource (ECNode *n0, ECNode *n1, double voltage)
VoltageSourcecreateVoltageSource (Pin *n0, Pin *n1, double voltage)
bool dataBool (const QString &id) const
QColor dataColor (const QString &id) const
double dataDouble (const QString &id) const
int dataInt (const QString &id) const
QString dataString (const QString &id) const
virtual bool doesStepNonLogic () const
virtual void drawShape (QPainter &p)
void drawWidgets (QPainter &p)
ECNodeecNodeWithID (const QString &ecNodeId)
virtual void enterEvent ()
virtual void finishedCreation ()
bool flipped () const
QFont font () const
NodegetClosestNode (const QPoint &pos)
bool hasProperty (const QString &id) const
int height () const
void hide ()
QString id () const
void initElements (const uint stage)
virtual bool isMovable () const
bool isRaised () const
bool isSelected () const
bool isVisible () const
virtual ItemData itemData () const
ItemDocumentitemDocument () const
virtual void leaveEvent ()
int level () const
int mgrX () const
int mgrY () const
virtual QSize minimumSize () const
virtual bool mouseDoubleClickEvent (const EventInfo &eventInfo)
virtual bool mouseMoveEvent (const EventInfo &eventInfo)
virtual bool mousePressEvent (const EventInfo &eventInfo)
virtual bool mouseReleaseEvent (const EventInfo &eventInfo)
void move (double const x, double const y)
QString name () const
bool needRedraw () const
QString nodeId (const QString &internalNodeId)
NodeInfoMap nodeMap () const
int offsetX () const
int offsetY () const
ItemparentItem () const
QPen pen () const
QPointArray points () const
virtual bool preResize (QRect sizeRect)
Propertyproperty (const QString &id) const
void removeElement (Element *element, bool setPinsInterIndependent)
void removeElements (bool setPinsInterIndependent=false)
bool removeNode (const QString &name)
void removeSwitch (Switch *sw)
void removeWidget (const QString &id)
virtual void restoreFromItemData (const ItemData &itemData)
void setAngleDegrees (int degrees)
virtual void setBrush (const QBrush &b)
void setButtonState (const QString &id, int state)
virtual void setCanvas (QCanvas *)
void setChanged ()
void setDrawWidgets (bool draw)
void setFlipped (bool flipped)
void setNeedRedraw (const bool needRedraw)
void setNodalCurrents ()
void setParentItem (Item *parentItem)
virtual void setPen (const QPen &p)
void setPoints (QPointArray)
void setRaised (bool isRaised)
virtual void setSelected (bool yes)
void setSize (int x, int y, int w, int h, bool forceItemPoints=false)
void setSize (QRect sizeRect, bool forceItemPoints=false)
virtual void setVisible (bool yes)
void setWidgetsPos (const QPoint &pos)
void setX (double a)
void setY (double a)
void setZ (double a)
void show ()
QRect sizeRect () const
Sliderslider (const QString &id) const
virtual void sliderValueChanged (const QString &, int)
virtual void stepNonLogic ()
SwitchList switchList () const
TextMap textMap () const
QString type () const
virtual void updateConnectorPoints (bool add)
virtual void updateNodeLevels ()
virtual void updateZ (int baseZ)
VariantDataMap * variantMap ()
virtual bool wheelEvent (const EventInfo &eventInfo)
WidgetwidgetWithID (const QString &id) const
int width () const
double x () const
double y () const
double z () const

Static Public Member Functions

static double getMultiplier (const QString &mag)
static double getMultiplier (double num)
static QString getNumberMag (double num)
static int getNumberPre (double num)
static QWMatrix transMatrix (int angleDegrees, bool flipped, int x, int y, bool inverse=false)
static QColor voltageColor (double v)
static double voltageLength (double v)

Protected Slots

virtual void dataChanged ()
virtual void propertyChangedInitial ()

Protected Member Functions

TextaddDisplayText (const QString &id, const QRect &pos, const QString &display, bool internal=true, int flags=Qt::AlignHCenter|Qt::AlignVCenter)
virtual void addToChunks ()
virtual void changeChunks ()
virtual void childAdded (Item *)
virtual void childRemoved (Item *)
virtual void deinitPainter (QPainter &p)
void draw (QPainter &)
void drawPortShape (QPainter &p)
void init1PinLeft (int h1=-1)
void init1PinRight (int h1=-1)
void init2PinLeft (int h1=-1, int h2=-1)
void init2PinRight (int h1=-1, int h2=-1)
void init3PinLeft (int h1=-1, int h2=-1, int h3=-1)
void init3PinRight (int h1=-1, int h2=-1, int h3=-1)
void init4PinLeft (int h1=-1, int h2=-1, int h3=-1, int h4=-1)
void init4PinRight (int h1=-1, int h2=-1, int h3=-1, int h4=-1)
void initDIP (const QStringList &pins)
void initDIPSymbol (const QStringList &pins, int width)
virtual void initPainter (QPainter &p)
void invalidate ()
bool isValid () const
virtual void itemPointsChanged ()
virtual void postResize ()
void rebuildPinInterDepedence ()
void removeDisplayText (const QString &id)
virtual void removeFromChunks ()
virtual void reparented (Item *oldParent, Item *newParent)
void setDisplayText (const QString &id, const QString &display)
void setItemPoints (const QPointArray &pa, bool setSizeFromPoints=true)
void setWinding (bool)
void update ()
virtual void updateAttachedPositioning ()
bool winding () const

Protected Attributes

bool b_deleted
bool b_flipped
bool b_pointsAdded
int m_angleDegrees
int m_baseZ
bool m_bDoneCreation
bool m_bDynamicContent
bool m_bIsRaised
QColor m_brushCol
ItemList m_children
QString m_id
QPointArray m_itemPoints
QString m_name
 Name (e.g. "Resistor").
NodeInfoMap m_nodeMap
QGuardedPtr< CircuitDocumentm_pCircuitDocument
ECNodem_pNNode [4]
QPoint m_pos
ECNodem_pPNode [4]
QTimer * m_pPropertyChangedTimer
 Single show timer for one a property changes.
QColor m_selectedCol
QRect m_sizeRect
TextMap m_textMap
QString m_type
VariantDataMap m_variantData
WidgetMap m_widgetMap
double myx
double myy
double myz
QCanvas * p_canvas
QGuardedPtr< ICNDocumentp_icnDocument
QGuardedPtr< ItemDocumentp_itemDocument
GuardedItem p_parentItem
QPointArray poly
bool val

Private Member Functions

ElementMapList::iterator handleElement (Element *e, const QValueList< Pin * > &pins)
void setAllPinsInterIndependent ()
void setInterCircuitDependent (ElementMapList::iterator it, const QValueList< Pin * > &pins)
void setInterDependent (ElementMapList::iterator it, const QValueList< Pin * > &pins)
void setInterGroundDependent (ElementMapList::iterator it, const QValueList< Pin * > &pins)

Private Attributes

ElementMapList m_elementMapList
SwitchList m_switchList


class ItemLibrary

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index