diff options
author | fcolin | 2007-02-01 13:00:29 +0000 |
---|---|---|
committer | fcolin | 2007-02-01 13:00:29 +0000 |
commit | 8e63bb805a09c8c1bd019347071dad478ea034b9 (patch) | |
tree | bc925b65e53235b207bf051f3531808ae9d13cff /Ivy | |
parent | 4a8451ff484c9fe7656acab4edd61713e2212ed6 (diff) | |
download | ivy-cplusplus-8e63bb805a09c8c1bd019347071dad478ea034b9.zip ivy-cplusplus-8e63bb805a09c8c1bd019347071dad478ea034b9.tar.gz ivy-cplusplus-8e63bb805a09c8c1bd019347071dad478ea034b9.tar.bz2 ivy-cplusplus-8e63bb805a09c8c1bd019347071dad478ea034b9.tar.xz |
Utilisateur : Fcolin Date : 1/06/06 Heure : 10:14 Archivé dans $/Bus/Ivy Commentaire: ajout Binding Callback et SetFilter (vss 31)
Diffstat (limited to 'Ivy')
-rw-r--r-- | Ivy/IvyApplication.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Ivy/IvyApplication.cxx b/Ivy/IvyApplication.cxx index c4de075..c3f6f02 100644 --- a/Ivy/IvyApplication.cxx +++ b/Ivy/IvyApplication.cxx @@ -157,6 +157,7 @@ void IvyApplication::OnReceive(char * line) #ifdef IVY_DEBUG
TRACE("Warning exp='%s' can't match removing from %s\n",arg,appname.c_str());
#endif //IVY_DEBUG
+ bus->CallBindingFilterCallback( this, id, arg );
return;
}
#ifdef USE_PCRE
@@ -185,11 +186,16 @@ void IvyApplication::OnReceive(char * line) }
#endif
if ( regexp_in.size() < (id + 1) )
+ {
regexp_in.resize( id + 1 );
+ regexp_str_in.resize( id + 1 );
+ }
regexp_in[ id ] = exp;
+ regexp_str_in[ id ] = arg;
#ifdef IVY_DEBUG
TRACE("Adding regexp[%d]='%s' size: %d\n",id,arg,regexp_in.size());
#endif //IVY_DEBUG
+ bus->CallBindingAddCallback( this, id, arg );
break;
case DelRegexp:
@@ -199,6 +205,7 @@ void IvyApplication::OnReceive(char * line) if ( regexp_in[id] )
{
exp = regexp_in[ id ];
+ bus->CallBindingRemoveCallback( this, id, regexp_str_in[id].c_str() );
#ifdef USE_PCRE
pcre_free( exp );
#else
|