void EditorTweaks::DoAlign(unsigned int idx) { if (idx >= AlignerMenuEntries.size()) return; AlignToString(AlignerMenuEntries[idx].ArgumentString); AlignerMenuEntries[idx].UsageCount ++; AlignerLastUsedIdx = idx; AlignerLastUsedAuto = false; AlignerLastUsed = true; }
void EditorTweaks::OnAlign(wxCommandEvent& event) { int id = event.GetId(); for ( unsigned int i = 0 ; i < AlignerMenuEntries.size(); i++) { if ( AlignerMenuEntries[i].id == id ) { AlignToString(AlignerMenuEntries[i].ArgumentString); AlignerMenuEntries[i].UsageCount ++; break; } } }
void EditorTweaks::OnAlignOthers(wxCommandEvent& /*event*/) { wxString NewAlignmentString; wxString NewAlignmentStringName; bool NewCharacter = true; // create the name and call the first DialogBox const wxString MessageArgumentString = _("Insert a new character"); const wxString CaptionArgumentString = _("New character"); NewAlignmentString = cbGetTextFromUser( MessageArgumentString, CaptionArgumentString ); if (NewAlignmentString !=_T("")) { // check if the new character is equal as an exist unsigned int i; for ( i = 0 ; i < AlignerMenuEntries.size(); i++) { if (AlignerMenuEntries[i].ArgumentString == NewAlignmentString) { NewCharacter = false; break; } } if (NewCharacter) { AlignerMenuEntry e; e.UsageCount = 0; e.id = wxNewId(); e.ArgumentString = NewAlignmentString; AlignerMenuEntries.push_back(e); Connect(e.id, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(EditorTweaks::OnAlign) ); } // create the name and call the second DialogBox const wxString MessageName = _("Insert a name for the (new) character"); const wxString CaptionName = NewAlignmentString; NewAlignmentStringName = cbGetTextFromUser( MessageName, CaptionName , AlignerMenuEntries[i].MenuName); if (NewAlignmentStringName != _T("")) AlignerMenuEntries[i].MenuName = NewAlignmentStringName; AlignToString(AlignerMenuEntries[i].ArgumentString); AlignerMenuEntries[i].UsageCount++; } }