summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-01-28Allow use from Objective-C instead of just allowing building.cairomm-1.10Anton Bachin2-9/+4
* cairomm/fontface.h: Surround the include line in surface.h with some directives that undefine nil and then redefine it. * cairomm/surface.h: This aso undefined nil but this appears to be unnecessary. Bug #66328
2014-01-28Avoid dereferencing empty std::vector<>s.Murray Cumming1-7/+17
* cairomm/context.cc: Check with empty() before using [0] on a vector. Apparently gcc allows this, but MSVC (probably correctly) does not. This fixes a crash on MS Windows. Bug #36020 (Robert Kurjata)
2014-01-28ScaledFont: Add the missing get_extents() method implementation.Murray Cumming1-0/+5
Bug #53981 (cheshirekow)
2012-03-12Use GNOME style in the documentationMark Vender5-345/+13
2012-03-12Fix linker problem with the examples.Murray Cumming2-1/+9
* examples/Makefile.am: Add CAIROMM_LIBS. This is needed now to a change in behaviour of the linker in recent distro versions.
2012-03-12Update the documentationMark Vender12-152/+1413
2011-05-091.10.0v1.10.01.10.0Murray Cumming3-1/+9
2010-12-31Ignore some more msvc build filesJonathon Jongsma1-0/+2
2010-12-31Bump micro version after releaseJonathon Jongsma1-1/+1
2010-12-31Disable fatal warnings on distcheck for nowv1.9.8Jonathon Jongsma1-1/+1
cairo.h has an extra comma at the end of an enumeration, which causes a warning, so making warnings fatal in distcheck makes it impossible to release.
2010-12-31Update NEWS for 1.9.8 release, bump versionJonathon Jongsma2-3/+23
Also require a newer cairo (1.10.0)
2010-12-30Wrap cairo_surface_create_for_rectangle()Jonathon Jongsma2-0/+29
2010-12-30Add PDF versioning APIJonathon Jongsma2-0/+59
New PdfSurface functions: get_versions() restrict_to_version() version_to_string()
2010-12-30Add Device documentationJonathon Jongsma1-4/+64
2010-12-30Add Device::Lock for acquiring devices safelyJonathon Jongsma2-0/+47
To aid in acquiring devices in an exception-safe manner, a convenience class Device::Lock was added that acquires the specified device for the duration of the object.
2010-12-30Wrap cairo_device_acquire|release()Jonathon Jongsma2-0/+15
2010-12-30Wrap cairo_surface_get_device()Jonathon Jongsma2-0/+15
2010-12-30Add Region documentationJonathon Jongsma1-4/+30
2010-12-30Wrap cairo_region_xor_*Jonathon Jongsma2-0/+16
2010-12-30Wrap cairo_region_create_rectangles()Jonathon Jongsma2-3/+36
2010-12-30Wrap Region::copy()Jonathon Jongsma2-3/+7
2010-12-30Provide static factory functions for RegionJonathon Jongsma2-5/+26
Since Region objects are ref-counted, don't allow them to be instantiated manually, but provide static create() functions for automatically managing them with RefPtrs. Also, remember to check the error status when creating them.
2010-12-30Fix Region api to throw exception rather than return statusJonathon Jongsma2-18/+24
All other API throws exceptions instead of returning error statuses, so make this be consistent as well. (the only possible error for these operations is NO_MEMORY)
2010-12-30Add new surface type enumsJonathon Jongsma1-1/+12
These are not really used in cairomm, but it's nice to have them defined in any case.
2010-11-03A NEWS entry for a future release.Murray Cumming1-0/+5
2010-11-03Context::arc(): Correct the documentation, as in the C documentation.Murray Cumming2-10/+22
* cairomm/context.h: arc(): Update the documentation based on the latest version of the cairo_arc() documentation, which was apparently fixed since we last wrote the C++ documentation based on it. This fixes bug #31345 (Christopher Head) about bad math in arc() documentation.
2010-10-26Post-release version incrementMurray Cumming3-3/+12
2010-10-26Fix the build with MSVC (really)v1.9.6Armin Burgmeier22-65/+76
The previous commit only included the ChangeLog for some reason. 2009-10-26 Armin Burgmeier <armin@arbur.net> * MSVC_Net2005/cairomm/cairomm.rc.in: * MSVC_Net2008/cairomm/cairomm.rc.in: Replaced GENERIC_MAJOR_VERSION et al. by CAIROMM_MAJOR_VERSION, so that they are properly replaced during configure. * MSVC_Net2005/examples/image-surface/image-surface.vcproj: * MSVC_Net2005/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2005/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2005/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2005/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2005/examples/toy-text/toy-text.vcproj: * MSVC_Net2005/examples/user-font/user-font.vcproj: * MSVC_Net2008/examples/image-surface/image-surface.vcproj: * MSVC_Net2008/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2008/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2008/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2008/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2008/examples/toy-text/toy-text.vcproj: * MSVC_Net2008/examples/user-font/user-font.vcproj: Added $(SolutionDir)/cairomm to the include search paths, so that cairommconfig.h is found even if configure did not run. * cairomm/fontface.cc: MSVC does not allow to reinterpret_cast a bool to void*, so use an int instead. * examples/surfaces/image-surface.cc: * examples/surfaces/pdf-surface.cc: * examples/surfaces/ps-surface.cc: * examples/surfaces/svg-surface.cc: * examples/text/text-rotate.cc: Define _USE_MATH_DEFINES before including anything, to make sure we get the defines even if math.h is included indirectly via another header. * cairomm/context.cc: In set_dash(std::valarray<double>), copy the valarray into a vector and then call set_dash(std::vector<double>). The reason is that there is no guarantee that the memory in a std::valarray is contiguous, and also that in MSVC's STL (and also in the C++ standard) std::valarray<T>::operator[](size_t) const returns a T, not a const T&, so &dashes[0] is a compiler error if dashes is a const std::valarray<double>&.
2010-10-22Added support for 64 bit and Visual Studio 2010.Armin Burgmeier53-533/+5683
* MSVC_Net2008/.cvsignore: * MSVC_Net2005/examples/png-file/png-file.vcproj: * MSVC_Net2008/examples/png-file/png-file.vcproj: Removed. * MSVC_Net2005/README: * MSVC_Net2005/cairomm.sln: * MSVC_Net2005/cairomm/cairomm.vcproj: * MSVC_Net2005/examples/image-surface/image-surface.vcproj: * MSVC_Net2005/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2005/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2005/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2005/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2005/examples/toy-text/toy-text.vcproj: * MSVC_Net2005/examples/user-font/user-font.vcproj: * MSVC_Net2005/gendef/gendef.vcproj: * MSVC_Net2008/README: * MSVC_Net2008/cairomm.sln: * MSVC_Net2008/cairomm/cairomm.vcproj: * MSVC_Net2008/examples/image-surface/image-surface.vcproj: * MSVC_Net2008/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2008/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2008/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2008/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2008/examples/toy-text/toy-text.vcproj: * MSVC_Net2008/examples/user-font/user-font.vcproj: * MSVC_Net2008/gendef/gendef.vcproj: * MSVC_Net2010/README: * MSVC_Net2010/cairomm.sln: * MSVC_Net2010/cairomm/cairomm.rc.in: * MSVC_Net2010/cairomm/cairomm.vcxproj: * MSVC_Net2010/cairomm/cairomm.vcxproj.filters: * MSVC_Net2010/examples/image-surface/image-surface.vcxproj: * MSVC_Net2010/examples/image-surface/image-surface.vcxproj.filters: * MSVC_Net2010/examples/pdf-surface/pdf-surface.vcxproj: * MSVC_Net2010/examples/pdf-surface/pdf-surface.vcxproj.filters: * MSVC_Net2010/examples/ps-surface/ps-surface.vcxproj: * MSVC_Net2010/examples/ps-surface/ps-surface.vcxproj.filters: * MSVC_Net2010/examples/svg-surface/svg-surface.vcxproj: * MSVC_Net2010/examples/svg-surface/svg-surface.vcxproj.filters: * MSVC_Net2010/examples/text-rotate/text-rotate.vcxproj: * MSVC_Net2010/examples/text-rotate/text-rotate.vcxproj.filters: * MSVC_Net2010/examples/toy-text/toy-text.vcxproj: * MSVC_Net2010/examples/toy-text/toy-text.vcxproj.filters: * MSVC_Net2010/examples/user-font/user-font.vcxproj: * MSVC_Net2010/examples/user-font/user-font.vcxproj.filters: * MSVC_Net2010/filelist.am: * MSVC_Net2010/gendef/gendef.cc: * MSVC_Net2010/gendef/gendef.vcxproj: * MSVC_Net2010/gendef/gendef.vcxproj.filters: * Makefile.am: * configure.ac: Added support for 64 bit and Visual Studio 2010.
2010-10-22Update for the 1.9.4 release that I made without pullingMurray Cumming3-1/+8
2010-09-10Context, Surface: Add some new methods.Murray Cumming5-5/+95
* cairomm/context.[h|cc]: Added in_clip(). * cairomm/surface.[h|cc]: Added get_mime_data(), set_mime_data(), unset_mime_data().
2010-09-07Added Device class.Murray Cumming7-1/+173
* cairomm/device.[h|cc]: Added these files, wrapping cairo_device_t. * cairomm/filelist.am: * cairomm/cairomm.h: Mention the new file.
2010-09-061.9.2v1.9.21.9.2Murray Cumming3-1/+14
2010-09-02Context: set_dash(): Make the dashes parameter const.Murray Cumming3-1/+51
* cairomm/context.[h|cc]: set_dash(): Add versions that take a const vector parameter, deprecating the old versions.
2010-09-02Context: Make some methods const, deprecating the non-const versions.Murray Cumming3-28/+109
* cairomm/context.h: device_to_user(, device_to_user_distance(), user_to_device(), user_to_device_distance(): Deprecate the non-const versions, adding const versions.
2010-09-022010-06-10 Ian Britten <britten@caris.com>Ian Britten8-1/+42
Cleanup of most -Weffc++ warnings (Continuation of previous commit) Bug #28246 * cairomm/fontface.h (FontFace::FontFace): * cairomm/path.h (Path::Path): * cairomm/pattern.h (Pattern::Pattern): * cairomm/scaledfont.h (ScaledFont::ScaledFont): * cairomm/surface.h (Surface::Surface): Declare a private copy constructor and assignment operator in order to explicitly prevent objects from being copied by value. That was never valid, and not disallowing it seems to have been merely an oversight. * cairomm/fontoptions.cc: * cairomm/scaledfont.cc: Initialize member(s) in initialization list. * cairomm/scaledfont.h: Declared ~ScaledFont() virtual
2010-07-191.9.1Murray Cumming3-15/+32
2010-07-06Add Region, wrapping cairo_region_t, new in cairo 1.10.v1.9.1Murray Cumming7-0/+269
* cairomm/region.[h|cc]: Added this class, wrapping it like other reference-counted types, such as Pattern. * cairomm/cairomm.h: Add an include of it here. * cairomm/filelist.am: Mention the new files here.
2010-06-07Disallow copying of Cairo::Context objectsDaniel Elstner2-4/+15
* cairomm/context.h (Cairo::Context): Declare a private copy constructor and assignment operator in order to explicitly prevent objects from being copied by value. That was never valid, and not disallowing it seems to have been merely an oversight.
2010-06-07Do not unnecessarily cast booleans to pointersDaniel Elstner2-6/+24
* cairomm/fontface.cc (USER_DATA_KEY_DEFAULT_TEXT_TO_GLYPHS): Put dummy object into an anonymous namespace and make it static. (UserFontFace::text_to_glyphs): Do not cast a boolean to a pointer in order to indicate state via the font face's user data. There are fairly safe alternative casts to do this, but it is much simpler to just take the address of any existing object to get a non-0 pointer. (UserFontFace::UserFontFace): Remove unnecessary casts.
2010-06-07Fix the build with MSVCArmin Burgmeier1-0/+36
2009-10-26 Armin Burgmeier <armin@arbur.net> * MSVC_Net2005/cairomm/cairomm.rc.in: * MSVC_Net2008/cairomm/cairomm.rc.in: Replaced GENERIC_MAJOR_VERSION et al. by CAIROMM_MAJOR_VERSION, so that they are properly replaced during configure. * MSVC_Net2005/examples/image-surface/image-surface.vcproj: * MSVC_Net2005/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2005/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2005/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2005/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2005/examples/toy-text/toy-text.vcproj: * MSVC_Net2005/examples/user-font/user-font.vcproj: * MSVC_Net2008/examples/image-surface/image-surface.vcproj: * MSVC_Net2008/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2008/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2008/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2008/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2008/examples/toy-text/toy-text.vcproj: * MSVC_Net2008/examples/user-font/user-font.vcproj: Added $(SolutionDir)/cairomm to the include search paths, so that cairommconfig.h is found even if configure did not run. * cairomm/fontface.cc: MSVC does not allow to reinterpret_cast a bool to void*, so use an int instead. * cairomm/context.cc: * examples/surfaces/image-surface.cc: * examples/surfaces/pdf-surface.cc: * examples/surfaces/ps-surface.cc: * examples/surfaces/svg-surface.cc: * examples/text/text-rotate.cc: Define _USE_MATH_DEFINES before including anything, to make sure we get the defines even if math.h is included indirectly via another header.
2010-06-07Put ifdefs around 32-bit-only API, to fix the build on 64-bit machines.Augusto Jun Devegili3-5/+18
* cairomm/quartz_font.[h|cc]: Use #ifndef __LP64__, as cairo does.
2010-06-07Fix the ChangeLog.Murray Cumming1-0/+23
2010-06-07Actually install cairomm-xlib-xrender-1.0.pc.Murray Cumming2-92/+98
* configure.ac: Fix a typo in the check for xlib-xrender support in cairo. Fixes bug #27066.
2010-04-20Clean up configure.ac and add silent rules supportDaniel Elstner2-34/+37
* configure.ac (AC_INIT): Specify correct URLs for bug reports and the project home page. (AM_SILENT_RULES): Call macro if defined. (MM_PREREQ): Require mm-common 0.8. (BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB): Rewrite the fragile shell code of the boost check.
2009-10-19bump to 1.8.4, update NEWSv1.8.4Jonathon Jongsma2-2/+11
2009-08-13Don't force tests to be enabled when CAIROMM_DEVEL is definedJonathon Jongsma1-10/+0
This was hacked in to ensure that I always built with tests enabled, but the boost configure detection scripts are broken right now on my setup, so this just hinders my ability to get things done. remove it.
2009-08-13Distribute mm-common documentation utilitiesDaniel Elstner3-1/+17
* docs/Makefile.am (dist_noinst_DATA): List the utility scripts installed by mm-common-prepare here, so they will be distributed.
2009-08-13Add missing call to MM_CONFIG_DOCTOOL_DIRDaniel Elstner2-0/+9
* configure.ac: Call MM_CONFIG_DOCTOOL_DIR([docs]) to indicate to mm-common-prepare that this module cannot depend on the utilities shipped with glibmm, and needs its own copies.
2009-08-13Fix left-over cairomm/cairommconfig.h includesDaniel Elstner9-24/+24
* cairomm/cairomm.h: Remove directory prefix from cairommconfig.h include statement. * cairomm/context.cc: Include <cmath> unconditionally instead of conditionally including <math.h>. * examples/surfaces/*.cc: ditto, * examples/text/text-rotate.cc: ditto.