Scroll to navigation

canvas::track::lines(3tk) Variations on a canvas canvas::track::lines(3tk)


NAME

canvas::track::lines - Manage a group of rubber band lines

SYNOPSIS

package require Tcl 8.5

package require Tk 8.5

package require canvas::tag ?0.1?

::canvas::track lines objectName canvas

objectName destroy

objectName start current p...

objectName move current

objectName done


DESCRIPTION

This package provides a utility class managing the drawing of set of semi-crosshair (rubberband) lines.

CLASS API

::canvas::track lines objectName canvas
This, the class command, creates and configures a new instance of the tracker, named objectName. The instance will be connected to the specified canvas widget.

The result of the command is the fully qualified name of the instance command.

INSTANCE API

Instances of this class provide the following API:

This method destroys the instance and releases all its internal resources.

This operation does destroy the items representing the tracked lines. It does not destroy the attached canvas.

The result of the method is an empty string.

This method starts the tracking of a set of lines, one line per point p, which specifies the destination end-point of each line. All lines will have current as a common end-point.

Note that a previously tracked set of lines is removed.

The result of the method is an empty string.

Each point is specified through a 2-element list containing its x- and y-coordinates, in this order.

This method updates the shared end-point of all rubberbands and redraws them.

The result of the method is an empty string.

The point is specified through a 2-element list containing its x- and y-coordinates, in this order.

This method ends the tracking of the current set of lines and removes them from the canvas.

BUGS, IDEAS, FEEDBACK

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category canvas of the Tklib Trackers [http://core.tcl.tk/tklib/reportlist]. Please also report any ideas for enhancements you may have for either package and/or documentation.

KEYWORDS

canvas, crosshair, rubberband, tracking

0.1 tklib