nodesnim/nodescontrol/label

It provides primitive text rendering.

Types

LabelObj = object of ControlPtr
  font*: pointer               ## Glut font data.
  spacing*: float              ## Font spacing.
  size*: float                 ## Font size.
  text*: string                ## Label text.
  color*: ColorRef             ## Text color.
  text_align*: AnchorRef       ## Text align.
  
LabelPtr = ptr LabelObj

Procs

proc Label(name: string; variable: var LabelObj): LabelPtr {...}{.raises: [], tags: [].}

Creates a new Label pointer.

Arguments:

  • name is a node name.
  • variable is a LabelObj variable.

Examples:

var
  textobj: LabelObj
  text = Label("Label", textobj)
proc Label(obj: var LabelObj): LabelPtr {...}{.inline, raises: [], tags: [].}

Creates a new Labelpointer with default node name "Label".

Arguments:

  • variable is a LabelObj variable.

Examples:

var
  textobj: LabelObj
  text = Label(textobj)

Methods

method draw(self: LabelPtr; w, h: GLfloat) {...}{.raises: [GLerror, Exception],
                                       tags: [RootEffect].}
This uses in the window.nim.
method duplicate(self: LabelPtr; obj: var LabelObj): LabelPtr {...}{.base, raises: [], tags: [].}
Duplicates Label object and create a new Label pointer.
method setTextAlign(self: LabelPtr; align: AnchorRef) {...}{.base, raises: [], tags: [].}
Changes text alignment.
method setTextAlign(self: LabelPtr; x1, y1, x2, y2: float) {...}{.base, raises: [], tags: [].}
Changes text alignment.
method setText(self: LabelPtr; value: string) {...}{.base, raises: [], tags: [].}
Changes Label text.