mirror of
https://github.com/Relintai/rcpp_framework.git
synced 2025-05-06 17:51:36 +02:00
Add the emitter object as a parameter.
This commit is contained in:
parent
d42311356f
commit
0d3db0979a
@ -36,13 +36,17 @@ bool Signal::is_connected_static(void (*func)(Signal *)) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Signal::emit() {
|
void Signal::emit(Object *p_emitter) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
for (int i = 0; i < entries.size(); ++i) {
|
for (int i = 0; i < entries.size(); ++i) {
|
||||||
entries[i]->call(this);
|
entries[i]->call(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Signal::emit(const Variant &p1) {
|
void Signal::emit(Object *p_emitter, const Variant &p1) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
params.push_back(p1);
|
params.push_back(p1);
|
||||||
|
|
||||||
for (int i = 0; i < entries.size(); ++i) {
|
for (int i = 0; i < entries.size(); ++i) {
|
||||||
@ -51,7 +55,9 @@ void Signal::emit(const Variant &p1) {
|
|||||||
|
|
||||||
params.clear();
|
params.clear();
|
||||||
}
|
}
|
||||||
void Signal::emit(const Variant &p1, const Variant &p2) {
|
void Signal::emit(Object *p_emitter, const Variant &p1, const Variant &p2) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
params.push_back(p1);
|
params.push_back(p1);
|
||||||
params.push_back(p2);
|
params.push_back(p2);
|
||||||
|
|
||||||
@ -61,7 +67,9 @@ void Signal::emit(const Variant &p1, const Variant &p2) {
|
|||||||
|
|
||||||
params.clear();
|
params.clear();
|
||||||
}
|
}
|
||||||
void Signal::emit(const Variant &p1, const Variant &p2, const Variant &p3) {
|
void Signal::emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
params.push_back(p1);
|
params.push_back(p1);
|
||||||
params.push_back(p2);
|
params.push_back(p2);
|
||||||
params.push_back(p3);
|
params.push_back(p3);
|
||||||
@ -73,7 +81,9 @@ void Signal::emit(const Variant &p1, const Variant &p2, const Variant &p3) {
|
|||||||
params.clear();
|
params.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Signal::emit(const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4) {
|
void Signal::emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
params.push_back(p1);
|
params.push_back(p1);
|
||||||
params.push_back(p2);
|
params.push_back(p2);
|
||||||
params.push_back(p3);
|
params.push_back(p3);
|
||||||
@ -86,7 +96,9 @@ void Signal::emit(const Variant &p1, const Variant &p2, const Variant &p3, const
|
|||||||
params.clear();
|
params.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Signal::emit(const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4, const Variant &p5) {
|
void Signal::emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4, const Variant &p5) {
|
||||||
|
emitter = p_emitter;
|
||||||
|
|
||||||
params.push_back(p1);
|
params.push_back(p1);
|
||||||
params.push_back(p2);
|
params.push_back(p2);
|
||||||
params.push_back(p3);
|
params.push_back(p3);
|
||||||
|
@ -11,7 +11,7 @@ class Signal : public Object {
|
|||||||
RCPP_OBJECT(Signal, Object);
|
RCPP_OBJECT(Signal, Object);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
Object *owner;
|
Object *emitter;
|
||||||
Vector<Variant> params;
|
Vector<Variant> params;
|
||||||
Vector<Variant> static_data;
|
Vector<Variant> static_data;
|
||||||
|
|
||||||
@ -26,12 +26,12 @@ public:
|
|||||||
void disconnect_static(void (*func)(Signal *));
|
void disconnect_static(void (*func)(Signal *));
|
||||||
bool is_connected_static(void (*func)(Signal *));
|
bool is_connected_static(void (*func)(Signal *));
|
||||||
|
|
||||||
void emit();
|
void emit(Object *p_emitter);
|
||||||
void emit(const Variant &p1);
|
void emit(Object *p_emitter, const Variant &p1);
|
||||||
void emit(const Variant &p1, const Variant &p2);
|
void emit(Object *p_emitter, const Variant &p1, const Variant &p2);
|
||||||
void emit(const Variant &p1, const Variant &p2, const Variant &p3);
|
void emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3);
|
||||||
void emit(const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4);
|
void emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4);
|
||||||
void emit(const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4, const Variant &p5);
|
void emit(Object *p_emitter, const Variant &p1, const Variant &p2, const Variant &p3, const Variant &p4, const Variant &p5);
|
||||||
|
|
||||||
Signal();
|
Signal();
|
||||||
~Signal();
|
~Signal();
|
||||||
|
Loading…
Reference in New Issue
Block a user