index    previous    next

USER DEFINED CATEGORIES

All graphics objects can be assigned a set of predefined properties. The properties determine the colour, outline thickness, line end types and whether or not an object is filled.

All objects can also belong to multiple user defined categories. e.g. several lines can belong to a window.

Categories can also be assigned a set of predefined properties. When an object belongs to a category, it takes on the properties of that category.

Categories can have complex user defined structures. If we were to define a category called 'train' that has red lines, blue circles and yellow rectangles. We could then mark several objects of a drawing as belonging to that category, all the train lines would then be drawn as red, the train circles as blue and the train rectangles as yellow. If we then went on to modify the 'train' category so that all train lines were green, the drawing would immediately change and all the lines marked as belonging to the train would change to green.

From a drawing point of view, categories let us easily group several components of a drawing together and conveniently manipulate some properties of the group, e.g. line thickness or colour. However, if IPAD is being used as a front end to some third party software such as a code generator, categories have a different role. They let us mark objects with user defined DOC_NAME,INDX_DOC_NAME,NEXT_DOC_NAME,PREV_DOC_NAME,TMPL_NAME,__file__,__gnu__,__line__,__m4_version__,__unix__,builtin,changecom,changequote,changesyntax,debugfile,debugmode,decr,define,defn,divert,divnum,dnl,dumpdef,errprint,esyscmd,eval,format,ifdef,ifelse,include,incr,index,indir,len,m4exit,m4wrap,maketemp,patsubst,popdef,pushdef,regexp,shift,sinclude,substr,symbols,syncoutput,syscmd,sysval,traceoff,traceon,translit,undefine,undivert and allow us to easily visualise which objects have been marked by virtue of their properties when drawn on the screen or to paper.

A simple example of this would be where we draw two circles connected by a line. One of circles could be marked as belonging to the 'switch input' category, the other to the 'lamp output' category and the connecting line marked as belonging to the 'output follows input' category.

Categories also allow us to easily build components which can then be used as building blocks from which more complex components can be built. e.g. a group of lines could belong to the window category, the window could itself belong to the door category and also the house category, the colour of the window in the door can be different to the colour of the window on the house simply be overriding the colour in the house or door category. The colour of the window remains the same unless it is used as a door window or a house window.

When specifying the categories to which an object belongs, it is not necessary to list all the categories individually, since a category can be built using other categories. The category dialog allows us to quickly and easily edit the category list of an individual object or group of objects and also change the properties of the categories.

The category dialog consists of: