Tk_GetDash.3tk

Langue: en

Autres versions - même langue

Version: 8.3 (ubuntu - 08/07/09)

Section: 3 (Bibliothèques de fonctions)


 

NAME

Tk_GetDash - convert from string to valid dash structure.

SYNOPSIS

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

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.
 

 
 

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 ``.,-_'' or spaces. If all goes well, TCL_OK is returned. 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 as the first position in 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 of this syntax with the previous 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 assures 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 as the first one.

KEYWORDS

dash, conversion