Tk\_GetDash(3) Tk Library Procedures Tk\_GetDash(3)

```

```

# [NAME](#NAME)

Tk\_GetDash - convert from string to valid dash structure.

# [SYNOPSIS](#SYNOPSIS)

```
#include <tk.h>
int
Tk_GetDash(interp, string, dashPtr)
```

# [ARGUMENTS](#ARGUMENTS)

Tcl\_Interp *\*interp* (in)

Interpreter to use for error reporting.

const char *\*string* (in)

Textual value to be converted.

Tk\_Dash *\*dashPtr* (out)

Points to place to store the dash pattern value converted from *string*. Must not be NULL.

```
    
```

# [DESCRIPTION](#DESCRIPTION)

These procedure parses the string and fills in the result in the Tk\_Dash structure. The string can be a list of integers or a character string containing only “**.,-\_**” and spaces. If all goes well, **TCL\_OK** is returned and a dash descriptor is stored in the variable pointed to by *dashPtr*. If *string* does not have the proper syntax then **TCL\_ERROR** is returned, an error message is left in the interpreter's result, and nothing is stored at \**dashPtr*.

The first possible syntax is a list of integers. Each element represents the number of pixels of a line segment. Only the odd segments are drawn using the “outline” color. The other segments are drawn transparent.

The second possible syntax is a character list containing only 5 possible characters “**.,-\_** ”. The space can be used to enlarge the space between other line elements, and can not occur in the first position of the string. Some examples:

```


    -dash .     = -dash {2 4}


    -dash -     = -dash {6 4}


    -dash -.    = -dash {6 4 2 4}


    -dash -..   = -dash {6 4 2 4 2 4}


    -dash {. }  = -dash {2 8}


    -dash ,     = -dash {4 4}
```

The main difference between this syntax and the numeric is that it is shape-conserving. This means that all values in the dash list will be multiplied by the line width before display. This ensures that “.” will always be displayed as a dot and “-” always as a dash regardless of the line width.

On systems where only a limited set of dash patterns, the dash pattern will be displayed as the most close dash pattern that is available. For example, on Windows only the first 4 of the above examples are available; the last 2 examples will be displayed identically to the first one.

# [SEE ALSO](#SEE_ALSO)

[canvas(n)](/man/os/tk/canvas.n), [Tk\_CreateItemType(3)](/man/os/tk/Tk_CreateItemType.3)

# [KEYWORDS](#KEYWORDS)

dash, conversion

8.3 Tk

---

Document: Tk_GetDash(3) from tk 9.1.0-r0 (Chainguard OS)
Source: https://downloads.sourceforge.net/sourceforge/tcl/tk9.1.0-src.tar.gz
