bool NotepadPlusWrapper::runMenuCommand(boost::python::str menuName, boost::python::str menuOption, bool refreshCache) { bool retVal = false; MenuManager *menuManager = MenuManager::getInstance(); if (!menuName.is_none() && !menuOption.is_none()) { std::shared_ptr<TCHAR> tmenuName = WcharMbcsConverter::char2tchar(boost::python::extract<const char *>(menuName)); std::shared_ptr<TCHAR> tmenuOption = WcharMbcsConverter::char2tchar(boost::python::extract<const char *>(menuOption)); GILRelease release; idx_t commandID = menuManager->findMenuCommand(tmenuName.get(), tmenuOption.get(), refreshCache); if (commandID) { ::SendMessage(m_nppHandle, WM_COMMAND, commandID, 0); retVal = true; } } return retVal; }