Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.postscript > #1193

Re: Keeping values of a temporary dictionary

From Cecil Westerhof <Cecil@decebal.nl>
Newsgroups comp.lang.postscript
Subject Re: Keeping values of a temporary dictionary
Organization Decebal Computing
References <87han8c43o.fsf@Compaq.site.inet>
Date 2012-12-26 18:21 +0100
Message-ID <87zk10afux.fsf@Compaq.site.inet> (permalink)

Show all headers | View raw


Op woensdag 26 dec 2012 14:52 CET schreef Cecil Westerhof:

> I am trying to set colours to use depending on an input varable. I
> have the following code:
> currentdict
> /setColours 5 dict def
> %setColours begin
> /previousDict exch def
> /LG_BL_YE {
> /gradient1 { colorLimeGreen         } def
> /gradient2 { colorBlue              } def
> /textColor { colorYellow            } def
> } def
> /FG_MFG_YE {
> /gradient1 { colorForestGreen       } def
> /gradient2 { colorMediumForestGreen } def
> /textColor { colorYellow            } def
> } def
> /FG_MFG_WH {
> /gradient1 { colorForestGreen       } def
> /gradient2 { colorMediumForestGreen } def
> /textColor { colorWhite             } def
> } def
> /FG_MFG_DG {
> /gradient1 { colorForestGreen       } def
> /gradient2 { colorMediumForestGreen } def
> /textColor { colorDarkGreen         } def
> } def
> COLOUR_SCHEME where {
> COLOUR_SCHEME get exec
> }{
> % ### message no COLOUR_SCHEME
> /gradient1 { colorNavy              } def
> /gradient2 { colorNavy              } def
> /textColor { colorYellow            } def
> } ifelse
> %previousDict /gradient1 { gradient1 } put
> %end
>
> I would like to use the temporary dictionary setColours to set the
> gradient and text colours. But when I remove the comments, the
> script hangs. What is the correct way to do it?

Found it:
    /setColourScheme 25 dict def
    setColourScheme begin
        /FG_MFG_DG {
            /gradient1 { colorForestGreen       } def
            /gradient2 { colorMediumForestGreen } def
            /textColor { colorDarkGreen         } def
        } def
        /FG_MFG_WH {
            /gradient1 { colorForestGreen       } def
            /gradient2 { colorMediumForestGreen } def
            /textColor { colorWhite             } def
        } def
        /FG_MFG_YE {
            /gradient1 { colorForestGreen       } def
            /gradient2 { colorMediumForestGreen } def
            /textColor { colorYellow            } def
        } def
        /LG_BL_YE {
            /gradient1 { colorLimeGreen         } def
            /gradient2 { colorBlue              } def
            /textColor { colorYellow            } def
        } def
        /MBL_MBL_OL {
            /gradient1 { colorMediumBlue        } def
            /gradient2 { colorMediumBlue        } def
            /textColor { colorOlive             } def
        } def
        /NA_NA_YE {
            /gradient1 { colorNavy              } def
            /gradient2 { colorNavy              } def
            /textColor { colorYellow            } def
        } def
        /NA_NAB_YE {
            /gradient1 { colorNavy              } def
            /gradient2 { colorNavyBlue          } def
            /textColor { colorYellow            } def
        } def
        /OR_ORR_YE {
            /gradient1 { colorOrange            } def
            /gradient2 { colorOrangeRed         } def
            /textColor { colorYellow            } def
        } def
        /PU_IND_YE {
            /gradient1 { colorPurple            } def
            /gradient2 { colorIndigo            } def
            /textColor { colorYellow            } def
        } def
        /RE_RE_YE {
            /gradient1 { colorRed               } def
            /gradient2 { colorRed               } def
            /textColor { colorYellow            } def
        } def
        /SCA_SCA_YE {
            /gradient1 { colorScarlet           } def
            /gradient2 { colorScarlet           } def
            /textColor { colorYellow            } def
        } def
        /SIE_SIE_VDB {
            /gradient1 { colorSienna            } def
            /gradient2 { colorSienna            } def
            /textColor { colorVeryDarkBrown     } def
        } def
        /SKB_SKB_NA {
            /gradient1 { colorSkyBlue           } def
            /gradient2 { colorSkyBlue           } def
            /textColor { colorNavy              } def
        } def
        /YEG_YEG_NA {
            /gradient1 { colorYellowGreen       } def
            /gradient2 { colorYellowGreen       } def
            /textColor { colorNavy              } def
        } def
        COLOUR_SCHEME where {
            COLOUR_SCHEME get exec
        }{
            % ### message no COLOUR_SCHEME
            /gradient1 { colorNavy              } def
            /gradient2 { colorNavy              } def
            /textColor { colorYellow            } def
        } ifelse
    end
    /gradient1 setColourScheme /gradient1 get def
    /gradient2 setColourScheme /gradient2 get def
    /textColor setColourScheme /textColor get def

Maybe I should write a function to retrieve the values.
Not very important, but is it possible to delete setColourScheme? It
has no use after this.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Back to comp.lang.postscript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Keeping values of a temporary dictionary Cecil Westerhof <Cecil@decebal.nl> - 2012-12-26 14:52 +0100
  Re: Keeping values of a temporary dictionary Cecil Westerhof <Cecil@decebal.nl> - 2012-12-26 18:21 +0100
    Re: Keeping values of a temporary dictionary Cecil Westerhof <Cecil@decebal.nl> - 2012-12-26 19:02 +0100
      Re: Keeping values of a temporary dictionary Cecil Westerhof <Cecil@decebal.nl> - 2012-12-27 17:52 +0100
        Re: Keeping values of a temporary dictionary sjprouty3765@gmail.com - 2012-12-28 12:31 -0800
          Re: Keeping values of a temporary dictionary Cecil Westerhof <Cecil@decebal.nl> - 2012-12-28 22:54 +0100
    Re: Keeping values of a temporary dictionary luser- -droog <mijoryx@yahoo.com> - 2012-12-26 15:34 -0800

csiph-web