Age | Commit message (Collapse) | Author | Files | Lines |
|
* 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
|
|
* 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)
|
|
Bug #53981 (cheshirekow)
|
|
|
|
* examples/Makefile.am: Add CAIROMM_LIBS.
This is needed now to a change in behaviour of the linker
in recent distro versions.
|
|
|
|
|
|
|
|
|
|
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.
|
|
Also require a newer cairo (1.10.0)
|
|
|
|
New PdfSurface functions:
get_versions()
restrict_to_version()
version_to_string()
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
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)
|
|
These are not really used in cairomm, but it's nice to have them defined in any
case.
|
|
|
|
* 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.
|
|
|
|
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>&.
|
|
* 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.
|
|
|
|
* cairomm/context.[h|cc]: Added in_clip().
* cairomm/surface.[h|cc]: Added get_mime_data(), set_mime_data(),
unset_mime_data().
|
|
* cairomm/device.[h|cc]: Added these files, wrapping cairo_device_t.
* cairomm/filelist.am:
* cairomm/cairomm.h: Mention the new file.
|
|
|
|
* cairomm/context.[h|cc]: set_dash(): Add versions that take a const
vector parameter, deprecating the old versions.
|
|
* 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.
|
|
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
|
|
|
|
* 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.
|
|
* 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.
|
|
* 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.
|
|
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.
|
|
* cairomm/quartz_font.[h|cc]: Use #ifndef __LP64__, as cairo does.
|
|
|
|
* configure.ac: Fix a typo in the check for xlib-xrender support in
cairo. Fixes bug #27066.
|
|
* 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.
|
|
|
|
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.
|
|
* docs/Makefile.am (dist_noinst_DATA): List the utility scripts
installed by mm-common-prepare here, so they will be distributed.
|
|
* 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.
|
|
* 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.
|