From 48484c953755ca0216487ed7862212e938eddcad Mon Sep 17 00:00:00 2001 From: lecoanet Date: Wed, 13 Mar 2002 13:46:36 +0000 Subject: Nouvelle mouture qui devrait marcher en pdf, dvi et html. Donc avec les commandes pdflatex, latex et latex2html. A manipuler avec soin. Pour m�moire, il est indispensable que la commande latex puisse s'executer. --- doc/refman.tex | 496 ++++++++++++++++++++++++++------------------------------- 1 file changed, 226 insertions(+), 270 deletions(-) (limited to 'doc/refman.tex') diff --git a/doc/refman.tex b/doc/refman.tex index 3be4b21..793aea7 100644 --- a/doc/refman.tex +++ b/doc/refman.tex @@ -1,44 +1,50 @@ \documentclass[11pt,twoside]{book} +%---------------------------------------------------------------------- + + + \newif\ifpdf -\ifx\pdfoutput\undefined + \ifx\pdfoutput\undefined \pdffalse % we are not running PDFLaTeX -\else + \else \pdfoutput=1 % we are running PDFLaTeX - \pdftrue -\fi -%---------------------------------------------------------------------- + \pdftrue + \fi \ifpdf - \usepackage[pdftex, - colorlinks=true, - urlcolor=rltblue, - anchorcolor=rltbrightblue, - filecolor=rltgreen, - linkcolor=rltred, - menucolor=webdarkblue, - citecolor=webbrightgreen, - pdftitle={Zinc, an advanced scriptable Canvas.}, - pdfauthor={Patrick Lecoanet, Centre d'étude de la Navigation Aérienne}, - pdfsubject={The 3.2 Reference Manual.}, - pdfkeywords={tk tcl perl x11 canvas opengl script gui zinc}, - pagebackref, - pdfpagemode=None, - bookmarksopen=true - ]{hyperref} - \pdfcompresslevel=9 - \usepackage[pdftex]{graphicx} - \usepackage{thumbpdf} + \usepackage[pdftex, + colorlinks=true, + urlcolor=rltblue, + anchorcolor=rltbrightblue, + filecolor=rltgreen, + linkcolor=rltred, + menucolor=webdarkblue, + citecolor=webbrightgreen, + pdftitle={Zinc, an advanced scriptable Canvas.}, + pdfauthor={Patrick Lecoanet, Centre d'étude de la Navigation Aérienne}, + pdfsubject={The 3.2 Reference Manual.}, + pdfkeywords={tk tcl perl x11 canvas opengl script gui zinc}, + pagebackref, + pdfpagemode=None, + bookmarksopen=true + ]{hyperref} + \pdfcompresslevel=9 + \usepackage[pdftex]{graphicx} + \usepackage{thumbpdf} + \usepackage{color} + \definecolor{rltred}{rgb}{0.75,0,0.20} + \definecolor{rltgreen}{rgb}{0,0.5,0} + \definecolor{rltblue}{rgb}{0,0,0.75} \else - \usepackage{graphicx} - \usepackage{html} + \usepackage{graphicx} \fi + + +\usepackage{html} \usepackage{a4wide} \usepackage{makeidx} -\usepackage{color} -\definecolor{rltred}{rgb}{0.75,0,0.20} -\definecolor{rltgreen}{rgb}{0,0.5,0} -\definecolor{rltblue}{rgb}{0,0,0.75} + \newcommand{\cident}[1] {% {\tt #1}} @@ -54,11 +60,7 @@ \newcommand{\option}[3]{% \label{opt:#1} \index{#1} - \ifpdf - \hyperdef{opt}{#1}{} - \else - \htmlrule[WIDTH="300" left] - \fi + \latexhtml{\ifpdf\hyperdef{opt}{#1}{}\fi}{\htmlrule[WIDTH="300" left]} \begin{tabular}{rl} Command line switch: & \ident{-#1} \\ Database name: & \ident{#2} \\ @@ -68,24 +70,16 @@ \newcommand{\command}[3]{% \label{cmd:#2} \index{#2} - \ifpdf - \hyperdef{cmd}{#2}{} - \else - \htmlrule[WIDTH="300" left] - \fi + \latexhtml{\ifpdf\hyperdef{cmd}{#2}{}\fi}{\htmlrule[WIDTH="300" left]} {\tt\large #1 {\bf #2} #3}} \newcommand{\zinccmd}[2]{% \command{pathname}{#1}{#2}} \newcommand{\mapinfocmd}[3]{% - \label{mpcmd:#2} + \label{mapcmd:#2} \index{#2} - \ifpdf - \hyperdef{mapcmd}{#2}{} - \else - \htmlrule[WIDTH="300" left] - \fi + \latexhtml{\ifpdf\hyperdef{mapcmd}{#2}{}\fi}{\htmlrule[WIDTH="300" left]} {\tt\large mapinfo #1 {\bf #2} #3}\\ {\tt\large \$zinc->mapinfo(#1, {\bf #2}, #3) } % slightly buggy XXX : missing commas when #3 contains many words @@ -94,88 +88,77 @@ \newcommand{\attrtype}[1]{% \label{attrtype:#1} \index{#1} - \ifpdf - \hyperdef{attrtype}{#1}{} - \else - \htmlrule[WIDTH="300" left] - \fi + \latexhtml{\ifpdf\hyperdef{attrtype}{#1}{}\fi}{\htmlrule[WIDTH="300" left]} {\tt {\bf #1}} \vspace{-2\parskip}} \newcommand{\available}[1]{% - \ifpdf - \hyperlink{obj.#1}{\ident{#1}} - \else - \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{obj:#1} - \fi + \latexhtml{\ifpdf\hyperlink{obj.#1}{\ident{#1}}\fi}{% + \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{obj:#1}} } \newcommand{\refopt}[1]{% - \ifpdf - \hyperlink{opt.#1}{\ident{#1}} - \else - \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{opt:#1} - \fi + \latexhtml{\ifpdf\hyperlink{opt.#1}{\ident{#1}}\fi}{% + \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{opt:#1}} } \newcommand{\cmdref}[1]{% \index{#1} - \ifpdf - \hyperlink{cmd.#1}{\ident{#1}} - \else - \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{cmd:#1} - \fi + \latexhtml{\ifpdf\hyperlink{cmd.#1}{\ident{#1}}\fi}{% + \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{cmd:#1}} } \newcommand{\attribute}[3]{% \label{attribute:#1} \ident{-#1 }% - \ifpdf% - \hyperlink{attrtype.#2}{\ident{#2}} - \else% - \hyperref[no]{\tt \bf #2}{\ident{#2}}{attrtype:#2}% - \fi% + \latexhtml{\ifpdf\hyperlink{attrtype.#2}{\ident{#2}}\fi}{% + \hyperref[no]{\tt \bf #2}{\ident{#2}}{attrtype:#2}} \begin{quotation}#3\end{quotation} } \newcommand{\attributeref}[1]{% - \ifpdf% - \hyperlink{attribute.#1}{\ident{-#1}} - \else% - \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{attribute:#1} - \fi% + \latexhtml{\ifpdf\hyperlink{attribute.#1}{\ident{-#1}}\fi}{% + \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{attribute:#1}} } \newcommand{\object}[1]{% \label{obj:#1} - \ifpdf - \hyperdef{obj}{#1}{} - \fi + \latexhtml{\ifpdf\hyperdef{obj}{#1}{}\fi}{} } \newcommand{\concept}[1]{% \label{concept:#1} - \ifpdf - \hyperdef{concept}{#1}{} - \fi + \latexhtml{\ifpdf\hyperdef{concept}{#1}{}\fi}{} } \newcommand{\objectref}[1]{% - \ifpdf - \hyperlink{obj.#1}{\ident{#1}} - \else - \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{obj:#1} - \fi + \latexhtml{\ifpdf\hyperlink{obj.#1}{\ident{#1}}\fi}{% + \hyperref[page]{\ident{#1}}{\ident{#1} (}{)}{obj:#1}} } \newcommand{\conceptref}[2]{% - \ifpdf - \hyperlink{concept.#2}{\ident{#1}} - \else - \hyperref[page]{#1}{#1 (page }{)}{concept:#2} - \fi + \latexhtml{\ifpdf\hyperlink{concept.#2}{\ident{#1}}\fi}{% + \hyperref[page]{#1}{#1 (page }{)}{concept:#2}} } +\newcommand{\includeimage}[1]{% + \latexhtml{\ifpdf\includegraphics{#1.png}\else\includegraphics{#1.eps}\fi}{% + \htmladdimg{#1.png}} + } + +% Premier parametre nom du fichier image +% Deuxieme parametre legende +% Troisieme parametre label +\newcommand{\includefigure}[3]{% + \latexhtml{ + \begin{figure}[htbp] + \centering + \ifpdf\includegraphics{#1.png}\else\includegraphics{#1.eps}\fi + \caption{#2} + \label{#3} + \end{figure}}{ + \htmladdimg{#1.png}} + } \makeindex @@ -190,43 +173,47 @@ \begin{document} -\DeclareGraphicsExtensions{.png,.ps,.eps,.pdf} +\latex{\DeclareGraphicsExtensions{.png,.ps,.eps,.pdf}} \maketitle \tableofcontents -\concept{introduction} \chapter{Introduction} +\concept{introduction} -\section{What is this document about?} +\section{What is this document about ?} This reference manual describes the Tk \ident{zinc} widget interface. It shows how to create and configure a \ident{zinc} widget, and how to use the commands -it provides to create and manipulate items. As the \ident{zinc} widget is very similar -to the Tk canvas widget, this document is structured in a very similar way. The next chapter -\conceptref{Widget options}{options} describes how to create a new widget and which options -and resources are available. The chapter \conceptref{Groups, Display List and Transformations}{coordinates} +it provides to create and manipulate items. As the \ident{zinc} widget is very +similar to the Tk canvas widget, this document is structured in a very similar +way. The next chapter \conceptref{Widget options}{options} describes how to +create a new widget and which options and resources are available. The chapter +\conceptref{Groups, Display List and Transformations}{coordinates} describes the use of groups and coordinates transformations. The chapter -\conceptref{Item IDs and Tags}{tagOrId} describes the Items ID as well as tags and some special -tags. It also describes the notion of field tags used with some items (\objectref{track}, -\objectref{waypoint}, \objectref{tabular}) and the notion of partNames for items \objectref{track} and -\objectref{waypoint}. Then the chapter \conceptref{Indices}{indices} describes the use of indices XXX. -The important {\bf chapter \conceptref{Widget commands}{commands}} describes the 50 commands which -apply to a \ident{zinc} widget. They are used for +\conceptref{Item IDs and Tags}{tagOrId} describes the Items ID as well as tags +and some special tags. It also describes the notion of field tags used with some +items (\objectref{track}, \objectref{waypoint}, \objectref{tabular}) and the +notion of partNames for items \objectref{track} and \objectref{waypoint}. Then +the chapter \conceptref{Indices}{indices} describes the use of indices XXX. +The important {\bf chapter \conceptref{Widget commands}{commands}} describes the 50 +commands which apply to a \ident{zinc} widget. They are used for creating, modifying or deleting objects, applying transformation... The chapter -\conceptref{Attributes Types}{types} describes the type of all attributes (or options) -available for the items described in the important {\bf chapter \conceptref{Item types}{items}}. -The chapter \conceptref{Labels, fields and label}{labelsandfields} describes the use of labels, -the possible attributes of label fields and finally the labelformat syntax. The chapter -\conceptref{The mapinfo commands}{mapinfocmds} describes the use of mapinfo, a kind of -simple map, which can be build by commands listed in this chapter. The chapter -\conceptref{The videomap commands}{videomapcmds} describes the use of videomap, -a proprietary format of simple map file used in french Air Traffic Control Centres. -Finally the chapter \conceptref{Other resources provided by the widget}{otherresources} -describes some resources provided by \ident{zinc}. - -\section{What is \ident{zinc}?} +\conceptref{Attributes Types}{types} describes the type of all attributes +(or options) available for the items described in the important {\bf chapter +\conceptref{Item types}{items}}. +The chapter \conceptref{Labels, fields and label}{labelsandfields} describes +the use of labels, the possible attributes of label fields and finally the +labelformat syntax. The chapter \conceptref{The mapinfo commands}{mapinfocmds} +describes the use of mapinfo, a kind of simple map, which can be build by +commands listed in this chapter. The chapter \conceptref{The videomap commands} +{videomapcmds} describes the use of videomap, a proprietary format of simple map +file used in french Air Traffic Control Centres. Finally the chapter +\conceptref{Other resources provided by the widget}{otherresources} describes +some resources provided by \ident{zinc}. + +\section{What is \ident{zinc} ?} \ident{Zinc} widgets are very similar to Tk \ident{canvas}es in that they support structured graphics. Like the \ident{canvas}, \ident{zinc} implements items used to @@ -250,27 +237,8 @@ As an exemple of \ident{zinc} capabilities when combined with openGL, we reprodu with Illustrator (from Adobe) and then programmed as a perl module. It is now delivered as a \ident{zinc} goodies. -\ifpdf - \includegraphics{tkzinclogo} -\else -\latexhtml{ - \htmladdimg{tkzinclogo.png} - } -\fi - -\ifpdf -\begin{figure}[htbp] -\centering -\includegraphics{tkzinclogo} -\caption{Logo Zinc written as a Perl/zinc module} -\label{fig:logozinc} -\end{figure} -\else -\latexhtml{ - \htmladdimg{tkzinclogo.png} - } -\fi +\includefigure{tkzinclogo}{Zinc logo written as a Perl/zinc module}{fig:logozinc} The \ident{zinc} widget is available for the Tcl/Tk and the Perl/Tk environment. @@ -279,7 +247,7 @@ oriented but it should be easy for Python programmers to adapt. Every time a \ident{zinc} command is described in this document, it is given first in Tcl/Tk idiom and then in Perl/Tk idiom. -\section{Where can I find zinc and documentation?} +\section{Where can I find zinc and documentation ?} \ident{Zinc} is available at http://www.openatc.org/zinc or http://freshmeat.net/projects/zincisnotcanvas/. The software is available as @@ -351,23 +319,25 @@ in \ident{zinc} development. We are managing a mailing list. To subscribe, pleas consult the web site http://www.openatc.org/Zinc/ . \begin{itemize} -\item The very first way to contribute is to use \ident{zinc} and to report any bug or -problem you may experiment. Of course, if you propose a correction or a patch, your -report will be easer to take into account. -\item The second way to contribute is by commenting and proposing enhancement to this -reference manual. As it has been written by french native writers, native english -writers may really help in making this document easier to read. If you really -feel ambitious, you may even try to write a tutorial, but that is a real challenge! -\item The third way to contribute (and may be the funniest way) is to enriche the set -of small demos (see chapter \conceptref{Other resources provided by the widget}{otherresources}). -Feel free to send us your productions. They may be simple but demonstrative or more complex. -It is up to you! They will be integrated in the next release of \ident{zinc} if they are -worth it. +\item The very first way to contribute is to use \ident{zinc} and to report +any bug or problem you may experiment. Of course, if you propose a correction +or a patch, your report will be easer to take into account. +\item The second way to contribute is by commenting and proposing enhancement +to this reference manual. As it has been written by french native writers, native +english writers may really help in making this document easier to read. If you +really feel ambitious, you may even try to write a tutorial, but that is a real +challenge! +\item The third way to contribute (and may be the funniest way) is to enriche the +set of small demos (see chapter \conceptref{Other resources provided by the +widget}{otherresources}). Feel free to send us your productions. They may be +simple but demonstrative or more complex. +It is up to you! They will be integrated in the next release of \ident{zinc} if +they are worth it. \end{itemize} -\concept{options} \chapter{Widget options} +\concept{options} The \ident{zinc} command creates a new \ident{zinc} widget, the general form is \begin{quotation} @@ -382,9 +352,9 @@ options are described below in this chapter. Any new \ident{zinc} widget comes with an initial group, always identified by the id 1. This group will contain all other items, either directly or -indirectly through other groups created themselves (directly or in other groups... ) -in group 1. The chapter \conceptref{Groups, Display List and Transformations}{coordinates} -describes the use of groups) +indirectly through other groups created themselves (directly or in other +groups... ) in group 1. The chapter \conceptref{Groups, Display List and +Transformations}{coordinates} describes the use of groups). \option{borderwidth}{borderWidth}{BorderWidth} @@ -628,76 +598,108 @@ describes the use of groups) \end{blockindent} -\concept{coordinates} \chapter{Groups, Display List and Transformations} +\concept{coordinates} Groups items are very powerful objects in \ident{zinc}. They have many uses in \ident{zinc} and we will describe them in this chapter. The main usages are: -\itemize +\begin{itemize} \item to apply them transformation (translation, rotation or scaling) \item appl +\end{itemize} + +\section{The root group} -\section{The root group 1} -When creating an other item -(such as an \objectref{track}, a \objectref{rectangle}, or a \objectref{curve}) it is -always put inside a group. Only the root group, the group 1, is not explicitly created -in a group; in fact it is created jointly with the \ident{zinc} widget, and by convention, -the group of group 1 is in the group 1 itself. It is not possible to change the -group of the root group 1. +When creating an other item (such as an \objectref{track}, +a \objectref{rectangle}, or a \objectref{curve}), it is always created +inside a group. The root group (group 1) is not explicitly created. +In fact it is created jointly with the \ident{zinc} widget, and by +convention, the group 1 is its own group. +It is not possible to change the group of the root group and it is not +possible to delete it. \section{Priority and display list} -Groups and the items \ident{-priority} attributes are sued together for ordering the order -in which objects are displayed. The algorithm is the following : +Groups and the items \ident{-priority} attributes are sued together for +ordering the order in which objects are displayed. The algorithm is the +following : \begin{itemize} \item{rule 1} The drawing starts from the root group 1 \item{rule 2} Inside a group, items with the lowest priority are drawn below those with the highest priority. \item{rule 3} Inside a group, when items have the same priority, the items are - displayed according to their creation order (first created are below last created) -\item{rule 4} If one of the item of group A is a group B, every items inside the group B are displayed - according to the rules 2 and 3 during the display of the group B. - That means that a group is always entirely drawn before treating a sibling (having priority). + displayed according to their creation order (first created are below last + created) +\item{rule 4} If one of the item of group A is a group B, every items inside + the group B are displayed according to the rules 2 and 3 during the display + of the group B. That means that a group is always entirely drawn before + treating a sibling (having priority). \end{itemize} -To change the priority of an item you can use the following commands: \cmdref{raise}, \cmdref{lower}, or \cmdref{itemconfigure} with the attribute \ident{-priority}. +To change the priority of an item you can use the following commands: +\cmdref{raise}, \cmdref{lower}, or \cmdref{itemconfigure} with the +attribute \ident{-priority}. \section{Transformation and groups} -Items grouped together inside a same group can be transformed together. By translating a group -you translate every items contained in this group. This also apply to items included in sub-groups -of the translated group. In fact the transformation is recursively applied to all children of +Items grouped together inside a same group can be transformed together. +By translating a group you translate every items contained in this group. +This also apply to items included in sub-groups of the translated group. +In fact the transformation is recursively applied to all children of the transformated group. -However, every object have the attributes \ident{-composescale} and \ident{-composerotation}. These attributes -are defaulted to \ident{true}. If set to \ident{false} a transformation (respectively a \cmdref{scale} and \cmdref{rotate} to its group will not be applied to the item. +However, every object have the attributes \ident{-composescale} and +\ident{-composerotation}. These attributes default to \ident{true}. +If set to \ident{false} a transformation (respectively a \cmdref{scale} + and \cmdref{rotate} to its group will not be applied to the item. -For converting coordinates between two coordinates systems, (i.e. between two groups) you must use the \cmdref{transform} command. For being able to convert to/from the device coordinate, the only way to proceed is to use the \cmdref{transform} comman to/from a group having the same coordinate system as the device coordinate. That is why {\bf it is highly recommended not to apply transforms to the root group 1}. This garantee that the coordinate system of group 1 is always equivalent to the device coordinates (except for a translation depending on the toplevel window position). +For converting coordinates between two coordinates systems, (i.e. between two +groups) you must use the \cmdref{transform} command. For being able to convert +to/from the device coordinate, the only way to proceed is to use the +\cmdref{transform} comman to/from a group having the same coordinate +system as the device coordinate. That is why {\bf it is highly recommended not to + apply transforms to the root group 1}. This garantee that the coordinate +system of the root group is always equivalent to the window coordinates. \section{Attributes propagated to the group children} The following attributes are propagated to the group children: \begin{itemize} -\item\ident{-sensitive} : the sensitivity (to keyboards or mouse event) can be set at the group level, +\item\ident{-sensitive} : the sensitivity (to keyboards or mouse event) can be + set at the group level, \item\ident{-visible} : the visibility can be set at the group level, -\item\ident{-alpha} : the alphablending (i.e. the transparency) can be set at the group level. However this will work only if the \ident{zinc} widget support the openGL rendering. +\item\ident{-alpha} : the alpha-blending (i.e. the transparency) can be set at + the group level. However this will work only if the \ident{zinc} widget + support the openGL rendering. \end{itemize} \section{Clipping and groups} -All the items inside a group can be clipped with one of the item (the ``clipper'') of the group. The clipper item must be of the following type: \objectref{rectangle}, \objectref{curve}, \objectref{bezier}, \objectref{arc}. XXX TBC! As items \objectref{curve} can have multiple contours (i.e. with hole(s) or made of disjoint parts) this allows the design of some objects very trickky or weird to implement with other widgets or toolkits. +All the items inside a group can be clipped with one of the item (the ``clipper'') +of the group. The clipper item must be of the following type: + \objectref{rectangle}, \objectref{curve}, \objectref{bezier}, \objectref{arc}. + XXX TBC! As items \objectref{curve} can have multiple contours +(i.e. with hole(s) or made of disjoint parts) this allows the design of +some objects very trickky or weird to implement with other widgets or toolkits. \section{Other functions related to groups} -A group may be \attributeref{atomic}. This means that the group will catch and treat events normally caught by the group children. The typical use is for binding the same callbacks to many items composing a group. As \attributeref{atomic} is an attribute, it may be modified dynamically, thus modifying the group comportment. +A group may be \attributeref{atomic}. This means that the group will catch +and process events normally caught by the group children. The typical use is +for binding the same callbacks to many items composing a group. +As \attributeref{atomic} is an attribute, it may be modified dynamically, +thus modifying the group comportment. -A group may be cloned with the \cmdref{clone} command. This will clone the group and all its children. +A group may be cloned with the \cmdref{clone} command. This will clone the group +and all its children. -Finally, a group may be deleted as a whole with the \cmdref{remove} command. However, it is also possible to delete only a child, by applying the \cmdref{remove} command directly to the child. +Finally, a group may be deleted as a whole with the \cmdref{remove} command. +However, it is also possible to delete only a child, by applying the +\cmdref{remove} command directly to the child. -\concept{tagOrId} \chapter{Item IDs and Tags} +\concept{tagOrId} id tag all @@ -711,13 +713,13 @@ n' Parler de current, all. -\concept{indices} \chapter{Indices} +\concept{indices} XXX c'est quoi? Voir la commande index. -\concept{commands} \chapter{Widget commands} +\concept{commands} The available commands are listed in alphabetical order. @@ -1854,8 +1856,8 @@ reference) and all list parameters are given as array references. \end{blockindent} -\concept{types} \chapter{Attribute types} +\concept{types} \attrtype{alignment} \begin{blockindent} @@ -2177,12 +2179,12 @@ reference) and all list parameters are given as array references. -\concept{labelsandfields} \chapter{Labels, label formats and fields} +\concept{labelsandfields} +\section {Labels, label formats} \concept{label} \concept{labelformat} -\section {Labels, label formats} \object{field} \section{Attributes for fields} @@ -2250,8 +2252,8 @@ Applicable attributes for fields are: Specifies if the field is displayed. The default value is {\tt true}.} -\concept{items} \chapter{Item types} +\concept{items} This chapter introduces the item types that can be used in \ident{zinc}. Each item type provides a set of options that may be used to query or change the @@ -2260,8 +2262,8 @@ use special parameters with some command. Those cases are noted in the descripti of the item. -\object{group} \section{Group items} +\object{group} Group items are used for grouping objects together. Their usage is very powerfull and their use is best described in a previous chapter @@ -2294,8 +2296,8 @@ Applicable attributes for \ident{group} are: displayed. The defaut value is {\tt true}.} -\object{track} \section{Track items} +\object{track} Track items have been designed for figuring out typical radar information for Air Traffic Control. However they may certainly be used by other kinds of @@ -2324,16 +2326,18 @@ be set such as color, width, ticks... Its partName is \ident{speedvector} The following picture shows a simple \ident{track} with a label of 5 fields and 5 past positions. -\ifpdf - \includegraphics{trackexemple} -\else -\latexhtml{ - \htmladdimg{trackexemple.png} - } -\fi +\includeimage{trackexemple} -An other very important feature of \ident{track} is that \ident{zinc} offers an anti-overlap manager. This manager tries to avoid any overlap of tracks labels. It also avoids that the label overlap the speedvector. This manager is stable over time: there should be few cases where labels are moved to a very different position. This manager applies to all tracks included in a group (by default the group 1). It can be enabled/disabled with the attributes XXX. New labels positions are computed by the overlap manager every time a track is moved, a track is created or destroyed and every time the \ident{zinc} widget is resized. -Due to software licence limitation, \ident{zinc} {\bf DO NOT include} the very last version of this anti-overlap manager. +An other very important feature of \ident{track} is that \ident{zinc} offers an +anti-overlap manager. This manager tries to avoid any overlap of tracks labels. +It also avoids that the label overlap the speedvector. This manager is stable +over time: there should be few cases where labels are moved to a very different +position. This manager applies to all tracks included in a group (by default the +group 1). It can be enabled/disabled with the attributes XXX. New labels +positions are computed by the overlap manager every time a track is moved, +a track is created or destroyed and every time the \ident{zinc} widget is resized. +Due to software licence limitation, \ident{zinc} {\bf DO NOT} include the very last + version of this anti-overlap manager. Applicable attributes for \ident{track} @@ -2456,8 +2460,8 @@ The default is {\tt false}.} be displayed. The default value is {\tt 6}.} -\object{waypoint} \section{WayPoint items} +\object{waypoint} Waypoints items have been initially designed for figuring out typical fixed position objects (i.e. beacons or fixes in the ATC vocabulary) with @@ -2562,8 +2566,8 @@ Applicable attributes for \ident{waypoint} are: value is {\tt true}.} -\object{tabular} \section{Tabular items} +\object{tabular} Tabular items have been initially designed for displaying block of textual information, organised in lists or spread out on a radar display. @@ -2603,8 +2607,8 @@ Applicable attributes for \ident{tabular} are: value is {\tt true}.} -\object{text} \section{Text items} +\object{text} Text items are used for displaying text. They can also be used for text input. In this case, they must get the focus for keyboards events with the command \cmdref{focus}. @@ -2659,8 +2663,8 @@ Applicable attributes for \ident{text} are: The default value is {\tt 0}.} -\object{icon} \section{Icon items} +\object{icon} Icon items are used for XXX. @@ -2697,8 +2701,8 @@ Applicable attributes for \ident{icon} are: value is {\tt true}.} -\object{reticle} \section{Reticle items} +\object{reticle} Reticle items are used for XXX. @@ -2742,8 +2746,8 @@ Applicable attributes for \ident{reticle} are: value is {\tt true}.} -\object{map} \section{Map items} +\object{map} Map items are used for XXX. @@ -2779,8 +2783,8 @@ Map items are used for XXX. value is {\tt true}.} -\object{rectangle} \section{Rectangle items} +\object{rectangle} Items of type \ident{rectangle} display a rectangular shape, optionally @@ -2830,9 +2834,8 @@ Map items are used for XXX. value is {\tt true}.} -\object{arc} \section{Arc items} - +\object{arc} Items of type \ident{arc} display an oval section, optionally filled, delimited by two angles. The oval is described by its enclosing rectangle. @@ -2902,8 +2905,8 @@ Map items are used for XXX. value is {\tt true}.} -\object{curve} \section{Curve items} +\object{curve} Items of type \ident{curve} display a path of line segments connected by their @@ -2976,8 +2979,8 @@ Map items are used for XXX. value is {\tt true}.} -\object{bezier} \section{Bezier items} +\object{bezier} Items of type \ident{bezier} display a path of Bezier cubic segments connected @@ -3043,15 +3046,16 @@ Applicable attributes for \ident{bezier} are: value is {\tt true}.} -\object{triangles} \section{Triangles items} +\object{triangles} Triangles items are used for XXX. Applicable attributes for \ident{triangles} are: -\attribute{colors}{gradientarray}{Specifies the colors of each vertex of the triangles XXX.} +\attribute{colors}{gradientarray}{Specifies the colors of each vertex of the + triangles XXX.} \attribute{composerotation}{boolean}{Specifies if the current rotation should be composed with the local transform. The default value is {\tt true}.} \attribute{composescale}{boolean}{Specifies if the current scale should be @@ -3067,8 +3071,8 @@ Applicable attributes for \ident{bezier} are: value is {\tt true}.} -\object{window} \section{Window items} +\object{window} Items of type \ident{window} display an X11 window at a given position in the widget. @@ -3124,16 +3128,8 @@ Applicable attributes for \ident{window} are: The default value is {\tt ""}.} -<<<<<<< variant A -\concept{mapinfocmds} \chapter{The mapinfo commands} ->>>>>>> variant B -\chapter{The mapinfo command} -\label{mapinfocmd} -####### Ancestor -\chapter{The \ident{mapinfo} command} -\label{mapinfocmd} -======= end +\concept{mapinfocmds} MapInfo objects are used to describe graphical primitives that will be displayed in map items. It is possible to describe lines, arcs, symbols @@ -3246,14 +3242,8 @@ Applicable attributes for \ident{window} are: -<<<<<<< variant A -\concept{videomapcmds} \chapter{The videomap commands} ->>>>>>> variant B -\chapter{The videomap command} -####### Ancestor -\chapter{The \ident{videomap} command} -======= end +\concept{videomapcmds} \command{videomap}{ids}{fileName} \begin{blockindent} @@ -3273,8 +3263,8 @@ Applicable attributes for \ident{window} are: -\concept{otherresources} \chapter{Other resources provided by the widget} +\concept{otherresources} \section{Bitmaps} \label{builtinbitmaps} @@ -3284,51 +3274,17 @@ Zinc creates two sets of bitmaps. The first set contains symbols for ATC tracks, maps and waypoints, these bitmaps are named AtcSymbol1 to AtcSymbol22. -<<<<<<< variant A -\ifpdf - \includegraphics{atcsymb} -\else -\latexhtml{ ->>>>>>> variant B -\ifpdf - \includegraphics{atcsymb} -\else -\latexhtml{% - \includegraphics{atcsymb.ps}}{% -####### Ancestor -\latexhtml{% - \includegraphics{atcsymb.ps}}{% -======= end - \htmladdimg{atcsymb.png} - } -\fi +\includeimage{atcsymb} The second set provides stipples that can be used to implement transparency, they are named AlphaStipple0 to AlphaStipple15, AlphaStipple0 being the most transparent. -<<<<<<< variant A -\ifpdf - \includegraphics{alphastip} -\else -\latexhtml{ ->>>>>>> variant B -\ifpdf - \includegraphics{alphastip} -\else -\latexhtml{% - \includegraphics{alphastip.ps}}{% -####### Ancestor -\latexhtml{% - \includegraphics{alphastip.ps}}{% -======= end - \htmladdimg{alphastip.png} - } -\fi +\includeimage{alphastip} + +\latexhtml{\tolerance 2000 %allow somewhat looser lines. + \hbadness 10000}{} %don't complain about underfull lines. -\ifpdf\else\latex {\tolerance 2000 %allow somewhat looser lines. - \hbadness 10000 } %don't complain about underfull lines. -\fi \section{ZincDebug.pm} -- cgit v1.1