+ // Accelerators
+ wxAcceleratorEntry entries[6];
+
+ entries[0].Set(wxACCEL_CMD, (int) 'C', wxID_COPY);
+ entries[1].Set(wxACCEL_CMD, (int) 'X', wxID_CUT);
+ entries[2].Set(wxACCEL_CMD, (int) 'V', wxID_PASTE);
+ entries[3].Set(wxACCEL_CMD, (int) 'A', wxID_SELECTALL);
+ entries[4].Set(wxACCEL_CMD, (int) 'Z', wxID_UNDO);
+ entries[5].Set(wxACCEL_CMD, (int) 'Y', wxID_REDO);
+
+ wxAcceleratorTable accel(6, entries);
+ SetAcceleratorTable(accel);
+
+ m_contextMenu = new wxMenu;
+ m_contextMenu->Append(wxID_UNDO, _("&Undo"));
+ m_contextMenu->Append(wxID_REDO, _("&Redo"));
+ m_contextMenu->AppendSeparator();
+ m_contextMenu->Append(wxID_CUT, _("Cu&t"));
+ m_contextMenu->Append(wxID_COPY, _("&Copy"));
+ m_contextMenu->Append(wxID_PASTE, _("&Paste"));
+ m_contextMenu->Append(wxID_CLEAR, _("&Delete"));
+ m_contextMenu->AppendSeparator();
+ m_contextMenu->Append(wxID_SELECTALL, _("Select &All"));
+
+ long ids = wxWindow::NewControlId();
+ m_contextMenu->AppendSeparator();
+ m_contextMenu->Append(ids, _("&Properties"));
+
+ Connect(ids, wxEVT_UPDATE_UI, wxUpdateUIEventHandler(wxRichTextCtrl::OnUpdateImage));
+ Connect(ids, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(wxRichTextCtrl::OnImage));
+ m_imagePropertyId = ids;