- location->start_changed.connect (mem_fun(*this, &Editor::location_changed));
- location->end_changed.connect (mem_fun(*this, &Editor::location_changed));
- location->changed.connect (mem_fun(*this, &Editor::location_changed));
- location->name_changed.connect (mem_fun(*this, &Editor::location_changed));
- location->FlagsChanged.connect (mem_fun(*this, &Editor::location_flags_changed));
+ location->start_changed.connect (*this, invalidator (*this), ui_bind (&Editor::location_changed, this, _1), gui_context());
+ location->end_changed.connect (*this, invalidator (*this), ui_bind (&Editor::location_changed, this, _1), gui_context());
+ location->changed.connect (*this, invalidator (*this), ui_bind (&Editor::location_changed, this, _1), gui_context());
+ location->name_changed.connect (*this, invalidator (*this), ui_bind (&Editor::location_changed, this, _1), gui_context());
+ location->FlagsChanged.connect (*this, invalidator (*this), ui_bind (&Editor::location_flags_changed, this, _1, _2), gui_context());