Components represent the elementary functional units of the circuit and
are represented graphically on the workarea canvas by logic gates.
The implementation modules related to the construction and subsequent
manipulation of components are presented in Table 3.4.
Module Name
Purpose
cmpcreate.tcl
This module is responsible for drawing and
placing the components on the workarea canvas.
Uses the draw_component procedure
in the draw.tcl module.
cmpdel.tcl
Module to delete components from the canvas. Also
updates the netlist arrays by removing deleted
port assignments.
cmpmod.tcl
Modify the attributes associated with a component.
Currently, no attributes are supported; but in the
future, component transport delay will be provided.
cmpmove.tcl
Move components on the canvas. Procedures must also
move any wires and points attached to the ports of the
component.
cmprotate.tcl
Module to rotate components on the canvas. Employs the
draw_rotate procedure in the
draw.tcl module.
cmputils.tcl
Miscellaneous low-level helper procedures related to
components, such as overlap detection and identification.
draw.tcl
Contains the low-level code and helper procedures
required to draw and rotate components on the canvas.
Also contains code to determine the bounding box of a
canvas item.
Table 3.4: Component Creation and Manipulation Modules
Donald Craig
Mon Jul 8 12:05:35 NDT 1996