name: wumpus-basic
version: 0.17.0
license: BSD3
license-file: LICENSE
copyright: Stephen Tetley
maintainer: Stephen Tetley
homepage: http://code.google.com/p/copperbox/
category: Graphics
synopsis: Basic objects and system code built on Wumpus-Core.
description:
.
Kernel code for higher-level drawing built on Wumpus-Core.
This package provides font loader code (limited to AFM font
files) and a various /drawing objects/ intended to be a
higher-level basis to make vector drawings than the primitives
(paths, text labels) provided by Wumpus-Core.
.
\*\* WARNING \*\* - this package is alpha grade and it is
strongly coupled to the package @Wumpus-Drawing@ which is
sub-alpha grade. The packages are split as it is expected they
will have different development speeds - @Wumpus-Basic@ needs
polishing and refinement; @Wumpus-Drawing@ simply needs a lot of
work to move its components from /proof-of-concept/ ideas to
being readily usable.
.
.
NOTE - the demos that were previously included are now in the
package @Wumpus-Drawing@.
.
.
Changelog:
.
v0.16.0 to v0.17.0:
.
* Changed representation of ContextFuns - context funs are no
longer an arity family of newtypes. The new representation
is simpler, but some of the opportunities for overloading
have been lost.
.
* Substantial round of renaming for the @DrawingContext@ types
an query and update functions.
.
* Re-worked the font metrics and font loader modules. The new
names should be more systematic. Removed the need for the
GhostScript font modules to match PostScript names to
GhostScript font files.
.
* Superceded the PointSupplyM class by adding snapping grid
scaling to the DrawingContext.
.
* Removed @ScalingContext@ module.
.
* Made text colour a distinct property in the DrawingContext.
Text is now drawn with the text colour rather than the stroke
colour.
.
* Added FontLoadLog to the DrawingContext - this allows access
to the errors recorded during font loading.
.
v0.15.0 to v0.16.0:
.
* Moved the Geometry modules from Wumpus-Drawing into
Wumpus-Basic.
.
* Re-worked the @CtxPicture@ API, although the current naming
scheme is not satisfactory.
.
* Added extra Anchor classes.
.
* Added @PosImage@ object - this is a rectangle-framed object
that can be drawn from any of its corners or its center.
.
* Added @CF3@, an arity three /ContextFunction/.
.
* Added @Displacement@ module. This defines the @PointDisplace@
type and provides a library of @PointDisplace@ functions.
Note - some of the new functions have taken names previously
used for anchor projection functions (@northwards@,
@southwards@, etc.), anchor projections are now build with the
function @projectAnchor@.
.
* Added the property @descender@ to the font metrics.
.
* Split drawing primitives from type in @Objects.Graphic@,
drawing primitives are now in the module
@Objects.DrawingPrimitives@.
.
v0.14.0 to v0.15.0:
.
* Split previous @Wumpus-Basic@ package into two packages:
@Wumpus-Basic@ and @Wumpus-Drawing@. This is a pratical move
to separate the developed (although not yet polished) @Kernel@
and @FontLoader@ code from the prototypical @Drawing@ code.
.
* Renamed the @Drawing@ object to @CtxPicture@. Although
@CtxPicture@ is a less pleasant name, it should be less
confusing. A @CtxPicture@ is the essentially the @Picture@
type from Wumpus-Core with an implicit context -
@ContextPicture@ is simply too long and @CtxPicture@ is
almost jibberish but the previous unrelated name @Drawing@
was not helpful.
.
* @Kernel.Base.ScalingContext@ has been simplified.
ScalingContexts are no longer manipulated via a custom Reader
monad or transformer as the type signatures were too unwieldy.
.
* Added @TextMargin@ to the @DrawingContext@ - Wumpus-Drawing
can now calculate more appealing bounding boxes for text.
.
build-type: Simple
stability: highly unstable
cabal-version: >= 1.2
extra-source-files:
CHANGES,
LICENSE,
demo/AltUnits.hs,
demo/FontDeltaPic.hs,
demo/SimpleAdvGraphic.hs,
demo/SimplePosObject.hs
library
hs-source-dirs: src
build-depends: base < 5,
containers >= 0.3 && <= 0.6,
directory >= 1.0 && < 2.0,
filepath >= 1.1 && < 2.0,
vector-space >= 0.6 && < 1.0,
wumpus-core >= 0.50.0 && < 0.51.0
exposed-modules:
Wumpus.Basic.Geometry,
Wumpus.Basic.Geometry.Base,
Wumpus.Basic.Geometry.Intersection,
Wumpus.Basic.Geometry.Paths,
Wumpus.Basic.Geometry.Quadrant,
Wumpus.Basic.Kernel,
Wumpus.Basic.Kernel.Base.BaseDefs,
Wumpus.Basic.Kernel.Base.ContextFun,
Wumpus.Basic.Kernel.Base.DrawingContext,
Wumpus.Basic.Kernel.Base.FontSupport,
Wumpus.Basic.Kernel.Base.QueryDC,
Wumpus.Basic.Kernel.Base.Units,
Wumpus.Basic.Kernel.Base.UpdateDC,
Wumpus.Basic.Kernel.Base.WrappedPrimitive,
Wumpus.Basic.Kernel.Objects.AdvObject,
Wumpus.Basic.Kernel.Objects.Anchors,
Wumpus.Basic.Kernel.Objects.Basis,
Wumpus.Basic.Kernel.Objects.Bounded,
Wumpus.Basic.Kernel.Objects.Chain,
Wumpus.Basic.Kernel.Objects.Concat,
Wumpus.Basic.Kernel.Objects.Connector,
Wumpus.Basic.Kernel.Objects.CtxPicture,
Wumpus.Basic.Kernel.Objects.Displacement,
Wumpus.Basic.Kernel.Objects.DrawingPrimitives,
Wumpus.Basic.Kernel.Objects.Image,
Wumpus.Basic.Kernel.Objects.LocImage,
Wumpus.Basic.Kernel.Objects.LocThetaImage,
Wumpus.Basic.Kernel.Objects.Orientation,
Wumpus.Basic.Kernel.Objects.PosObject,
Wumpus.Basic.Kernel.Objects.TraceDrawing,
Wumpus.Basic.System.FontLoader,
Wumpus.Basic.System.FontLoader.AfmParserBase,
Wumpus.Basic.System.FontLoader.AfmTopLevel,
Wumpus.Basic.System.FontLoader.AfmV2Parser,
Wumpus.Basic.System.FontLoader.AfmV4Dot1Parser,
Wumpus.Basic.System.FontLoader.Datatypes,
Wumpus.Basic.System.FontLoader.FontLoadMonad,
Wumpus.Basic.System.FontLoader.GSTopLevel,
Wumpus.Basic.Utils.HList,
Wumpus.Basic.Utils.FormatCombinators,
Wumpus.Basic.Utils.JoinList,
Wumpus.Basic.Utils.ParserCombinators,
Wumpus.Basic.Utils.TokenParsers,
Wumpus.Basic.VersionNumber
other-modules:
extensions:
ghc-options:
includes: