needed to be added instead of using Ctrl+Left_Mouse_Click
void cbStyledTextCtrl::SelectWord()
{
const int nPos = GetCurrentPos();
int nPos_Start = WordStartPosition(nPos, true);
int nPos_End = WordEndPosition(nPos, true);
wxScintilla::SetEmptySelection(nPos);
if((nPos == nPos_Start) || (nPos == nPos_End))
{
return;
}
wxScintilla::SetSelectionStart(nPos_Start);
wxScintilla::SetSelectionEnd(nPos_End);
}
//
//main.cpp
int idEditSelectWord = XRCID("idEditSelectWord");
...
EVT_MENU(idEditSelectWord, MainFrame::OnEditSelectWord)
..
void MainFrame::OnEditSelectWord(wxCommandEvent& /*event*/)
{
if(cbEditor* p_cbEditor = Manager::Get()->GetEditorManager()->GetBuiltinActiveEditor())
{
p_cbEditor->GetControl()->SelectWord();
}
}
//main_menu.xrc
<object class="wxMenuItem" name="idEditSelectWord">
<label>Select Word</label>
<accel>Ctrl-P</accel>
<help>Selects word under keyboard cursor</help>
</object>
/// paste word
void cbStyledTextCtrl::PasteWord()
{
if(true == GetSelectedText().IsEmpty())
{
SelectWord();
}
Paste();
}