# HOpMarkupCircle

## Functions

| `HOpMarkupCircle`
| `~HOpMarkupCircle`
const char * | `GetName`
int | `OnLButtonUp`
HBaseOperator * | `Clone`

## Detailed Description

class HOpMarkupCircle : public HOpConstructCircle

  The HOpMarkupCircle class inserts a 2D circle into a markup layer. If a layer is already active, then the operator will use that layer. Otherwise, the operator will create a new unnamed layer.

  HOpMarkupCircle implements three mouse event methods defined on the base class and maps the event information to operator routines. This operation consists of the following steps:

  1. Left Button Down: Registers the center point of the circle.

  2. Left Button Down and Drag: Creates a circle of appropriate radius in the contruction layer.

  3. Left Button Up: Depending on existence of an active markup layer it either opens the existing or creates a new markup layer and inserts appropraitely sized circle into it.

  More Detailed Description: see event methods.

  Public Functions

  HOpMarkupCircle(HBaseView *view, int DoRepeat = 0, int DoCapture = 1)

    Constructs an HOpMarkupCircle object.

    Parameters

      - view – A pointer to an HBaseView object

      - DoRepeat – An integer denoting whether this is a repeatable operator. This parameter has been deprecated.

      - DoCapture – An integer denoting whether the mouse state should be captured, which means that all mouse events should be received after a mousedown, even if it leaves the window. This parameter has been deprecated.

  virtual ~HOpMarkupCircle()
  virtual const char *GetName()
    Returns

      A pointer to a character string denoting the name of the operator, which is ‘HOpMarkupCircle’.

  virtual int OnLButtonUp(HEventInfo &hevent)

    OnLButtonUp maps circle information from HOpConstructCircle into the HOOPS routine HC_Compute_Selection_By_Area. This function also deselects any selected items that are not present in the current selection list.

    Parameters

      hevent – An HEventInfo object containing information about the current event.

    Returns

      An HOperatorReturn indicating the status of the event.

  virtual HBaseOperator *Clone()

    Creates a new operator which is a copy of the current operator. The user is responsible for deleting the newly created operator.

    Returns

      A pointer to the newly created HOpMarkupCircle object.