Tuesday, August 21, 2012

E v2.0 (1997)

In 1997, about a year after writing E, I went on a 72-hour coding rampage during the summer and wrote the vast majority of a second version of my editor.  In terms of functionality, the biggest difference was mouse support pretty much everywhere, as well as a region-filling tool.  The interface was also jazzed up a bit.  Code-wise, the new version was much cleaner, but organization took a hit when I busted the 64k segment size limit and had to break it up into units using overlays.

Looking back I'm somewhat taken aback at the amount of functionality I crammed into the UI and mouse support: drag and drop of color swatches, windows with checkboxes, radio buttons, command buttons, file browsing dialogs, scrollbars, the works.  Here's a partial functionality list:
  • mouse support everywhere
  • individual pixel drawing, lines, rectangles, ovals and fills
  • many methods to pick colors:
    • a full-screen palette
    • a mini-palette (full green-blue spectrum for a given red value)
    • red-green-blue level pickers
    • smooth shading gradient swatches; the user set either end of a gradient and the editor computed the intermediate colors
  • a console to enter commands
  • rectangular area selection
  • many effects like blurring, sharpening, adding noise, tinting, black and white, etc.
  • a basic but amusing-looking windowing system

No comments:

Post a Comment