# Torrus Styling Profile Guide

## Styling Profiles

Styling profiles allow for symbolic names to be used in place of hard coded values for `line-color` and `line-style`.

### Schema Definitions

The following styles are defined in the default schema.

- Required Styles (`line-style`, `line-color`)

      SingleGraph            HWBoundary             HWFailure
         HruleMin           HruleNormal              HruleMax
            BpsIn                BpsOut

- Generic Symbolic styles (`line-color` only)

      in                   out

- Symbolic, Symbolic names, for default use in graphs that have up to ten items (`line-color` only)

        one                   two                 three
       four                  five                   six
      seven                 eight                  nine
        ten

- Symbolic names for combinatorial graphing (`line-style`, `line-color`)

        red1                  red2                  red3
        red4                green1                green2
      green3                green4                 blue1
       blue2                 blue3                 blue4

- Color definitions from the TT2 rgb example set (`line-color` only)

  Defined in /usr/share/torrus/sup/styling/colornames.pl

        black                grey25                grey50
       grey75                 white                   red
        red25                 red50                 red75
        green               green25               green50
      green75                  blue                blue25
       blue50                blue75                 blood
      scarlet                  rose                orange
         leaf                   bud                  mint
       marine                   sky                 mauve
        lilac

- Color definitions for web html colors (`line-color` only)

  Defined in /usr/share/torrus/sup/styling/colornames.pl

                 aliceblue          antiquewhite                  aqua
                aquamarine                 azure                 beige
                    bisque        blanchedalmond            blueviolet
                     brown             burlywood             cadetblue
                chartreuse             chocolate                 coral
            cornflowerblue              cornsilk               crimson
                      cyan              darkblue              darkcyan
             darkgoldenrod              darkgray             darkgreen
                 darkkhaki           darkmagenta        darkolivegreen
                darkorange            darkorchid               darkred
                darksalmon          darkseagreen         darkslateblue
             darkslategray         darkturquoise            darkviolet
                  deeppink           deepskyblue               dimgray
                dodgerblue             firebrick           floralwhite
               forestgreen               fuchsia             gainsboro
                ghostwhite                  gold             goldenrod
                      gray           greenyellow              honeydew
                   hotpink             indianred                indigo
                     ivory                 khaki              lavender
             lavenderblush             lawngreen          lemonchiffon
                 lightblue            lightcoral             lightcyan
      lightgoldenrodyellow            lightgreen             lightgrey
                 lightpink           lightsalmon         lightseagreen
              lightskyblue        lightslategray        lightsteelblue
               lightyellow                  lime             limegreen
                   magenta                maroon      mediumaquamarine
                mediumblue          mediumorchid          mediumpurple
            mediumseagreen       mediumslateblue     mediumspringgreen
           mediumturquoise       mediumvioletred          midnightblue
                 mintcream             mistyrose              moccasin
               navajowhite                  navy               oldlace
                     olive             olivedrab             orangered
                    orchid         palegoldenrod             palegreen
             paleturquoise         palevioletred            papayawhip
                 peachpuff                  peru                  pink
                      plum            powderblue                purple
                 rosybrown             royalblue           saddlebrown
                    salmon            sandybrown              seagreen
                  seashell                sienna                silver
                   skyblue             slateblue             slategray
                      snow           springgreen             steelblue
                       tan                  teal               thistle
                    tomato             turquoise                violet
                     wheat            whitesmoke                yellow

### Schema Overlay

WARNING: Some styles are mandatory

Schema overlays allow the user to extend or override the styles defined in the default schema. The schema overlays are formatted in the form of a hash of hashes.

- Extending the schema:

  To add the styles, `##onefish`, `##twofish`, `##redfish`, `##bluefish` the following entries should be created in a descriptive file located in the `styling` directory.

  `fish-schema.pl`

      $Torrus::Renderer::graphStyles{'onefish'}{'color'} = '##darkred';
      $Torrus::Renderer::graphStyles{'onefish'}{'line'} = 'LINE1';

      $Torrus::Renderer::graphStyles{'twofish'}{'color'} = '##red';
      $Torrus::Renderer::graphStyles{'twofish'}{'line'} = 'LINE2';

      $Torrus::Renderer::graphStyles{'redfish'}{'color'} = '##yellow';

      $Torrus::Renderer::graphStyles{'bluefish'}{'color'} = '##deeppink';

  Other methods of adding to the hash of hashes are also acceptable.

- Overriding Styles:

  To override specific styles in the existing schema, `##in`, `##out`, entries similar to the following should be created in a Perl file, preferably located in the local configuration directory.

  `in_out-override-schema.pl`

      $Torrus::Renderer::graphStyles{'in'}{'color'} = '##yellow';
      $Torrus::Renderer::graphStyles{'out'}{'color'} = '##maroon';

  Other methods of adding to the hash of hashes are also acceptable.

- Applying your Overlay

  1. In the torrus-siteconfig.pl file, add the variable

     $Torrus::Renderer::stylingProfileOverlay = $Torrus::Global::cfgSiteDir . '/in_out-override-schema.pl';

  2. Restart apache

  You may have to wait for the image cache to clear before the changes take effect.

### Schema Replacement

To replace a schema, create a new schema using torrus-schema.pl as a guide. Remember some styles are mandatory.

1. Applying your Schema

  In the torrus-siteconfig.pl file, add the variable

      $Torrus::Renderer::stylingProfile = "Your-schema";

2. Restart apache

You may have to wait for the image cache to clear before the changes take effect.

# Author

Copyright (c) 2003 Shawn Ferry