Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=2d0d63f2373910d1c58177c9c63e0bdd83249e09
commit 2d0d63f2373910d1c58177c9c63e0bdd83249e09 Author: Michel Hermier <[email protected]> Date: Sat Jun 7 11:44:10 2014 +0200 libpacman: Add signals to __pmtrans_t to prepare removal of pmtrans_cbs_t. diff --git a/lib/libpacman/trans.cpp b/lib/libpacman/trans.cpp index cf250e0..e1939e8 100644 --- a/lib/libpacman/trans.cpp +++ b/lib/libpacman/trans.cpp @@ -192,6 +192,7 @@ int _pacman_trans_event(pmtrans_t *trans, unsigned char event, void *data1, void if(trans->cbs.event) { trans->cbs.event(event, data1, data2); } + trans->event(event, data1, data2); return 0; } diff --git a/lib/libpacman/trans.h b/lib/libpacman/trans.h index b590780..4b892c6 100644 --- a/lib/libpacman/trans.h +++ b/lib/libpacman/trans.h @@ -58,6 +58,10 @@ typedef struct __pmtrans_cbs_t { struct __pmtrans_t : public ::flib::FObject { + flib::FSignal<void(unsigned char, void *, void *)> event; + flib::FSignal<void(unsigned char, void *, void *, void *, int *)> conv; + flib::FSignal<void(unsigned char, const char *, int, int, int)> progress; + __pmtrans_t(pmtranstype_t type, unsigned int flags, pmtrans_cbs_t cbs); ~__pmtrans_t(); @@ -93,6 +97,7 @@ do { \ if(t && t->cbs.conv) { \ t->cbs.conv((q), (d1), (d2), (d3), (r)); \ } \ + t->conv((q), (d1), (d2), (d3), (r)); \ } while(0) #define PROGRESS(_t, e, p, per, h, r) \ do { \ @@ -100,6 +105,7 @@ do { \ if(t && t->cbs.progress) { \ t->cbs.progress((e), (p), (per), (h), (r)); \ } \ + t->progress((e), (p), (per), (h), (r)); \ } while(0) int _pacman_trans_event(pmtrans_t *trans, unsigned char, void *, void *); _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
