Provided by: ivtools-dev_1.2.11a1-11_amd64 bug

NAME

       VerticesComp,  VerticesView,  PSVertices  -  abstract  base classes for vertexed graphical
       component subjects and their views and PostScript external representations

SYNOPSIS

       #include <Unidraw/Components/vertices.h>

DESCRIPTION

       VerticesComp is an abstract base class for graphical  components  whose  geometry  can  be
       expressed  as  a  list of coordinate pairs.  VerticesComp uses a Vertices graphic to store
       its graphical attributes.  VerticesView is an abstract GraphicView subclass for displaying
       a  VerticesComp.  PSVertices is an abstract PostScriptView for subclasses that externalize
       VerticesComp information in PostScript form.

VERTICESCOMP PUBLIC OPERATIONS

       Vertices* GetVertices()
              Return the Vertices graphic that defines the vertices's attributes.  GetVertices is
              simply a more specific form of the GetGraphic operation.

VERTICESCOMP PROTECTED OPERATIONS

       VerticesComp(Vertices* = nil)
              The  constructor  takes  an  optional vertices graphic that defines the component's
              graphical attributes.

VERTICESVIEW PUBLIC OPERATIONS

       virtual void Interpret(Command*)
              VerticesView interprets AlignToGridCmd to align its first vertex to the grid.

       virtual void GetVertices(Coord*& x, Coord*& y, int& count)
              Return the view's vertices in canvas coordinates.  GetVertices allocates new arrays
              each time it is called.

       VerticesComp* GetVerticesComp()
              Return the subject.

VERTICESVIEW PROTECTED OPERATIONS

       VerticesView(VerticesComp* = nil)
              Initialize a VerticesView, optionally supplying the subject.

       virtual void CreateHandles()
              VerticesView  redefines CreateHandles to create a RubberHandles object that draws a
              handle coinciding with each vertex.

       virtual boolean VertexChanged()
              Returns whether or not the vertices as stored in the view are different in any  way
              from  those  stored  in  the  subject.  The Update function relies on the result to
              determine whether to recreate the view's structured graphic based on the subject's.
              VerticesView::VertexChanged  (conservatively)  returns false by default; subclasses
              should  redefine  this  function  to  make  a  more  discerning  decision,  thereby
              increasing the efficiency of the update operation.

PSVERTICES PROTECTED OPERATIONS

       PSVertices(VerticesComp* = nil)
              Initialize a PostScript external representation of the given subject, if any.

       virtual const char* Name()
              Subclasses  should  redefine  Name  to  return the proper tag for the object in the
              PostScript output as required for idraw compatibility.

SEE ALSO

       GraphicComp(3U),   GraphicView(3U),    Grid(3U),    PatternCmd(3U),    PostScriptView(3U),
       Vertices(3U), align(3U), idraw(3I)