Я использую VS2012, который поддерживает адаптер привязки C ++ 11. Чтобы связать первый элемент двоичной функции (как это делает использование bind1st), вам нужно добавить _1 (аргумент-заполнитель). Нужно включить функционал для привязки.
using namespace std::placeholders;
std::transform( myv1.begin(), myv1.end(), myv1.begin(),
std::bind( std::multiplies<double>(),3,_1));
Только что нашел это:
sortable_element_for_nested_set
на github
Похоже, он справится со своей задачей, однако у меня есть некоторые ошибки при попытке его реализовать. Это в основном заставляет javascript возвращать идентификатор перемещенного элемента, затем проходит через элементы и возвращает его новые родительские, левые и правые значения. Не могу поверить, что на то, чтобы написать что-то подобное, потребовалось столько времени! К счастью, это было именно тогда, когда мне это было нужно :)