FStaals.net → Software  → Hipe

Hipe

Support for reading and writing ipe7 files (http://ipe7.sourceforge.net)

API docs

Changelog

0.2

  • Added/switched to other data types representing a Drawing/Page/Layer. The old data types were nice/usefull for the translation into the ipe xml file, but not so much to work with as a user. The new data types are tailered to that, i.e. a drawing is (just) a list of pages, a page is a list of layers and some views, and a layer is really something that has a name and a number of geometry objects associated with it.

    This dramatically changed the place where things were defined. IpeTypes now actually contains the most ``generic'' definitions. The more basic stuff is in InternalTypes. However everything you should need is exported by IpeTypes (and the new Ipe module. See below.)

  • Switched to arrows instead of the functions in IpeGeometry. What we basically want to do is: given a drawing, run some computation that produces another drawing. This was fine if the computation was a pure function, but not so much if the computation also did IO etc.

  • Removed the ViewInstances. Functionality like this may reappear in the future. (or at least the possibility to get all objects that are visible in a certain view.)

  • Added a single Ipe module (Data.Geometry.Ipe.Ipe) that exports most of the things from the other modules that you would need

  • The IsConvertableToIpeObject typeclasses now use Type Families, so you can also use the typeclass with other types

  • added convenience functions to work with attributes of objects (i.e. things that implement HasAttributes)

  • The type constraints to be in the typeclass Coordinate (as used in the Pickling) are stricter now. Types should now also be in Fractional. This does allow us to provide a default implementation for most functions.

  • Some changes in the data types used to represent IpeStyle, Preamble, and possible Bitmaps.

0.1.1

  • Updated to Hxt 9.3, to get ipe to compile using GHC 7.6

0.1

  • Initial release.