Revision history for Graphics-Primitive
0.67 2015-01-21
- Allow default font to be overridden with $GRAPHICS_PRIMITIVE_DEFAULT_FONT
and default MSWin32 to 'Arial' (TobyLL)
0.66 2014-01-04
- Add a missing requires on Data::Visitor::Callback (tests failed without it)
- Convert "Changes" to the CPAN::Changes spec.
0.65 2014-03-31
- Make a TextLayout's component a weak_ref to prevent circular references.
0.64 2014-02-17
- POD encoding fixes (thanks Gregor Herrmann)
0.63 2014-02-17
- Doc speclling fixes (thanks Gregor Herrmann!)
0.61 2011-06-02
- Fix broken merge (thanks Ansgar Burchardt)
0.60 2011-05-05
- If minimum_width or minimum_height is set, don't allow height or width to
be set to anything smaller!
0.53 2011-02-18
- Add callback to Component
0.52 2010-08-21
- POD updates
0.51 2010-03-22
- Convert all remaining uses of AttributeHelpers with native traits
(Florian Ragwitz).
0.50 2010-03-09
- Convert Path to use Moose's native traits rather than AttributeHelpers
0.49 2010-01-10
- Remove typing for Path's primitives accessor
0.48 2009-12-24
- Add _draw_arc to Driver's require
0.47 2009-12-24
- Use BUILD and triggers to handle Border's color & width in constructor
and via setting width/color.
0.46 2009-11-10
- Add JSON::Any dependency (Thanks NPW via RT)
0.45 2009-10-02
- Add antialias_mode, hint_style, hint_metrics and subpixel_order attributes
to Font.
0.44 Unknown
- Fix typo in Canvas' hints attribute
0.43 Unknown
- README update
0.42 Unknown
- Reverting 0.41 (ha!)
- Add width to insets, sets all insets in one call
0.41 Unknown
- Don't re-layout already laid out textboxes (might get reverted)
0.40 Unknown
- Fix some deprecated Moose stuff
0.39 Unknown
- POD fixes
- Don't short-circuit TextBox prepare if there are lines or a layout.
- If there's no layout, don't try and create one. This breaks things.
0.38 Unknown
- Fix error in Component->outside_width
0.37 Unknown
- More POD fixes
0.36 Unknown
- POD fixes
0.35 Unknown
- Gradient: Break out into separate Line and Radial classes
0.34 Unknown
- Move pod tests to t/author
0.33 Unknown
- Driver: Don't mark things prepared, that's Layout::Manager's job
- TextBox: simplify logic and return from prepare immediately after super if
there is no text
- TextBox: make some 'enumed' attributes plain Strings, since different
drivers will have different values
- Remove Text::Flow requirement
0.32 Unknown
- Fix POD typo (thanks Brian Cassidy)
- TextBox: Don't resize during prepare unless it's new minimums are bigger
- Fix TextLayout's POD (thanks Brian Cassidy)
- Driver: add _draw_bezier to requires (thanks Budrica Petre Cosmin)
0.31 Unknown
- Fix POD typo (thanks Brian Cassidy)
- Driver: Add _draw_circle and _draw_ellipse
- Bump Deps
- Revamp text handling, see Driver::TextLayout
0.30 Unknown
- Bump Forest dependency to 0.4 to ease Win32 problems
0.29 Unknown
- MooseX::Storage support
- Rename pack to finalize
0.28 Unknown
- Require _draw_polygon method for Driver role
0.27 Unknown
- Fill: Make paint a required attribute
- Operations: Make Fill and Stroke clone properly
0.26 Unknown
- Add Image component (experimental)
- POD fixes
- Component: make parent a weakref
0.25 Unknown
- TextBox: Normalize multi-line rendering on line height
0.24 Unknown
- TextBox: Fix broken multi-line rendering
0.23 Unknown
- Component: Add parent attribute
- Container: Set and unset parent attribute on add/remove/clear
- Add Aligned role
- Textbox: Use Aligned role
- POD updates
0.22 Unknown
- Properly append component lists in find.
0.21 Unknown
- Remove duplicate code in Driver's prepare method
0.20 Unknown
- Fix accidentally marking containers as prepared when they are not
0.19 Unknown
- Component: Add class attribute
- ComponentList: Add each and find
0.18 Unknown
- Add ComponentList and use it to keep container components.
- Container: find_component now returns the component's index, not the
component.
0.17 Unknown
- Useless whitespace changes
- POD typos fixed
- Border: switch from a single width to per-side Brushes
- Brush: add derive, equal_to and not_equal_to
- Border: now cloneable
- Border: add homogeneous, equal_to and not_equal_to
- Insets: ad as_array
0.16 Unknown
- Opps, I forgot. :(
0.15 Unknown
- Add prepared flag to components. Attributes that affect rendering have
been modified to set prepared to 0 via a trigger. Any new attributes
added henceforth should do the same.
- Containers (being Components) also have a prepared flag, but it is set
to true by the layout manager, not by the container itself. Also, a
container is not prepared unless all of it's child components are
prepared. See Layout::Manager for more details.
- TextBox: Fix bug when prepared & packed with text attribute set
- POD
0.14 Unknown
- TextBox: handle text layout with Text::Flow
- Component: coercion of Insets from ArrayRef and Num
- Add pop_component to Container for removing the last component.
- POD updates
- Component: explicitly return from outside_width and outside_height
- Component: if minimum width or height are set already, don't change them
in prepare
- Font: add derive
0.13 Unknown
- Reorganize prepare/pack/draw API to be handled by the Driver
- Add _resize and _finish_page to Driver API
- Component: Add page attribute
- Driver: Don't check class of incoming component before asking if it has
components and treating it like a container.
0.12 Unknown
- Path: Add curve_to and rel_curve_to
0.11 Unknown
- Small optimizations
- Driver: add reset
- Textbox: Add angle
- Use Forest rather than Tree::Simple per stevan's request
0.10 Unknown
- Path: add rectangle
- New feature & hint: Add "preserve" to Operation. Setting this causes
the canvas to NOT clear the current path on a do(). This operation can
then be used as a hint to the driver to not create a new path, but to
reuse the old one.
0.09 Unknown
- Path: add arc, close_path, get_path
- Path: rename get_primitive_at to get_primitive
- Path: rename count_primitives to primitive_count
- Path: clone points rather than using them, they tend to change
- Path: don't inherit or implement anything out of Geo::Primitive, it's
not necessary
- Path: add hints attr with for driver hinting and add contiguous flag for
use with same
- Gradient: add line attr for guiding Gradient
- Canvas: update path proxy methods
- Make everything cloneable, adding Clone trait to 'deep' clone attrs
0.08 Unknown
- Path: default starting point to 0,0
- Rename Graphics::Primitive::Stroke to Graphics::Primitive::Brush
- Brush: Add Color
- Add Canvas calls to Driver
- Add Operation::Fill and Operation::Stroke
- Lots of POD
- Add Paint and children
0.07 Unknown
- Remove do_prepare
- Add disclaimer
- Add lines to Textbox and chop up input, this is likely temporary
- Add optional layout manager to container
- prepare now expects the driver to be passed in
- Component's prepare sets minimum sizes to the outside ones
- Return default font size from coderef
- Use isa to check component classes and put container at the bottom
so that the parent container is drawn before it's children.
- Add get_tree method to component for visualizing the entire component
- Prepare children before parents
- Don't return inside_height or width < 0
- Default Component::prepare to setting a minimum height/width based on
outside values
- Add Component::to_string
- Let Container's layout_manager handle do_layout
- Add 'pack' to the plan...
- Path: modify line_to and move_to to accept scalars
- Stroke: add dash_pattern
0.06 Unknown
- Add Driver
- Set default border width to 0
- Move component management out of LM and into Container
- Move stuff from LM::Component role into Component
- Remove LM dependency
- Add Textbox
- Change Component's inside_bounding_box origin to be a relative value
0.05 Unknown
- Don't prepare or draw invisible components in Containers
0.04 Unknown
- POD fixes
- Add find_component and get_component as proxies in Container
0.03 Unknown
- Check for definedness of components in a Container before prepare & draw
0.02 Unknown
- Add visible to component
- Fix Description
- Add MI version because Yuval yelled at me
0.01 Unknown
First version, released on an unsuspecting world.