OLD | NEW |
(Empty) | |
| 1 #ifndef ADBLOCK_PLUS_TOOLS_H |
| 2 #define ADBLOCK_PLUS_TOOLS_H |
| 3 |
| 4 #include <emscripten.h> |
| 5 |
| 6 #define FILTER_PROPERTY(type, name, getter, setter) \ |
| 7 private:\ |
| 8 type name;\ |
| 9 public:\ |
| 10 type getter() const\ |
| 11 {\ |
| 12 return name;\ |
| 13 }\ |
| 14 void setter(type value)\ |
| 15 {\ |
| 16 if (name != value)\ |
| 17 {\ |
| 18 type oldvalue = name;\ |
| 19 name = value;\ |
| 20 std::u16string action(u"filter." #name);\ |
| 21 FilterPtr filter = shared_from_this();\ |
| 22 EM_ASM_ARGS({\ |
| 23 var pointerToFilter = require("filterClasses").pointerToFilter;\ |
| 24 var filter = pointerToFilter($1);\ |
| 25 FilterNotifier.triggerListeners(getStringData($0), filter, $2, $3);\ |
| 26 }, &action, &filter, value, oldvalue);\ |
| 27 }\ |
| 28 } |
| 29 |
| 30 #endif |
OLD | NEW |