3
libsigc++ implements a typesafe callback system for standard C++. It
4
allows you to define signals and to connect those signals to any
5
callback function, either global or a member function, regardless of
6
whether it is static or virtual.
8
libsigc++ is used by gtkmm to wrap the GTK+ signal system. It does not depend
11
libsigc++ 2.0 uses modern C++ mechanisms to achieve a highly flexible,
12
yet typesafe callback system. It supports all features of libsigc++ 1.2
13
and improves upon it with a simpler and more powerful API.
15
This version of libsigc++ needs GNU g++ 3.2 or higher to compile.
18
*** ChangeLog summary:
3
* Added an include of functors/slot.h that was mistakenly removed
5
(Deng Xiyue) Bug #521418.
9
* Really fix the build with Sun CC.
10
(Elaine Xiong. Bug #302098)
14
* Build fixes when using gcc 4.3 pre-releases.
15
(Ryan Hill, Vladimir Marek)
19
WARNING: This is an unstable release and should not yet be
20
packaged by distributions unless libsigc++ 2.0.x does not
21
build for some reason (Please report such bugs).
23
* Removed the SigC:: namespace and other compatibility API,
24
to fix the build with some versions of some compilers,
25
such as the SUN Forte C++ CC compiler.
26
See bug #302098, for instance
29
- Added Added typedefs for
30
value_type, reference, and pointer, so that these
31
iterators are more like standard C++ iterators, so they can
32
be used with standard C++ algorithms.
33
(Michael Elkstrand) (Bug #417926).
34
- Added emit_reverse().
39
* slot::disconnect(): Make this work.
40
sigc::connection::disconnect() already worked.
41
(James Lin, Murray Cumming)
42
* visit_each compilation problem fixed.
47
* Fixed build for SUN Forte C++ 5.5
48
* Fixed build for MSVC++ 7.1
49
* Fixed crash when using --no-inline with g++.
53
* g++ 3.2 (and Mac OS X g++ 3.3) build fix.
55
* Compose: Fix slot lifetime regression introduced in
56
2.0.9. (Philip Langdale)
57
* tests: Small ISO C++ correctness fix (Marek Rouchal)
58
* Don't specify unused function parameter names.
63
* SUN Forte 5.7 build fix for ambiguity when using
64
inner template class. However, you still need the
65
patch in bug #302098 to finish the build.
69
* signal_emit::emit(): Ensure the correct order of
70
destruction of the member variables, to avoid a leak.
71
(Andreas Ames, bug #306249)
72
* Allow recursive signal emission again.
73
(Neal E. Coombes, bug #303896)
74
* SUN Forte CC 5.5 build fixes:
75
- test_compatibility minor fix.
76
- visit_each() template specializations:
77
Mention the bool I_derives_trackable template type,
78
(Friedemann Kleint, bug #305647)
79
- Check for the non-standard SUN reverse_iterator,
80
and use alternative code if necessary.
85
* Fixes crashes when using virtual inheritance, particularly
86
with bound by-reference parameters, caused by casting
87
from derived to base when the derived destructor has run.
89
This might affect non-g++ compilers, so do tell us about
94
* Build fixes for SUN Forte, Tru64
95
(Murray Cumming), and MSVC++ (Cedric Gustin).
99
* tests: Include <new> to avoid unresolved symbols on Tru64.
101
* When signal handlers are connected made during an emit
102
of the same signal, prevent them from being called in the
103
same emit, to prevent infinite loops.
105
* Performance improvement in a corner case.
110
* sigc::bind() now works with the AIX and Tru64 compilers.
111
See the comments in sigc++/visit_each.h: visit_each_type()
112
if you have compilation problems.
114
* sigc::var() is now documented. (Roger Ferrer Ibáñez)
118
* Maybe avoid (incorrect) warning with g++ 3.3.5.
120
* Fix namespace ambiguity when using multiple
121
major versions of libsigc++. (Liza Klerck)
125
* Now builds with the following compilers, in addition to
126
the existing GNU g++, SUN Forte CC 5.5, MSVC++ .Net 2003,
130
- IRIX MIPSpro 7.4.2m
131
(Older versions of all these compilers might also work.)
132
(Murray Cumming, www.thewrittenword.com)
133
* MSVC++ .Net 2003 build improvements.
134
(Cedric Gustin, Timothy M. Shead)
135
* Replace C-style casts with reinterpret_cast<> and
136
static_cast<>. (e97_far at e.kth.se).
137
* Documentation: Added manual, based on the manual in
138
libsigc++ 1.2, but updated for the new API.