Blame NEWS

Packit 908522
1.12.0 (unstable):
Packit 908522
Packit 908522
* Cairo::RefPtr: Add move constructors and move operator=().
Packit 908522
  (Murray Cumming)
Packit 908522
* MSVC build fixes.
Packit 908522
  (Chun-wei Fan)
Packit 908522
Packit 908522
1.11.4 (unstable):
Packit 908522
Packit 908522
* Use (and require) C++11.
Packit 908522
  (Murray Cumming)
Packit 908522
* Add Script and ScriptSurface.
Packit 908522
  (Povilas Kanapickas)
Packit 908522
* Context: get_surface_wrapper(): Handle CAIRO_SURFACE_TYPE_SCRIPT,
Packit 908522
  returning a ScriptSurface.
Packit 908522
  (Povilas Kanapickas)
Packit 908522
* Surface: get_device(): Handle CAIRO_SURFACE_TYPE_SCRIPT,
Packit 908522
  returning a Script.
Packit 908522
  (Povilas Kanapickas)
Packit 908522
* Wrap cairo script device and script surface APIs.
Packit 908522
  (Povilas Kanapickas)
Packit 908522
* FtFontFace: Add get/set/unset_synthesize().
Packit 908522
  (Povilas Kanapickas)
Packit 908522
* Update MSVC.Net 2010 project files.
Packit 908522
  (David Weiß)
Packit 908522
Packit 908522
1.11.2 (unstable):
Packit 908522
Packit 908522
* Pattern: Add set_extend() and get_extend().
Packit 908522
  (Povilas Kanapickas) Bug #73775
Packit 908522
* ScaledFont: Add the missing get_extents() method implementation.
Packit 908522
  (Murray Cumming) Bug #53981 (cheshirekow)
Packit 908522
* Allow use from Objective-C instead of just allowing building.
Packit 908522
  (Anton Bachin) Bug #66328
Packit 908522
* Avoid dereferencing empty std::vector<>s.
Packit 908522
  (Murray Cumming) Bug #36020 (Robert Kurjata)
Packit 908522
* Documentation improvements.
Packit 908522
  (Mark Vender)
Packit 908522
* Fix linker problems in examples.
Packit 908522
  (Murray Cumming)
Packit 908522
Packit 908522
1.10.0 (stable):
Packit 908522
Packit 908522
* Documentation: Context::arc(): Correct the documentation, as in the C
Packit 908522
  documentation.
Packit 908522
  (Murray Cumming) Bug #31345 (Christopher Head)
Packit 908522
Packit 908522
1.9.8 (unstable):
Packit 908522
Packit 908522
* Surface:
Packit 908522
  - added create() for creating a sub-surface representing a rectangle on a
Packit 908522
    target surface
Packit 908522
  - PDF versioning API: get_versions(), restrict_to_version(),
Packit 908522
    version_to_string()
Packit 908522
  - add get_device()
Packit 908522
  - add new surface type enum values
Packit 908522
* Device
Packit 908522
  - add acquire() and release() functions
Packit 908522
  - Add Device::Lock convenience class
Packit 908522
* Region
Packit 908522
  - UNSTABLE API CHANGE: Fix do_union(), subtract(), intersect() to throw
Packit 908522
    exceptions instead of returning error statuses to be consistent with the
Packit 908522
    rest of the cairomm API
Packit 908522
  - add xor() functions
Packit 908522
  - add API for creating a region from a list of rectangles
Packit 908522
  - implement copy()
Packit 908522
* Documentation:
Packit 908522
  - Context::arc(): Fix bug #31345 (Christopher Head) about bad math in arc()
Packit 908522
    documentation. (Murray Cumming)
Packit 908522
  - Add documentation for Device class
Packit 908522
  - Add documentation for Region class
Packit 908522
Packit 908522
1.9.6 (unstable):
Packit 908522
Packit 908522
* Context: Added in_clip().
Packit 908522
* Surface: Added get_mime_data(), set_mime_data(), unset_mime_data().
Packit 908522
  (Murray Cumming)
Packit 908522
* Build: Added support for Windows 64-bit and Visual Studio 2010.
Packit 908522
  (Armin Burgmeier)
Packit 908522
Packit 908522
1.9.4 (unstable):
Packit 908522
Packit 908522
* Added Device.
Packit 908522
  (Murray Cumming)
Packit 908522
Packit 908522
1.9.2 (unstable):
Packit 908522
Packit 908522
* Context:
Packit 908522
  - set_dash(): Make the dashes parameter const.
Packit 908522
  - device_to_user(), device_to_user_distance(), user_to_device(),
Packit 908522
  user_to_device_distance(): Deprecate the non-const versions, adding const
Packit 908522
  versions.
Packit 908522
  (Murray Cumming)
Packit 908522
* Cleanup of most -Weffc++ warnings. Bug #28246.
Packit 908522
  (Ian Britten)
Packit 908522
Packit 908522
1.9.1 (unstable):
Packit 908522
Packit 908522
* Added Region.
Packit 908522
  (Murray Cumming)
Packit 908522
* Context: Don't allow this to be copied.
Packit 908522
  (Daniel Elstner)
Packit 908522
* Build:
Packit 908522
  - Fix the MSVC build.
Packit 908522
  (Armin Burgmeier)
Packit 908522
  - Fix the 64-bit build.
Packit 908522
  (Augusto Jun Devegil)
Packit 908522
  - Actually install cairomm-xlib-xrender-1.0.pc.
Packit 908522
  (Daisuke Nishikawa)
Packit 908522
Packit 908522
1.8.4:
Packit 908522
Packit 908522
* move to new mm-common build infrastructure
Packit 908522
* Contributors for this release:
Packit 908522
     1  Christopher Harvey
Packit 908522
     4  Daniel Elstner
Packit 908522
     4  David King
Packit 908522
     1  Jonathon Jongsma
Packit 908522
Packit 908522
1.8.2:
Packit 908522
Packit 908522
* Fix accidental ABI breakage from 1.8.0.  All users are urged to please upgrade
Packit 908522
  from 1.8.0 to 1.8.2 as soon as possible
Packit 908522
Packit 908522
1.8.0:
Packit 908522
Packit 908522
* No notable changes since 1.7.2
Packit 908522
Packit 908522
1.7.2 (UNSTABLE):
Packit 908522
Packit 908522
* API Changes (all API changes are in unstable API introduced in 1.7.x)
Packit 908522
  * UserFontFace is not implemented with virtual functions rather than by
Packit 908522
    registering callbacks
Packit 908522
  * Cairo::scaled_matrix() -> Cairo::scaling_matrix() to match other matrix
Packit 908522
    convenience functions
Packit 908522
* Bugfixes
Packit 908522
  * Incorrect refcounting on ScaledFont
Packit 908522
  * build fixes for Mac OSX
Packit 908522
* Contributors for this release:
Packit 908522
     1	Armin Burgmeier
Packit 908522
     1	Dave Evans
Packit 908522
    22	Jonathon Jongsma
Packit 908522
Packit 908522
Packit 908522
1.7.0 (UNSTABLE):
Packit 908522
Packit 908522
 * API Changes
Packit 908522
   * ScaledFont: Change fontface constructor parameter to be a RefPtr
Packit 908522
     * This is an API break, but the old interface was essentially unusably
Packit 908522
       broken
Packit 908522
   * Cairo::Matrix now inherits from cairo_matrix_t
Packit 908522
     * Previously, we had used Cairo::Matrix throughout our API, but
Packit 908522
       Cairo::Matrix was just a typedef for cairo_matrix_t
Packit 908522
     * This could be considered an API change, but the new Cairo::Matrix still
Packit 908522
       is-a cairo_matrix_t even if it's not exactly a cairo_matrix_t.  This
Packit 908522
       change does not break ABI either, as there are no data members or virtual
Packit 908522
       functions.  So I believe this is a safe change, but feedback is appreciated.
Packit 908522
     * Provides a much more C++-friendly API for handling matrices
Packit 908522
     * Also added a set of standalone 'generator' functions for generating
Packit 908522
       starting matrices:
Packit 908522
       * Cairo::identity_matrix(), rotation_matrix(), translation_matrix(),
Packit 908522
         scaled_matrix().  This allows for convenient use such as:
Packit 908522
           cr->set_matrix(Cairo::identity_matrix());
Packit 908522
         rather than something like what was required before:
Packit 908522
           Cairo::Matrix identity_matrix;
Packit 908522
           cairo_matrix_init_identity(&identity_matrix);
Packit 908522
           cr->set_matrix(identity_matrix);
Packit 908522
   * Pattern: get/set_matrix() functions were using a cairo_matrix_t parameter in
Packit 908522
     the API.  This is the only place where we used this type and so it was
Packit 908522
     inconsistent with every other matrix-related API in cairomm.  Previously
Packit 908522
     this wasn't really an issue since cairo_matrix_t and Cairo::Matrix were
Packit 908522
     typedefed to the same type.  However, with the the change to Cairo::Matrix
Packit 908522
     mentioned above, this because a much bigger issue.
Packit 908522
     * This is an ABI-compatible change, but it is a minor API change that could
Packit 908522
       result in some warnings or compile problems in some situations`
Packit 908522
 * New API (some of these are new in cairo 1.8, some are older API that were
Packit 908522
   not wrapped in cairomm previously)
Packit 908522
   * Add Context::get/set_scaled_font()
Packit 908522
   * add Context::show_text_glyphs()
Packit 908522
   * add Context::get_font_options()
Packit 908522
   * Add Surface::has_show_text_glyphs()
Packit 908522
   * Add Surface::get_content() + test
Packit 908522
   * Added Surface::get_fallback_resolution()
Packit 908522
   * Add ScaledFont::text_to_glyphs()
Packit 908522
   * Add PsSurface::get_eps()
Packit 908522
   * Add missing Win32Surface API: create_with_ddb(), create_with_dib(), and get_image()
Packit 908522
   * Add Win32PrintingSurface
Packit 908522
   * Vastly improved font support
Packit 908522
     * ToyFontFace
Packit 908522
     * UserFontFace
Packit 908522
     * Add Freetype font support (FtFontFace, etc)
Packit 908522
     * Add win32 font support (Win32FontFace, etc)
Packit 908522
     * Add quartz font support (QuartzFontFace, etc)
Packit 908522
     * Add ScaledFont::get_scale_matrix()
Packit 908522
 * Fix API inconsistencies by adding overloads and deprecating old versions
Packit 908522
   * Deprecated FontFace::extents() in favor of FontFace::get_extents()
Packit 908522
   * Deprecated FontFace::text_extents() in favor of FontFace::get_text_extents()
Packit 908522
   * Deprecated FontFace::glyph_extents() in favor of FontFace::get_glyph_extents()
Packit 908522
   * Add sigc::slot versions of all of the functions that take a
Packit 908522
     cairo_write_func_t or cairo_read_func_t
Packit 908522
     * This adds a new dependency on libsigc++, but offers a much more flexible
Packit 908522
       and C++-like solution
Packit 908522
     * Old API using cairo_write_func_t / cairo_read_func_t still exist, but are
Packit 908522
       deprecated in favor of the new API
Packit 908522
   * Add a default value for the font_options parameter of the ScaledFont constructor
Packit 908522
 * Added new macros for determining library version:
Packit 908522
   * CAIROMM_MAJOR_VERSION, CAIROMM_MINOR_VERSION, and CAIROMM_MICRO_VERSION
Packit 908522
 * Add a bunch of extra .pc files for additional functionality
Packit 908522
   * like cairo, create convenience .pc files for using some of the optional
Packit 908522
     features.  For example, cairomm-ft-1.0, cairomm-pdf-1.0, cairomm-xlib-1.0, etc.
Packit 908522
 * Numerous windows build improvements
Packit 908522
 * Added a *lot* of automated tests
Packit 908522
Packit 908522
1.6.2:
Packit 908522
Packit 908522
 * Fix build on OSX when both Quartz and Xlib surfaces are enabled (Benjamin
Packit 908522
   Reed)
Packit 908522
 * updated the windows build (Armin Burgmeier)
Packit 908522
 * Fixed a bug where an exception message would often report "Success" when it
Packit 908522
   should have reported an error message
Packit 908522
 * Added ability to get the error status code from an exception:
Packit 908522
   Cairo::logic_error::get_status_code()
Packit 908522
 * Added new elements to the surface type enumeration
Packit 908522
Packit 908522
1.6.0:
Packit 908522
Packit 908522
 * wrap cairo_format_stride_for_width().  All new cairo 1.6 API should now be
Packit 908522
   implemented in cairomm
Packit 908522
Packit 908522
1.5.0 (UNSTABLE):
Packit 908522
Packit 908522
 * Unstable release wrapping new API in cairo 1.5 series
Packit 908522
 * Bugfixes
Packit 908522
   - Bug #14559: build failure in exception.cc on Solaris with Sun Workshop C++
Packit 908522
   - Bug #14558: cairomm 1.4.6 context.cc needs math.h on Solaris
Packit 908522
Packit 908522
1.4.6:
Packit 908522
Packit 908522
 * Bugfixes:
Packit 908522
   - Bug #11972: Cannot build cairomm with Quartz enabled
Packit 908522
Packit 908522
1.4.4:
Packit 908522
Packit 908522
 * Added the --enable-api-exceptions=yes/no configure option, to allow
Packit 908522
   cairomm to build when exceptions are disabled. For instance, when using
Packit 908522
   CXXFLAGS=-fno-exceptions with g++.
Packit 908522
Packit 908522
1.4.2:
Packit 908522
Packit 908522
 * Bugfixes:
Packit 908522
   - Bug #11596: Fixed broken shared library versioning (Dave Beckett)
Packit 908522
   - Bug #8511: RefPtr: refcounting broken with cast_*() methods (Murray
Packit 908522
     Cumming)
Packit 908522
Packit 908522
1.4.0:
Packit 908522
Packit 908522
 * Wrapped new API added in cairo 1.4
Packit 908522
 * Added support for Quartz surfaces
Packit 908522
 * ability to use dynamic casting for surfaces and patterns returned from
Packit 908522
   Context::get_target(), Context::get_source(), etc.
Packit 908522
 * Various build and bug fixes
Packit 908522
Packit 908522
1.2.4:
Packit 908522
Packit 908522
 * Fixed an error that prevented Cairo::RefPtr<>::cast_static() and
Packit 908522
   Cairo::RefPtr<>::cast_dynamic() from compiling.
Packit 908522
Packit 908522
1.2.2:
Packit 908522
Packit 908522
* Fixed an issue when compiling on windows with MSVC
Packit 908522
Packit 908522
1.2.0:
Packit 908522
Packit 908522
* This is the first release that guarantees API and ABI stability
Packit 908522
* Changed API:
Packit 908522
  - Context::clear_path() is now Context::begin_new_path()
Packit 908522
  - Context::new_sub_path() is now Context::begin_new_sub_path()
Packit 908522
* new API:
Packit 908522
  - Win32Surface::get_dc()
Packit 908522
  - Win32Surface::create() for device-independent bitmaps
Packit 908522
* Bugfixes
Packit 908522
  - fixed a memory leak where C++ wrapper objects were not being destroyed
Packit 908522
* Fixes for compiling with MSVC (also includes project and resource files for
Packit 908522
  Visual Studio 2005.  See the MSVC/ directory)
Packit 908522
Packit 908522
1.1.10:
Packit 908522
Packit 908522
* API:
Packit 908522
  - Wrap new API from cairo 1.2
Packit 908522
  - Wrap ScaledFont
Packit 908522
* Improved Documentation
Packit 908522
* Build fixes
Packit 908522
Packit 908522
0.6.0:
Packit 908522
Packit 908522
* API:
Packit 908522
  - enumerations are now wrapped within the Cairo namespace.  So, for example,
Packit 908522
    CAIRO_FORMAT_ARGB32 becomes Cairo::FORMAT_ARGB32
Packit 908522
* Examples: added simple text example translated from Cairo.
Packit 908522
* Bugfixes for the Glitz and Windows backends.
Packit 908522
* Build and installation improvements (Danilo Piazzalunga)
Packit 908522
Packit 908522
0.5.0:
Packit 908522
Packit 908522
* Surface:
Packit 908522
  - Created derived classes for PDF, PS, SVG, Glitz,
Packit 908522
  X11 and Win32 surfaces, which are only available if your copy
Packit 908522
  of cairo supports those surfaces. The X11 and Win32 Surface headers
Packit 908522
  must be #included explicitly.
Packit 908522
  (Jonathon Jongsma)
Packit 908522
  - Added write_to_png() and write_to_png_stream(), available when PNG
Packit 908522
  support is available in Cairo.
Packit 908522
  (Jonathon Jongsma)
Packit 908522
* Examples: Added PNG, PDF, PS, and SVG Surface examples.
Packit 908522
  (Jonathon Jongsma)
Packit 908522
* Added API documentation generation with doxygen (Jonathon Jongsma)
Packit 908522
Packit 908522
0.4.0:
Packit 908522
Packit 908522
* Add Cairo::RefPtr<> and use all reference-counted
Packit 908522
  objects via it. Use the static create() methods
Packit 908522
  instead of new for these classes.
Packit 908522
* Context:
Packit 908522
  - Change set_dash(void) to unset_dash().
Packit 908522
  - Change rotate_deg() to rotate_degrees().
Packit 908522
  - Change identity_matrix() to set_identity_matrix().\
Packit 908522
  - Change new_path() to clear_path().
Packit 908522
* FontFace: Remove get/set_user_data(), because it seems useless.
Packit 908522
Packit 908522
0.3.0:
Packit 908522
Packit 908522
* Context:
Packit 908522
  - Change mask_surface() to mask() and
Packit 908522
    set_source_surface() to set_source().
Packit 908522
  - Add typedef for Matrix, but a real Matrix
Packit 908522
  class would be nice.
Packit 908522
* Pattern: Created hierarchy of classes.
Packit 908522
* Check for errors in constructors.
Packit 908522
* Exception: Rename to logic_error, and throw
Packit 908522
  std::bad_alloc or std::io_base::failure instead
Packit 908522
  when appropriate.
Packit 908522
  (Murray Cumming)