3 2007-11-10 Jonathon Jongsma <jjongsma@gnome.org>
5 * docs/reference/Doxyfile.in: update doxygen config file since my version of
6 doxygen now complains that there are obsolete config keys
8 2007-11-10 Jonathon Jongsma <jjongsma@gnome.org>
10 * NEWS: update news for 1.4.6 release
11 * configure.in: bumped version
13 2007-08-13 Murray Cumming <murrayc@murrayc.com>
15 * cairomm/context.cc: Add #include <cairomm/quartz_surface.h>
16 to fix the build on MacOS. Thanks to Elias N (Bug #11972).
20 2007-07-21 Murray Cumming <murrayc@murrayc.com>
22 * m4/reduced.m4: Added, containing CAIROMM_ARG_ENABLE_API_EXCEPTIONS().
23 * configure.in: Use CAIROMM_ARG_ENABLE_API_EXCEPTIONS() to add a
24 --enable-api-exceptions=yes/no option.
25 Used to generate a cairomm/cairommconfig.h config file, which
26 defines (or not) CAIROMM_EXCEPTIONS_ENABLED.
27 * cairomm/cairommconfig.h.in: Added, used to generate cairommconfig.h
29 * cairomm/private.h: Use ifdef to replace throw_exception() with an empty
30 implementation when exceptions are disabled.
31 This allows cairomm to be built when using CXXFLAGS=-fno-exceptions.
33 2007-07-14 Jonathon Jongsma <jjongsma@gnome.org>
35 * configure.in: post-release version number bump
39 2007-07-14 Jonathon Jongsma <jjongsma@gnome.org>
41 * NEWS: updated for 1.4.2 release
42 * configure.in: bumped version to 1.4.2
44 2007-06-14 Dave Beckett <dave@dajobe.org>
46 * configure.in: Update the GENERIC_LIBRARY_VERSION correctly
48 current: interfaces were added, increment to 2
49 revision: set to zero since current was incremented
50 age: increment since interfaces were added
53 2007-06-14 Murray Cumming <murrayc@murrayc.com>
55 * cairomm/refptr.h: Added RefPtr(object, refcount) constructor
56 for use in cast_*(), so that the casted RefPtr shares the same
57 refcount, avoiding an early deletion. I do not like making
58 this constructor public, but I do not see another way.
62 2007-07-12 Jonathon Jongsma <jjongsma@gnome.org>
64 * Makefile.am: add doc-publish target and make release-publish depend on
65 this. This automatically uploads the new API documentation on release
66 * docs/reference/Makefile.am: upload the html documentation and a tarball of
67 the documentation to the cairographics.org site
69 2007-07-12 Jonathon Jongsma <jjongsma@gnome.org>
71 * docs/reference/Makefile.am: hacky workaround to get distcheck to pass
73 2007-07-10 Jonathon Jongsma <jjongsma@gnome.org>
75 * NEWS: Update NEWS for release
76 * configure.in: bump version for release
78 2007-07-10 Jonathon Jongsma <jjongsma@gnome.org>
80 * cairomm/context.cc: add ability to use dynamic casting with the return
81 values from more functions, including:
83 Context::get_target() const
85 Context::get_source() const
86 Context::get_group_target()
87 Context::get_group_target() const
89 * tests/test-context.cc: a few additional tests to verify the const /
90 non-const versions both work with dynamic casting.
92 2007-07-10 Jonathon Jongsma <jjongsma@gnome.org>
94 * docs/reference/cairomm.css: Improve the documentation style a little bit
95 to make it more readable
96 * docs/reference/Doxyfile.in: build the reference doc for the new
99 2007-07-10 Jonathon Jongsma <jjongsma@gnome.org>
101 * cairomm/context.cc:
102 * cairomm/context.h: add alternate API for set_dash() which takes a
103 std::vector argument instead of the slightly unexpected std::valarray
105 * tests/test-context.cc: test that both API work correctly and compile
106 correctly without any problems
108 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
110 * tests/test-context.cc: add some tests for matrix transformations and
111 user-to-device coordinate mappings. The matrix transformation 'test' does
112 nothing more than call the functions to excercise them a bit, but it's
113 causing an unexpected exception to be triggered when calling
114 Context::set_matrix(). The odd thing is that exception.what() results in
115 'success' being printed. This requires further investigation
116 Also used BOOST_CHECK_EQUAL in most places instead of BOOST_CHECK to get
117 more meaningful failure messages.
119 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
121 * cairomm/private.cc: add missing 'break;' on the I/O error case statement
123 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
125 * cairomm/context.cc: when getting the source pattern of a Cairo::Context,
126 check which type of Pattern it is so that we create the correct C++ wrapper.
127 Without this, RefPtr<>::cast_dynamic() doesn't seem to work as we would
129 * tests/test-context.cc: improve the Context::get_source() /
130 Context::set_source () tests now that dynamic casting works correctly
132 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
134 * examples/pdf-surface/main.cc:
135 * examples/png_file/main.cc:
136 * examples/ps-surface/main.cc:
137 * examples/svg-surface/main.cc:
138 * examples/text-rotate/text-rotate.cc:
139 * tests/test-context.cc: fix a bunch of minor compile errors when compiling
142 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
144 * configure.in: enable extra compiler warnings and -Werror if the
145 CAIROMM_DEVEL environment variable is set to 'on'. This caught the
147 * cairomm/pattern.cc: forgot to return the ColorStop vector
149 2007-07-04 Jonathon Jongsma <jjongsma@gnome.org>
151 * cairomm/context.cc: fix a FIXME to match the style of
152 ScaledFont::glyph_extents since MSVC (and possibly other compilers) complain
153 when allocating an array on the stack and the size of the array is not a
154 compile-time constante
156 2007-04-16 Hugo Vincent <hugo.vincent@gmail.com>
158 * Added QuartzSurface for MacOS X (when cairo is built with Quartz support),
159 similar to the existing Win32Surface and XlibSurface. These allow use of
160 platform-specific features and data structures.
162 2007-03-23 Jonathon Jongsma <jjongsma@gnome.org>
167 * m4/ax_boost_base.m4:
168 * m4/ax_boost_unit_test_framework.m4: Add some basic test infrastructure.
169 It's disabled by default, and must be explicitly enabled by passing
170 --enable-tests to configure (or by setting the CAIROMM_DEVEL environment
171 variable to "on"). It uses the boost unit test framework, but this should
172 not be required unless you've explicitly enabled tests. If tests are
173 enabled, you can easily run them with 'make check'
175 * tests/test-context.cc: added the beginning of a test for Cairo::Context.
176 Most of these tests are really very interesting. Basically what I'm trying
177 to do is a) test some basic behaviors, and b) excercise the functionality a
178 little bit. One of the tests currently fails due to a RefPtr::cast_dynamic
179 failure, so I have to see what's going on there.
181 2007-03-22 Murray Cumming <murrayc@murrayc@murrayc.com>
183 * cairomm/enums.h: Restored FORMAT_RGB16_565 and marked it as deprecated.
184 Note that CAIRO_FORMAT_RGB16_565 has not really been removed from cairo.
185 It has just moved from the enum to a #define in cairo-deprecated.
186 * cairomm/context.cc:
187 * cairomm/context.h: Made get_dash() const.
188 Renamed clip_extents() to get_clip_extents(), to match the other get_*_extents() methods
189 (in Context, if not in other classes), and made it const.
190 Made copy_clip_rectangle_list() const.
191 * cairomm/pattern.cc:
192 * cairomm/pattern.h: Make the RadialGradient::get_radial_circles(), LinearGradient::get_linear_points(),
193 and Gradient::get_color_stops() methods const.
194 Added a non-const method overload of get_surface().
195 Correc the get_color_stops() implementation to match the declaration.
197 2007-03-22 Jonathon Jongsma <jjongsma@gnome.org>
199 * cairomm/context.cc: Minor comment cleanups
200 * cairomm/pattern.cc: get the gradient stops by reference parameter instead
201 of returning by value. This saves an extra copy of the vector.
203 2007-03-21 Jonathon Jongsma <jjongsma@gnome.org>
205 * cairomm/context.cc:
208 * cairomm/pattern.cc:
210 * configure.in: Add initial support for new cairo 1.4.x API. It will
211 probably still need quite a bit of work, but I wanted to commit what I have
212 now so that it doesn't keep sitting in my working directory.
213 (Extra note from Murray:
215 - Pattern::create_rgba() - a new method overload with 4 args, including alpha.
216 - SurfacePattern::get_surface()
217 - Gradient::get_color_stops() (with a new ColorStop struct)
218 - LinearGradient::get_linear_points()
219 - RadialGradient::get_radial_circles()
220 - Context::clip_extents()
221 - Context::copy_clip_rectangle_list()
222 - Context::get_dash()
223 - SURFACE_TYPE_OS2 was added
224 - FORMAT_RGB16_565 was removed (but that is not allowed, so I'll fix that.)
226 2007-02-01 Jonathon Jongsma <jonathon.jongsma@gmail.com>
228 * configure.in: Fixes for building on Cygwin from
229 yselkowitz@users.sourceforge.net. Closes bug #9726
231 2007-01-28 Jonathon Jongsma <jonathon.jongsma@gmail.com>
233 * configure.in: bump rev to 1.2.5
235 2007-01-28 Jonathon Jongsma <jonathon.jongsma@gmail.com>
237 * docs/reference/Doxyfile.in: fixes building the cairomm documentation where
238 builddir != srcdir. Patch from yselkowitz@users.sourceforge.net for bug
243 2007-01-17 Jonathon Jongsma <jonathon.jongsma@gmail.com>
245 * NEWS: updated news for 1.2.4 release
246 * configure.in: bumped version to 1.2.4
248 2006-09-27 Murray Cumming <murrayc@murrayc.com>
250 * cairomm/refptr.h: cast_static() and cast_dynamic():
251 Use the refcount_() accessor instead of the member variable,
252 to avoid compilation errors, as we already do in the
253 templated copy constructor.
257 2006-08-21 Jonathon Jongsma <jonathon.jongsma@gmail.com>
259 * NEWS: update for 1.2.2
260 * configure.in: bump to next even number (1.2.2)
262 2006-08-21 Cedric Gustin <cedric.gustin@gmail.com>
264 * cairomm/win32_surface.cc: Explicitly cast Cairo::Format to
267 2006-08-20 Jonathon Jongsma <jonathon.jongsma@gmail.com>
269 * Makefile.am: fix up the release announcement template to explain what
270 cairomm is at the top of the email before telling where to get it.
271 * configure.in: post-release bump (1.2.1)
275 2006-08-20 Jonathon Jongsma <jonathon.jongsma@gmail.com>
277 * NEWS: Update information about new stuff in 1.2.0
278 * configure.in: bump the release version number to 1.2.0 and the shared
279 library version number to 1:0:0 since interfaces were changed and added and
280 we're now guaranteeing API/ABI stability
282 2006-08-20 Jonathon Jongsma <jonathon.jongsma@gmail.com>
284 * examples/pdf-surface/.cvsignore:
285 * examples/png_file/.cvsignore:
286 * examples/ps-surface/.cvsignore:
287 * examples/svg-surface/.cvsignore: added image files produced by the example
288 programs to .cvsignore
290 2006-08-19 Jonathon Jongsma <jonathon.jongsma@gmail.com>
292 * Makefile.am: get rid of the concept of a snapshot. It doesn't really make
293 that much sense for cairomm, honestly, since we're just a simple wrapper
296 2006-08-19 Jonathon Jongsma <jonathon.jongsma@gmail.com>
298 * MSVC/examples/.cvsignore:
299 * MSVC/examples/Makefile.am:
300 * MSVC/examples/pdf-surface/.cvsignore:
301 * MSVC/examples/pdf-surface/Makefile.am:
302 * MSVC/examples/pdf-surface/pdf-surface.vcproj:
303 * MSVC/examples/png_file/.cvsignore:
304 * MSVC/examples/png_file/Makefile.am:
305 * MSVC/examples/png_file/png_file.vcproj:
306 * MSVC/examples/ps-surface/.cvsignore:
307 * MSVC/examples/ps-surface/Makefile.am:
308 * MSVC/examples/ps-surface/ps-surface.vcproj:
309 * MSVC/examples/svg-surface/.cvsignore:
310 * MSVC/examples/svg-surface/Makefile.am:
311 * MSVC/examples/svg-surface/svg-surface.vcproj:
312 * MSVC/examples/text-rotate/.cvsignore:
313 * MSVC/examples/text-rotate/Makefile.am:
314 * MSVC/examples/text-rotate/text-rotate.vcproj:
315 * MSVC/gendef/.cvsignore:
316 * MSVC/gendef/Makefile.am:
317 * MSVC/gendef/gendef.cc:
318 * MSVC/gendef/gendef.vcproj: added a bunch of MSVC / windows-specific things
319 that got missed last time.
321 2006-08-18 Jonathon Jongsma <jonathon.jongsma@gmail.com>
323 * cairomm/win32_surface.cc:
324 * cairomm/win32_surface.h: add some missing win32 API that I had overlooked:
325 cairo_win32_surface_get_dc() and cairo_win32_surface_create_with_dib(),
326 updated documentation for standard Win32Surface::create() function.
328 2006-08-18 Cedric Gustin <cedric.gustin@gmail.com>
330 * cairomm/context.cc: Define M_PI for MSVC.
331 * cairomm/scaledfont.cc: Allocate glyph_array as a synamic array
332 as MSVC does not like non-const arguments as array size.
333 * examples/pdf-surface/main.cc, examples/png_file/main.cc,
334 examples/ps-surface/main.cc, examples/svg-surface/main.cc,
335 examples/text-rotate/text-rotate.cc: Define M_PI for MSVC.
336 * configure.in, Makefile.am: Generate Makefiles in the MSVC
338 * .cvsignore: Added Eclipse .project to the list of ignored files.
339 * MSVC/*: Added project and resource files for Visual Studio 2005.
341 2006-08-18 Jonathon Jongsma <jonathon.jongsma@gmail.com>
343 * cairomm/context.cc:
344 * cairomm/context.h: API CHANGE: some API was changed to maintain a closer
345 similarity to the underlying cairo API (while also attempting to avoid
346 confusion with the C++ 'new' keyword) in preparation for freezing the
347 cairomm API. Two functions are affected:
348 - Context::clear_path() -> Context::begin_new_path()
349 - Context::new_sub_path() -> Context::begin_new_sub_path()
350 * configure.in: bump the libtool version to indicate API change
352 2006-08-15 Jonathon Jongsma <jonathon.jongsma@gmail.com>
354 * cairomm/context.cc: remove another TODO. I looked at cairo_append_path,
355 and it just copies the data from the supplied path and appends that to the
356 current path -- it doesn't modify the passed in path -- so it can stay
359 2006-08-15 Jonathon Jongsma <jonathon.jongsma@gmail.com>
361 * cairomm/context.h: remove a FIXME that was resolved on the mailing list
363 2006-07-11 Murray Cumming <murrayc@murrayc.com>
365 * cairomm/refptr.h: unref(): Only delete the refcount int when the refcount has
366 reached 0, instead of deleting it every time. Thanks valgrind.
368 2006-07-11 Murray Cumming <murrayc@murrayc.com>
370 * cairomm/refptr.h: From-C-object Constructor: Added documentation explaining
371 how/when to use it and when to do an extra reference(). This will help us,
372 though it should rarely be necessary for an application developer to understand
374 Made pCppRefcount_ mutable, so that refcount_() can be a const method so that
375 the templated constructor compiles.
376 Added class documentation to explain why we even want to use this class.
378 2006-07-05 Jonathon Jongsma <jonathon.jongsma@gmail.com>
380 * cairomm/refptr.h: copy constructors: initialize the pCppRefcount_ member
381 variable, using a public refcount_() method when necessary to access a
382 different RefPtr<> specialization.
384 2006-07-11 Murray Cumming <murrayc@murrayc.com>
386 * cairomm/refptr.h: Use an int to reference-count the C++ object, and
387 only reference/unreference the object (and hence the underlying C object)
388 when receiving/deleting the C++ object. Without this, we never delete
389 the C++ object. Fixes bug #7442.
391 2006-07-09 Jonathon Jongsma <jonathon.jongsma@gmail.com>
393 * NEWS: add NEWS for 1.1.10 release
394 * configure.in: bump version to 1.1.12
396 2006-07-05 Jonathon Jongsma <jonathon.jongsma@gmail.com>
398 * Makefile.am: Ooops, I had accidentally removed dependency info for
399 release-publish target
401 2006-07-05 Murray Cumming <murrayc@murrayc.com>
404 * cairomm/fontface.h:
406 * cairomm/surface.cc:
408 * cairomm/xlib_surface.cc:
409 * cairomm/xlib_surface.h: Fix the generic text about reference-counted
410 objects, because we no longer use copy constructors for this. And some
411 pedantic white space changes.
413 2006-07-05 Murray Cumming <murrayc@murrayc.com>
415 * cairomm/scaledfont.cc:
416 * cairomm/scaledfont.h: create(): Make the font_matrix and ctm
417 parameters const (they are now const in the C API too). Maybe the font
418 parameter should be const, but maybe there is a reason that it is not
419 const in the C API. Pass FontOptions by const reference instead of
421 glyph_extents(): Pass the vector by const reference instead of by
423 I would prefere to make all the extents() functions use return values
424 instead of output parameters, but I suppose this might be slightly
425 less efficient in some circumstances.
427 2006-07-05 Murray Cumming <murrayc@murrayc.com>
432 * cairomm/scaledfont.h:
434 * cairomm/win32_surface.h:
435 * cairomm/xlib_surface.h: Use @ instead of \ for doxygen
436 commands, to be consistent with gtkmm, which uses it because it is the
437 same as JavaDoc, with which some people are already familiar.
439 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
441 * Makefile.am: add ability to do snapshot releases to the
442 cairographics.org/snapshots/ directory in addition to official releases
443 * configure.in: bumped the revision to 1.1.10 in preparation for a snapshot
444 release of the 1.2 API
445 * docs/reference/Makefile.am: fixed some distcheck errors
447 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
449 * .cvsignore, cairomm/.cvsignore: ignore some autotools files and *.swp
452 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
454 * cairomm/scaledfont.cc, cairomm/scaledfont.h: wrap ScaledFont, including
455 new API for cairo 1.2
456 * cairomm/Makefile.am: add scaledfont.* to list of sources
458 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
460 * cairomm/surface.h: Remove comments stating that PDF, PS, and SVG are
461 experimental surfaces. As of 1.2.0, these three surfaces are officially
462 supported by the cairo library.
464 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
466 * cairomm/xlib_surface.h: add a bit more documentation for the new
469 2006-07-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
471 * cairomm/surface.cc, cairomm/surface.h: added SvgSurface::get_versions()
472 and SvgSurface::version_to_string() API. They're implemented as static
475 2006-06-30 Jonathon Jongsma <jonathon.jongsma@gmail.com>
477 * configure.in: bumped cairomm version to 0.7.0 and bumped cairo requirement
480 2006-06-30 Jonathon Jongsma <jonathon.jongsma@gmail.com>
482 * cairomm/xlib_surface.cc, cairomm/xlib_surface.h: add new get_height() and
483 get_width() API to XlibSurface
485 2006-06-27 Jonathon Jongsma <jonathon.jongsma@gmail.com>
487 * cairomm/enums.h: Added enum types to support the new get_type() and SVG
489 * cairomm/fontface.cc, cairomm/fontface.h: add new get_type() API
490 * cairomm/pattern.cc, cairomm/pattern.h: add new get_type() API
491 * cairomm/surface.cc, cairomm/surface.h: add new get_type() API and
492 SvgSurface::restrict_to_version() API
494 2006-06-26 Jonathon Jongsma <jonathon.jongsma@gmail.com>
496 * cairomm/surface.cc, cairomm/surface.h: add new PsSurface and PdfSurface
497 API: set_size, dsc_comment, dsc_begin_setup, dsc_begin_page_setup
498 * cairomm/xlib_surface.cc, cairomm/xlib_surface.h: add new XlibSurface API:
499 get_display, get_drawable, get_screen, get_visual, get_depth
501 2006-06-26 Jonathon Jongsma <jonathon.jongsma@gmail.com>
503 * cairomm/surface.cc:
504 * cairomm/surface.h: Added new Surface and ImageSurface API from 1.1.x
507 2006-06-23 Jonathon Jongsma <jonathon.jongsma@gmail.com>
509 * cairomm/context.cc:
510 * cairomm/context.h: added Context::new_sub_path() and new push/pop group
513 2006-06-23 Jonathon Jongsma <jonathon.jongsma@gmail.com>
515 * cairomm/enums.h: fix stupid error from last commit
517 2006-06-23 Jonathon Jongsma <jonathon.jongsma@gmail.com>
519 * cairomm/enums.h: add new FORMAT_RGB16_565 format
521 2006-06-12 Jonathon Jongsma <jonathon.jongsma@gmail.com>
523 * configure.in: bump required cairo version to >= 1.1.7
524 * cairomm/surface.cc, cairomm/surface.h: update to new cairo API
525 cairo_surface_set_fallback_resolution
527 2006-05-10 Jonathon Jongsma <jonathon.jongsma@gmail.com>
529 * docs/reference/cairomm.css: minor documentation stylesheet fix
531 2006-05-08 Jonathon Jongsma <jonathon.jongsma@gmail.com>
534 * cairomm/path.h: added some preliminary documentation explaining that the
535 caller is responsible for freeing Path objects returned from
536 Context::copy_path() and Context::copy_path_flat().
538 2006-05-08 Jonathon Jongsma <jonathon.jongsma@gmail.com>
540 * cairomm/cairomm.h: Add doxygen API introduction test here.
541 * docs/reference/Doxyfile.in:
542 * docs/reference/Makefile.am:
543 * docs/reference/cairomm-header.html:
544 * docs/reference/cairomm.css:
545 * docs/reference/introduction.h: fix up some documentation presentation
546 issues that turned up with newer versions of doxygen.
548 2006-05-08 Jonathon Jongsma <jonathon.jongsma@gmail.com>
550 * configure.in: remove check for perl since we're not using any of the
551 gmmproc stuff for cairomm
552 * docs/reference/Makefile.am: add documentation dependency on all of the
553 headers in the cairomm/ directory so that if a header changes the
554 documentation will be rebuilt.
556 2006-04-20 Murray Cumming <murrayc@murrayc.com>
558 * cairomm/context.cc:
559 * cairomm/context.h: mask(pattern) and mask(surface): Make the parameter
560 const, because I am fairly sure that the C function does not change it.
562 2006-04-06 Jonathon Jongsma <jonathon.jongsma@gmail.com>
564 * Makefile.am: Add a brief description of cairomm to the release
565 announcement template
567 2006-04-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
569 * docs/reference/Doxyfile.in:
570 * docs/reference/Makefile.am: A couple minor build fixes to make distcheck
573 2006-04-04 Jonathon Jongsma <jonathon.jongsma@gmail.com>
575 * NEWS: add news for 0.6.0 release
576 * configure.in: bump version to 0.6.0
578 2006-04-03 Jonathon Jongsma <jonathon.jongsma@gmail.com>
580 * examples/text-rotate/text-rotate.cc: protect PNG functions with #ifdef in
581 case cairo wasn't compiled with PNG support
583 2006-03-31 Danilo Piazzalunga <danilopiazza@gmail.com>
587 * docs/reference/Makefile.am: add convenience targets for cleaning and
588 rebuilding documentation (doc-clean and doc-rebuild).
590 2006-03-30 Danilo Piazzalunga <danilopiazza@gmail.com>
592 * configure.in: enable documentation even if doxygen and/or graphviz
593 are missing, so the docs will be installed when building a release.
594 * docs/reference/Makefile.am: don't remove html directory with `make clean`,
595 so that users of the tarball releases don't destroy the pre-built
596 documentation when running make clean. Change to maintainer-clean
598 2006-03-29 Jonathon Jongsma <jonathon.jongsma@gmail.com>
600 * configure.in: added tests for doxygen and graphviz which displays a
601 warning if the user has --enable-docs set but doesn't have doxygen or
604 2006-03-28 Danilo Piazzalunga <danilopiazza@gmail.com>
606 * cairomm/enums.h: Stop using CAIRO_EXTEND_PAD, as it only exists
607 in the 1.1.1 development branch.
609 2006-03-14 Jonathon Jongsma <jonathon.jongsma@gmail.com>
612 * examples/Makefile.am:
613 * examples/text-rotate/.cvsignore:
614 * examples/text-rotate/Makefile.am:
615 * examples/text-rotate/text-rotate.cc: Added another basic example,
616 borrowed from a test-case in cairo. This one is just a simple example of
617 using text in cairomm
619 2006-03-14 Jonathon Jongsma <jonathon.jongsma@gmail.com>
621 * cairomm/fontface.h:
622 * cairomm/fontoptions.h:
624 * cairomm/pattern.h: include <cairo.h> instead of <cairo/cairo.h> since it
625 didn't want to compile on windows without these
626 * cairomm/win32_surface.cc:
627 * cairomm/win32_surface.h: Move the include of cairo-win32.h from the
628 source file to the header since the declaration of create() needs the HDC
630 With these changes, cairomm should compile the Win32Surface cleanly with
631 mingw on Microsoft Windows
633 2006-03-12 Danilo Piazzalunga <danilopiazza@gmail.com>
635 * autogen.sh: Allow overriding aclocal, automake, autoconf and libtoolize
636 using environment variables. Taken from cairo's autogen.sh.
638 2006-03-06 Jonathon Jongsma <jonathon.jongsma@gmail.com>
640 * cairomm/*.cc, *.h: add vim modelines to set proper indentation for
641 cairomm when using vim
643 2006-02-28 Jonathon Jongsma <jonathon.jongsma@gmail.com>
645 * cairomm/context.cc:
648 * cairomm/fontoptions.cc:
649 * cairomm/fontoptions.h:
650 * cairomm/pattern.cc:
652 * cairomm/surface.h: wrapped all of the enum types with cairomm
653 types within the Cairo namespace, so now (for example) the values for
654 Cairo::Format are something like Cairo::FORMAT_ARGB32 instead of the base
655 cairo types like CAIRO_FORMAT_ARGB_32.
656 * examples/png_file/main.cc: fixed example to work with the new namespaced
659 2006-02-27 Jonathon Jongsma <jonathon.jongsma@gmail.com>
661 * cairomm/exception.h:
662 * docs/reference/Doxyfile.in:
663 * docs/reference/Makefile.am: hide some of the private types and functions
664 from the Doxygen API reference documentation
666 2006-02-27 Stefan Kersten <steve@k-hornz.de>
668 * cairomm/surface.cc: fix an extra trailing parentheses in
669 GlitzSurface::create()
671 2006-02-22 Danilo Piazzalunga <danilopiazza@gmail.com>
673 * examples/README: Write some basic information about each example
675 2006-02-22 Jonathon Jongsma <jonathon.jongsma@gmail.com>
677 * docs/reference/Makefile.am: add target for publishing the API reference
680 2006-02-20 Danilo Piazzalunga <danilopiazza@gmail.com>
682 * Makefile.am: Include MAINTAINERS in distribution. Fixes Bug #5982
684 2006-02-17 Danilo Piazzalunga <danilopiazza@gmail.com>
686 * COPYING: Use the text from the Library GPL 2.0, which is the actual
687 license of cairomm. Fixes Bug #5934
689 2006-02-17 Danilo Piazzalunga <danilopiazza@gmail.com>
693 * cairomm/context.cc:
696 * cairomm/exception.cc:
697 * cairomm/exception.h:
698 * cairomm/fontface.cc:
699 * cairomm/fontface.h:
700 * cairomm/fontoptions.cc:
701 * cairomm/fontoptions.h:
704 * cairomm/pattern.cc:
706 * cairomm/private.cc:
709 * cairomm/surface.cc:
711 * cairomm/win32_surface.cc:
712 * cairomm/win32_surface.h:
713 * cairomm/xlib_surface.cc:
714 * cairomm/xlib_surface.h: Update FSF's postal address in GPL/LGPL
715 comment headings. Fixes Bug #5933
717 2006-02-17 Danilo Piazzalunga <danilopiazza@gmail.com>
719 * examples/*/.cvsignore: Bug #5927: added .cvsignore files to examples
722 2006-02-17 Danilo Piazzalunga <danilopiazza@gmail.com>
727 * cairomm/exception.cc:
728 * cairomm/exception.h: Remove lingering references to libxml++
730 2006-02-17 Danilo Piazzalunga <danilopiazza@gmail.com>
732 * configure.in: Bug #5929: Output files in docs subdir only if
733 --enable-docs is set. This prevents configure from generating files which
734 are not cleaned up when --disable-docs is used.
735 Use AC_CONFIG_FILES and AC_OUTPUT as recommended.
737 2006-02-16 Jonathon Jongsma <jonathon.jongsma@gmail.com>
739 * docs/reference/Doxyfile.in:
740 * docs/reference/cairomm.css: added some style customisations to the API
741 doc so that it fits in with the overall Cairo style a bit better
743 2006-02-16 Jonathon Jongsma <jonathon.jongsma@gmail.com>
746 * MAINTAINERS: Add my information to the Maintainers and authors file
750 2006-02-09 Jonathon Jongsma <jonathon.jongsma@gmail.com>
752 * docs/reference/Makefile.am: added a 'html' target to satisfy the dist
755 2006-02-08 Jonathon Jongsma <jonathon.jongsma@gmail.com>
757 * cairomm/context.h: Added a lot of documentation for the Cairo::Context
758 class taken from the cairo docs. It's not complete, but the basics are all
760 * docs/reference/Makefile.am: make use of existing Makefile variable
761 * NEWS: update for 0.5.0 release
763 2006-02-07 Jonathon Jongsma <jonathon.jongsma@gmail.com>
765 * Makefile.am: add docs/ subdir
766 * configure.in: added an --enable-docs switch to the configure script
767 (enabled by default), and added AC_OUTPUT directives for the documentation
771 * docs/reference/.cvsignore:
772 * docs/reference/Doxyfile.in:
773 * docs/reference/Makefile.am:
774 * docs/reference/introduction.h: Added infrastructure to build and install
775 the API documentation for cairomm (based on libxml++ makefiles).
777 2006-01-27 Jonathon Jongsma <jonathon.jongsma@gmail.com>
780 * cairomm/.cvsignore: update .cvsignore files
781 * cairomm/surface.cc:
782 * cairomm/surface.h: change Surface::create function to take a
783 RefPtr<Surface> instead of Surface&
785 2006-01-27 Murray Cumming <murrayc@murrayc.com>
787 * examples/pdf-surface/Makefile.am: Remove extra LDADD that was breaking
790 2006-01-26 Murray Cumming <murrayc@murrayc.com>
792 * examples/ps-surface/main.cc:
793 * examples/svg-surface/main.cc: Correct the text of the messages.
795 2006-01-25 Jonathon Jongsma <jonathon.jongsma@gmail.com>
798 * examples/Makefile.am:
799 * examples/pdf-surface/:
800 * examples/ps-surface/:
801 * examples/svg-surface/: add examples for additional surfaces
803 2006-01-24 Murray Cumming <murrayc@murrayc.com>
805 * cairomm/Makefile.am:
806 * cairomm/surface.cc:
808 * cairomm/xlib_surface.cc:
809 * cairomm/xlib_surface.h:
810 * cairomm/win32_surface.cc:
811 * cairomm/win32_surface.h: Moved XlibSurface and
812 Win32Surface into separate files, not #included by
813 the main cairomm.h file, so that developers do not need to
814 suffer the Xlib.h or Windows namespace pollution unless they really need to.
815 For instance, this fixes the gtkmm 2.9 build which was broken by the
816 Display struct in Xlib.h.
818 2006-01-15 Jonathon Jongsma <jonathon.jongsma@gmail.com>
820 * cairomm/surface.cc:
821 * cairomm/surface.h: backwards-incompatible API change for the Surface
822 types. Cairo::Surface is now a base class for all of the other surface
823 types, and should not be used directly. New Surface types include
824 ImageSurface, XlibSurface, Win32Surface, PdfSurface, PsSurface,
825 SvgSurface, and GlitzSurface.
826 Modified Surface::write_to_png() and Surface::write_to_png_stream() so
827 that they throw exceptions like the other functions instead of returning a
828 cairo_status_t value.
829 Added API documentation for all Surface classes and all member functions
830 of the Surface class heirarchy.
831 * examples/png_file/Makefile.am: added generated PNG file to CLEANFILES
832 * examples/png_file/main.cc: updated the PNG example to use the new
833 ImageSurface class instead of using the Surface class directly.
834 * cairomm/*: Renamed the Cairo::Status type to Cairo::ErrorStatus since it
835 conflicts with a #define Status in XLib and is not used exposed in the API
838 2006-01-06 Jonathon Jongsma <jonathon.jongsma@gmail.com>
840 * cairomm/surface.cc:
841 * cairomm/surface.h: Added implementation of write_to_png() and
842 write_to_png_stream() when PNG support is available in the base cairo
844 * examples/png_file/*: Added an example of creating an image surface and
845 saving it to a png image file
846 * examples/Makefile.am: add new example directory to SUBDIRS list
847 * configure.in: added output declaration for examples/png_file/Makefile
848 * examples/makefile.am_fragment: fix leftover libxml boilerplate
850 2006-01-03 Jonathon Jongsma <jonathon.jongsma@gmail.com>
852 * cairomm/surface.cc: added missing implementations for reference() and
853 unreference() functions
857 2005-12-17 Murray Cumming <murrayc@murrayc.com>
859 * cairomm/Makefile.am:
860 * cairomm/refptr.h: Add shared
861 reference-counting smartpointer, using
862 the reference-count in the object. A copy
863 of the tried and tested glibmm RefPtr.
864 * cairomm/context.cc:
866 * cairomm/fontface.cc:
867 * cairomm/fontface.h:
868 * cairomm/pattern.cc:
870 * cairomm/surface.cc:
871 * cairomm/surface.h: Make constructors protected
872 and add public static create() methods that return
873 instances in RefPtr<>s. This allows reference-counted
874 objects to be clearly const or non-const, and allows
875 casting between related types.
877 2005-12-17 Murray Cumming <murrayc@murrayc.com>
879 * cairomm/context.cc:
880 * cairomm/context.h: Change set_dash(void) to
881 unset_dash(). Change rotate_deg() to
882 rotate_degrees(). Change identity_matrix() to
883 set_identity_matrix(). Change new_path() to
885 * cairomm/fontface.cc:
886 * cairomm/fontface.h: Comment-out
887 get/set_user_data(), because it seems useless.
891 2005-12-08 Murray Cumming <murrayc@murrayc.com>
893 * cairomm/pattern.cc:
894 * cairomm/pattern.h: Create a hierarchy of pattern
895 classes, as suggested by the C documentation, because
896 not all functions are meaningful for all pattern types.
898 2005-12-07 Murray Cumming <murrayc@murrayc.com>
900 * cairomm/context.cc:
901 * cairomm/context.h: font_extents(), stroke_extents(),
902 glyph_extents(), fill_extents(): Add get_ prefix and
905 2005-12-07 Murray Cumming <murrayc@murrayc.com>
907 * cairomm/context.cc:
908 * cairomm/context.h: Add typedef for Matrix, though we
909 probably want to derive a class with a C++-like matrix
910 API, with operator overloading.
912 2005-12-07 Murray Cumming <murrayc@murrayc.com>
914 * cairomm/exception.cc:
915 * cairomm/exception.h: Rename to logic_error, because
916 the cairo documentation says that most of them are
917 programming errors, not runtime errors. Derive from
918 std::logic_error because of this.
919 * cairomm/private.cc:
920 * cairomm/private.h: Throw std::bad_alloc for memory
921 errors, and std::io_base::failure for read/write runtime
922 errors, as suggested by the cairo language-binding
925 2005-12-07 Murray Cumming <murrayc@murrayc.com>
927 * cairomm/context.cc:
928 * cairomm/fontoptions.cc:
929 * cairomm/surface.cc: Check for errors in
930 constructors, as per the error-handling advice in the
931 language bindings section of the cairo documentation.
933 2005-12-07 Murray Cumming <murrayc@murrayc.com>
935 * cairomm/context.cc:
936 * cairomm/context.h: Change mask_surface() to
937 mask() and set_source_surface() to set_source(),
938 as per the method overloading advice in the
939 language bindings section of the cairo documentation.
943 2005-12-02 Murray Cumming <murrayc@murrayc.com>
945 * cairomm/cairomm.h: Put sensible stuff in here,
946 instead of my copy/paste stuff from libxml++.
947 * cairomm/context.cc:
950 * cairomm/exception.cc:
951 * cairomm/exception.h:
952 * cairomm/fontface.cc:
953 * cairomm/fontface.h:
954 * cairomm/fontoptions.cc:
955 * cairomm/fontoptions.h:
958 * cairomm/pattern.cc:
960 * cairomm/private.cc:
962 * cairomm/surface.cc:
963 * cairomm/surface.h: Add LGPL comment headings.