void CMDBoard::Write(Player* mobile, const std::string &subject) { BoardPost*post = NULL; Editor* ed = NULL; if ((!subject.length()) || (subject.length() > 60)) { mobile->Message(MSG_INFO, "You must provide a subject that is no longer than 60 characters."); return; } post = new BoardPost(); post->SetSubject(subject); post->SetPoster(mobile); ed = new Editor(); ed->SetArg((void*)post); ed->events.AddCallback("save", std::bind(&CMDBoard::_SavePost, this, std::placeholders::_1, std::placeholders::_2)); ed->events.AddCallback("abort", std::bind(&CMDBoard::_AbortPost, this, std::placeholders::_1, std::placeholders::_2)); ed->events.AddCallback("atexit", std::bind(&CMDBoard::_ExitPost, this, std::placeholders::_1, std::placeholders::_2)); ed->EnterEditor(mobile); }