289 #include <wx/msgdlg.h>
290 #include <wx/statline.h>
291 #include <wx/clipbrd.h>
293 #include <wx/filedlg.h>
294 #include <wx/display.h>
295 #include <wx/evtloop.h>
297 #include <wx/utils.h>
311 virtual string GetName()
const {
return "Sequence Editing"; }
312 virtual void GetVersion(
size_t& verMajor,
size_t& verMinor,
size_t& verPatch)
const
338 "<std>/etc/macro_scripts/list_of_macros.mql",
339 "<std>/etc/macro_scripts/autofix_gb.mql",
340 "<std>/etc/macro_scripts/autofix_tsa.mql",
341 "<std>/etc/macro_scripts/autofix_wgs.mql",
392 if (!path.IsEmpty()) {
393 filenames.push_back(
string(path.ToUTF8()));
402 macro::CMacroLib& macroLib = macro::CMacroLib::GetInstance();
403 macroLib.ClearLibrary();
404 bool status = macroLib.AppendToLibrary(
filenames);
410 if (!path.IsEmpty()) {
456 const string url =
"https://anonsvn.ncbi.nlm.nih.gov/v1/trunk/c%2B%2B/src/objects/seqfeat/" + fname;
458 const wxChar* kTempFilesDir =
wxT(
"<home>/TempFiles");
461 string path(dir_path.ToUTF8());
466 wxfname.SetPath(dir_path);
467 wxfname.SetFullName(fname);
468 string filePath(wxfname.GetFullPath().ToUTF8());
470 if (!wxfname.FileExists()) {
471 if (!wxFileName::DirExists(dir_path) && !wxFileName::Mkdir(dir_path)) {
472 LOG_POST(
Error <<
"Failed to create directory: '" << dir_path <<
"'");
483 Uint8 existing_fsize = wxfname.GetSize().ToULong();
484 long diff = (long)
abs((
int)(existing_fsize - remote_fsize));
489 istr.unsetf(ios::skipws);
490 long count_lines = count(istream_iterator<char>(istr), istream_iterator<char>(),
'\n');
492 if (diff > 0 && count_lines == diff) {
507 catch (
const exception& e) {
566 void EditPubs( wxCommandEvent& event );
617 void FocusSet( wxCommandEvent& event );
635 void AddCDS( wxCommandEvent& event );
636 void AddRNA( wxCommandEvent& event );
639 void Validate( wxCommandEvent& event );
643 void Oncaller(wxCommandEvent& event);
645 void Mega(wxCommandEvent& event);
653 void ParseText ( wxCommandEvent& event );
664 void BulkEdit ( wxCommandEvent& event );
667 void Autodef ( wxCommandEvent& event );
697 void LabelRna( wxCommandEvent& event );
709 void AddSet ( wxCommandEvent& event );
766 void FindASN1( wxCommandEvent& evt );
871 void Help(wxCommandEvent& evt);
895 void SaveSettings(
const string ®path, wxWindow *dlg)
const;
896 void LoadSettings(
const string ®path, wxWindow *dlg);
913 wxWindow* main_window =
NULL;
1023 const CObject* ptr = it->object.GetPointer();
1026 const CSeq_loc* seqloc =
dynamic_cast<const CSeq_loc*
>(ptr);
1055 }
else if (seqloc) {
1057 if (seqloc->IsWhole()) {
1059 new_id->
Assign(seqloc->GetWhole());
1078 }
else if (bioseq) {
1080 loc->
SetInt().SetId().Assign(*(bioseq->
GetId().front()));
1081 loc->
SetInt().SetFrom(0);
1087 }
else if (seqdesc) {
1099 loc->
SetInt().SetId().Assign(*(bi->
GetId().front().GetSeqId()));
1100 loc->
SetInt().SetFrom(0);
1106 }
else if (pubdesc) {
1111 loc->
SetInt().SetId().Assign(*(bi->
GetId().front().GetSeqId()));
1112 loc->
SetInt().SetFrom(0);
1129 }
else if (bioseqset) {
1134 loc->
SetInt().SetId().Assign(*(bseq.
GetId().front()));
1135 loc->
SetInt().SetFrom(0);
1154 m_IsAa = it->scope->GetBioseqHandle(*loc).IsAa();
1183 if (row_id.
Match(*
id))
1209 catch (
const exception&)
1211 wxMessageBox(
wxT(
"Error while attempting to connect to the ID server, restarting gbench is recommended"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1230 event.Enable(
false);
1251 bool ok_for_something =
false;
1256 ok_for_something |=
true;
1260 ok_for_something |=
true;
1263 ok_for_something |=
true;
1277 catch (
const exception&)
1279 wxMessageBox(
wxT(
"Unable to connect to the ID server, restarting gbench is recommended"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1290 vector<CUICommand*> commands;
1309 commands.push_back(
new CUICommand(
eCmdRevCompSequences_ext,
"Reverse Complement Sequences by Sequence ID",
"Reverse Complement Sequences from Selected Object",
"RVCS"));
1313 commands.push_back(
new CUICommand(
eCmdMergeBiosources,
"Merge Multiple BioSources On Sequence",
"Merge Multiple BioSources On Sequence",
"MMBS"));
1326 commands.push_back(
new CUICommand(
eCmdTaxFixCleanup,
"Tax_fix/Cleanup",
"Fix Taxonomy and Perform Basic and Extended Cleanup",
"TFCU"));
1360 commands.push_back(
new CUICommand(
eCmdAddTranslExcept,
"Add Translational Exceptions with Comment",
"Add Translational Exceptions with Comment",
"ATEWC"));
1379 commands.push_back(
new CUICommand(
eCmdConvertComment,
"Convert Structured Comment",
"Convert Structured Comment in Selected Object",
"CSCSO"));
1380 commands.push_back(
new CUICommand(
eCmdParseComment,
"Parse Structured Comment",
"Parse Structured Comment in Selected Object",
"PSCSO"));
1410 commands.push_back(
new CUICommand(
eCmdSetTransgSrcDesc,
"Set Transgenic on Source Descriptor",
"Set Transgenic on Source Desc when Source Feat present",
"STOSD"));
1416 commands.push_back(
new CUICommand(
eCmdSplitPrimerSets,
"Split Primer Sets by Position",
"Split Primer Sets by Position for Selected Object",
"SPSBPSO"));
1420 commands.push_back(
new CUICommand(
eCmdCountryFixupCap,
"Country Fixup Fix Capitalization after Colon",
"Country Fixup Fix Capitalization After Colon",
"CFFCAC"));
1421 commands.push_back(
new CUICommand(
eCmdCountryFixupNoCap,
"Country Fixup Do Not Fix Capitalization after Colon",
"Country Fixup Do Not Fix Capitalization After Colon",
"CFDNFCAC"));
1422 commands.push_back(
new CUICommand(
eCmdVectorTrim,
"Vector Search and Trim Tool",
"Vector Search and Trim Tool",
"VSTT"));
1424 commands.push_back(
new CUICommand(
eCmdSelectTarget_ext,
"Select Specific Sequence by Sequence ID",
"Select Specific Sequence by Sequence ID",
"ST"));
1469 commands.push_back(
new CUICommand(
eCmdApplyCGPQual,
"Apply CDS-Gene-Prot-mRNA Qualifier",
"Apply CDS-Gene-Prot-mRNA Qual",
"ACGPQ"));
1470 commands.push_back(
new CUICommand(
eCmdEditCGPQual,
"Edit CDS-Gene-Prot-mRNA Qualifier",
"Edit CDS-Gene-Prot-mRNA Qual",
"ECGPQ"));
1471 commands.push_back(
new CUICommand(
eCmdConvertCGPQual,
"Convert CDS-Gene-Prot-mRNA Qualifier",
"Convert CDS-Gene-Prot-mRNA Qual",
"CCGPQ"));
1472 commands.push_back(
new CUICommand(
eCmdSwapCGPQual,
"Swap CDS-Gene-Prot-mRNA Qualifiers",
"Swap CDS-Gene-Prot-mRNA Qual",
"SCGPQ"));
1473 commands.push_back(
new CUICommand(
eCmdRemoveCGPQual,
"Remove CDS-Gene-Prot-mRNA Qualifier",
"Remove CDS-Gene-Prot-mRNA Qual",
"RCGPQ"));
1509 commands.push_back(
new CUICommand(
eCmdCorrectGenes,
"Correct Genes for CDSs or mRNAs",
"Correct Genes for CDSs or mRNAs",
"CGFCOM"));
1561 commands.push_back(
new CUICommand(
eCmdExtendCDS,
"Extend Coding Region Ends",
"Extend Coding Region Ends",
"ECDSE"));
1562 commands.push_back(
new CUICommand(
eCmdTruncateCDS,
"Truncate Proteins and CDSs at Stops",
"Truncate Proteins and CDSs at Stops",
"TPCDSS"));
1586 commands.push_back(
new CUICommand(
eCmdNormalizeGeneQuals,
"Normalize Gene Quals",
"Copy gene qualifiers in xrefs on coding regions to parent genes",
"NGQ"));
1595 commands.push_back(
new CUICommand(
eCmdTrimNsRich,
"Trim N-rich Sequence Ends",
"Trim N-rich Sequence Ends",
"TNR"));
1604 commands.push_back(
new CUICommand(
eCmdEnableHupId,
"Enable HUP-ID Loader",
"Enable HUP-ID Loader",
"",
"",
"",
"", wxITEM_CHECK));
1631 commands.push_back(
new CUICommand(
eCmdExpandGaps,
"Expand Known Gaps to Include Flanking Ns",
"Expand Known Gaps to Include Flanking Ns",
"EKGFN"));
1635 commands.push_back(
new CUICommand(
eCmdEditSelectedGaps,
"Change Length of Selected Known Length Gaps",
"Change Length of Selected Known Length Gaps",
"CLSKG"));
3100 return kEditingMenu;
3111 if (dlg.ShowModal() == wxID_OK)
3122 wxWindow* main_window =
NULL;
3133 wxWindow* main_window =
NULL;
3184 if (dlg.ShowModal() == wxID_OK)
3197 wxWindow* main_window =
NULL;
3203 if (dlg.ShowModal() == wxID_OK) {
3275 copy->Assign(*entry);
3286 cmd->AddCommand(*clean);
3548 if (objs.size() == 0) {
3549 wxMessageBox(
wxT(
"No coding regions found!"),
wxT(
"Error"),
3550 wxOK | wxICON_ERROR,
NULL);
3554 bool any_change =
false;
3568 cmd->AddCommand(*synch);
3576 wxMessageBox(
wxT(
"No effect!"),
wxT(
"Error"),
3577 wxOK | wxICON_ERROR,
NULL);
3589 switch (evt.GetId())
3718 seqdesc->
SetUser().
Assign(*edit::CGenomeAssemblyComment::MakeEmptyUserObject());
3722 if (!orig_locs.empty())
3731 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
3735 edit_dlg->Show(
true);
3925 if (dlg.ShowModal() == wxID_OK)
3986 wxWindow* main_window =
NULL;
4071 switch (evt.GetId())
4090 wxWindow* main_window =
NULL;
4101 wxWindow* main_window =
NULL;
4114 wxWindow* main_window =
NULL;
4199 switch (evt.GetId()) {
4288 wxMenu* menu =
dynamic_cast<wxMenu*
>(evt.GetEventObject());
4291 title = menu->GetLabelText(evt.GetId());
4305 switch (evt.GetId()) {
4370 if (regpath.empty() || !dlg)
4385 if (regpath.empty() || !dlg)
4393 if (width >= 0 && height >= 0)
4394 dlg->SetSize(wxSize(width,height));
4399 if (pos_x >= 0 && pos_y >= 0)
4402 for (
auto i = 0;
i < wxDisplay::GetCount();
i++)
4404 wxDisplay display(
i);
4405 max_x += display.GetGeometry().GetWidth();
4407 if (pos_x + width > max_x) pos_x = wxGetDisplaySize().GetWidth()-width-5;
4408 if (pos_y + height > wxGetDisplaySize().GetHeight()) pos_y = wxGetDisplaySize().GetHeight()-height-5;
4410 dlg->SetPosition(wxPoint(pos_x,pos_y));
4412 wxTopLevelWindow* top_win =
dynamic_cast<wxTopLevelWindow*
>(dlg);
4415 wxRect rc = dlg->GetRect();
4418 dlg->Move(rc.GetLeftTop());
4430 vector<string> format_ids;
4431 format_ids.push_back(
"file_loader_qual_table");
4432 fileManager->LoadFormats(format_ids);
4435 for(
size_t i = 0;
i < fileManager->GetFormatManagers().
size(); ++
i ) {
4440 if (const_qual_mgr) {
4448 vector<CIRef<IOpenObjectsPanelClient> > loadManagers;
4452 dlg.SetSize(760, 940);
4453 dlg.Centre(wxBOTH | wxCENTRE_ON_SCREEN);
4454 dlg.SetMinSize(wxSize(760, 750));
4459 if (dlg.ShowModal() == wxID_OK) {
4472 vector< CIRef<IFileLoadPanelClientFactory> > file_formats;
4476 for (
size_t i = 0;
i < file_formats.size(); ++
i) {
4477 if (file_formats[
i]->GetFileLoaderId() ==
"file_loader_qual_table") {
4478 format_manager.
Reset(file_formats[
i]->CreateInstance());
4480 if (
"file_loader_qual_table" == format_manager->GetFileLoaderId()) {
4482 if (const_qual_mgr) {
4493 if (wxTheClipboard->Open())
4495 wxTextDataObject
data;
4496 if (wxTheClipboard->IsSupported( wxDF_UNICODETEXT ))
4497 wxTheClipboard->GetData(
data );
4498 if (
data.GetText().length() == 0) {
4499 wxMessageBox(
"No data in clipboard for table");
4500 wxTheClipboard->Close();
4506 fname =
f.GetFileName();
4507 wxTheClipboard->Close();
4510 vector<wxString> fnames;
4518 dlg.SetSize(760, 940);
4519 dlg.Centre(wxBOTH|wxCENTRE_ON_SCREEN);
4520 dlg.SetMinSize(wxSize(760, 750));
4524 if (dlg.ShowModal() == wxID_OK) {
4527 CFile tmp_file(fname);
4542 if (dlg.ShowModal() == wxID_OK) {
4564 if (dlg.ShowModal() == wxID_OK) {
4573 wxOK | wxICON_ERROR,
NULL);
4595 if (dlg.ShowModal() == wxID_OK) {
4604 wxOK | wxICON_ERROR,
NULL);
4626 if (dlg.ShowModal() == wxID_OK) {
4635 wxOK | wxICON_ERROR,
NULL);
4656 if (dlg.ShowModal() == wxID_OK) {
4666 wxOK | wxICON_ERROR,
NULL);
4682 if (dlg.ShowModal() == wxID_OK)
4703 return first->Compare(*second);
4710 return first->Equals(*second);
4718 int event_id = evt.GetId();
4735 if (dlg.ShowModal() == wxID_OK)
4741 vector<CRef<CSeq_loc> > cpy = orig_locs;
4742 vector<CRef<CSeq_loc> >::iterator lit = cpy.begin();
4743 while (lit != cpy.end()) {
4745 if (!
b ||
b.IsAa()) {
4746 lit = cpy.erase(lit);
4756 stable_sort(cpy.begin(), cpy.end(),
CompLoc);
4757 cpy.erase( unique( cpy.begin(), cpy.end(),
EqualLoc), cpy.end() );
4764 cmd->AddCommand(*subcmd);
4807 if (dlg.ShowModal() == wxID_OK)
4918 switch (event.GetId()){
4920 rna_name =
"12S ribosomal RNA";
4923 rna_name =
"16S ribosomal RNA";
4926 rna_name =
"23S ribosomal RNA";
4929 rna_name =
"18S ribosomal RNA";
4932 rna_name =
"28S ribosomal RNA";
4935 rna_name =
"26S ribosomal RNA";
4938 rna_name =
"small subunit ribosomal RNA";
4941 rna_name =
"large subunit ribosomal RNA";
4944 bool ispartial5 =
true;
4945 bool ispartial3 =
true;
4993 if (orig_locs.empty())
4996 wxMessageBox(
wxT(
"No data loaded"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5007 wxMessageBox(
wxT(
"No data loaded"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5064 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5067 edit_dlg->Show(
true);
5080 string regulatory_class;
5090 if (!regulatory_class.empty())
5093 q->
SetQual(
"regulatory_class");
5094 q->
SetVal(regulatory_class);
5106 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5109 edit_dlg->Show(
true);
5119 switch (evt.GetId()) {
5142 seqdesc->
SetUser().
Assign(*edit::CGenomeAssemblyComment::MakeEmptyUserObject());
5167 seqdesc->
SetPub(*pubdesc);
5176 if (!orig_locs.empty())
5185 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5189 edit_dlg->Show(
true);
5227 bool show_label =
true;
5228 switch (event.GetId()){
5278 if (dlg.ShowModal() == wxID_OK){
5320 wxWindow* main_window =
NULL;
5332 wxWindow* main_window =
NULL;
5346 wxWindow* main_window =
NULL;
5363 wxWindow* main_window =
NULL;
5395 wxWindow* main_window =
NULL;
5405 wxWindow* main_window =
NULL;
5416 if (dlg.ShowModal() == wxID_OK)
5440 if (dlg.ShowModal() == wxID_OK)
5459 if (dlg.ShowModal() == wxID_OK)
5466 wxMessageBox(
wxT(
"Set structure no longer matches"),
wxT(
"Error"),
5467 wxOK | wxICON_ERROR,
NULL);
5471 wxMessageBox(
wxT(
"No changes requested"),
wxT(
"Error"),
5472 wxOK | wxICON_ERROR,
NULL);
5487 wxWindow* main_window =
NULL;
5502 if (dlg.ShowModal() == wxID_OK)
5532 wxWindow* main_window =
NULL;
5563 wxWindow* main_window =
NULL;
5596 bool good_seq =
false;
5597 switch (event.GetId()) {
5639 bool similar =
true;
5640 bool nonfunctional =
false;
5641 bool unverified =
false;
5648 bool similar =
false;
5649 bool nonfunctional =
true;
5650 bool unverified =
false;
5657 bool similar =
true;
5658 bool nonfunctional =
false;
5659 bool unverified =
true;
5674 vector<const CSeq_feat*> genes;
5676 const CObject* ptr = it->object.GetPointer();
5680 genes.push_back(seqfeat);
5683 if (genes.size() != 2)
5685 wxMessageBox(
_(
"Please select two gene features to combine. Use Ctrl+Left mouse click"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5690 new_feat->
Assign(*genes[0]);
5692 new_feat->
SetLocation().Add(genes[1]->GetLocation());
5698 vector<string> locus;
5699 if (genes[1]->GetData().GetGene().IsSetLocus())
5700 locus.push_back(genes[1]->GetData().GetGene().GetLocus());
5701 if (genes[0]->GetData().GetGene().IsSetLocus())
5702 locus.push_back(genes[0]->GetData().GetGene().GetLocus());
5736 if (dlg.ShowModal() == wxID_OK) {
5744 wxOK | wxICON_ERROR,
NULL);
5761 bool gene_xref =
false;
5764 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5767 if (!contained && overlapping && !gene_xref)
5772 xref->SetData().SetGene();
5773 new_feat->
SetXref().push_back(xref);
5788 bool gene_xref =
false;
5791 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5794 if (!contained && overlapping && gene_xref)
5798 CSeq_feat::TXref::iterator seq_feat_xref;
5801 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5802 seq_feat_xref = xref;
5804 new_feat->
SetXref().erase(seq_feat_xref);
5805 if (new_feat->
GetXref().empty())
5819 if (dlg.ShowModal() == wxID_OK)
5834 for ( ; align_ci; ++align_ci) {
5838 bool modified = macro::CMacroFunction_RemoveSegGaps::s_RemoveSegGaps(*new_align);
5841 cmd->AddCommand(*chgAlign);
5849 wxWindow* main_window =
NULL;
5858 sel_srv->GetActiveObjects(
objects);
5867 wxMessageBox(
wxT(
"No objects found"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5874 wxMessageBox(
wxT(
"Cannot determine scope"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5877 const CSeq_loc* loc =
NULL;
5881 const CSeq_loc* obj_loc =
dynamic_cast<const CSeq_loc*
>(o.object.GetPointer());
5891 wxMessageBox(
wxT(
"The selection is not a bioseq"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5896 wxMessageBox(
wxT(
"Multiple bioseqs in scope, opening the first one only"),
wxT(
"Warning"), wxOK | wxICON_ERROR);
5900 if (!loc->IsWhole())
5917 wxMessageBox(
wxT(
"No bioseq selected"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5928 if (dlg.ShowModal() == wxID_OK)
5939 wxWindow* main_window =
NULL;
5945 if (dlg.ShowModal() == wxID_OK)
5977 switch (event.GetId()) {
6002 switch (event.GetId()) {
6103 wxWindow* main_window =
NULL;
6113 wxWindow* main_window =
NULL;
6128 wxWindow* main_window =
NULL;
6151 string strcomment_dbname;
6152 switch (evt.GetId()){
6154 strcomment_dbname.assign(
"HIVDatabase");
6157 strcomment_dbname.assign(
"FluData");
6160 strcomment_dbname.assign(
"MIGS-Data");
6163 strcomment_dbname.assign(
"MIMS-Data");
6166 strcomment_dbname.assign(
"MIENS-Data");
6169 strcomment_dbname.assign(
"MIMARKS:3.0-Data");
6172 strcomment_dbname.assign(
"MIGS:3.0-Data");
6175 strcomment_dbname.assign(
"MIMS:3.0-Data");
6178 strcomment_dbname.assign(
"Assembly-Data");
6181 strcomment_dbname.assign(
"Genome-Assembly-Data");
6184 strcomment_dbname.assign(
"International Barcode of Life (iBOL)Data");
6191 if (objs.size() == 0) {
6192 wxMessageBox(
wxT(
"No structured comments found!"),
wxT(
"Error"),
6193 wxOK | wxICON_ERROR,
NULL);
6197 bool any_change =
false;
6205 cmd->AddCommand(*ecmd);
6213 wxMessageBox(
wxT(
"No effect!"),
wxT(
"Error"),
6214 wxOK | wxICON_ERROR,
NULL);
6286 wxWindow* main_window =
NULL;
6296 wxWindow* main_window =
NULL;
6306 wxWindow* main_window =
NULL;
6316 wxWindow* main_window =
NULL;
6326 wxWindow* main_window =
NULL;
6349 wxWindow* main_window =
NULL;
6355 if (dlg.ShowModal() == wxID_OK)
6361 if (del_original_ids)
6375 if (!locs.empty()) {
6385 wxWindow* main_window =
NULL;
6394 if (dlg.ShowModal() == wxID_OK)
6407 wxWindow* main_window =
NULL;
6417 wxWindow* main_window =
NULL;
6427 wxWindow* main_window =
NULL;
6440 wxWindow* main_window =
NULL;
6446 if (dlg.ShowModal() == wxID_OK)
6460 wxWindow* main_window =
NULL;
6466 if (dlg.ShowModal() == wxID_OK)
6510 switch (event.GetId()){
6538 if (!objs.empty()) {
6672 wxWindow* main_window =
NULL;
6696 wxWindow* main_window =
NULL;
6702 if (dlg.ShowModal() == wxID_OK)
6729 wxWindow* main_window =
NULL;
6735 if (dlg.ShowModal() == wxID_OK)
6750 wxWindow* main_window =
NULL;
6756 if (dlg.ShowModal() == wxID_OK)
6778 wxWindow* main_window =
NULL;
6784 if (dlg.ShowModal() == wxID_OK)
6799 wxWindow* main_window =
NULL;
6810 wxWindow* main_window =
NULL;
6823 wxWindow* main_window =
NULL;
6836 wxWindow* main_window =
NULL;
6874 wxWindow* main_window =
NULL;
6883 if (dlg.ShowModal() == wxID_OK)
6892 wxOK | wxICON_ERROR,
NULL);
6904 wxWindow* main_window =
NULL;
6911 if (locs.size() == 1) {
6920 if (dlg.ShowModal() == wxID_OK)
6948 wxWindow* main_window =
NULL;
6976 wxWindow* main_window =
NULL;
6984 if (dlg.ShowModal() == wxID_OK)
7000 wxWindow* main_window =
NULL;
7027 wxFileDialog asn_save_file(main_window,
wxT(
"Export object to file"), wxEmptyString, wxEmptyString,
7030 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
7032 if (asn_save_file.ShowModal() == wxID_OK)
7034 wxString path = asn_save_file.GetPath();
7035 if( !path.IsEmpty())
7052 wxWindow* main_window =
NULL;
7060 if (dlg.ShowModal() == wxID_OK)
7075 wxWindow* main_window =
NULL;
7091 report->SetTitle(
wxT(
"TPA Alignment Assembly Problems"));
7092 report->
SetText(wxString(msg));
7114 wxWindow* main_window =
NULL;
7123 if (dlg.ShowModal() == wxID_OK)
7143 wxWindow* main_window =
NULL;
7158 wxMessageBox(
wxT(
"No alignment found"),
wxT(
"Error"), wxOK | wxICON_ERROR);
7168 wxWindow* main_window =
NULL;
7178 if (dlg.ShowModal() == wxID_OK) {
7210 wxMessageBox(wxString(e.
GetMsg()),
wxT(
"Error"),wxOK | wxICON_ERROR,
NULL);
7219 wxWindow* main_window =
NULL;
7241 wxWindow* main_window =
NULL;
7276 wxWindow* main_window =
NULL;
7314 if (del_original_ids)
7316 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7317 if (answer == wxYES)
7334 if (del_original_ids)
7336 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7337 if (answer == wxYES)
7354 if (del_original_ids)
7356 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7357 if (answer == wxYES)
7451 wxWindow* main_window =
NULL;
7457 if (dlg.ShowModal() == wxID_OK)
7523 seqdesc->
SetUser().
Assign(*(edit::CStructuredCommentField::MakeUserObject(
"Assembly-Data")));
7527 if (!orig_locs.empty())
7536 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
7540 edit_dlg->Show(
true);
7548 wxWindow* main_window =
NULL;
7554 if (dlg.ShowModal() == wxID_OK)
7639 wxWindow* main_window =
NULL;
7645 if (dlg.ShowModal() == wxID_OK)
7864 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
7865 editorWindow->TransferDataToWindow();
7869 edit_dlg->Show(
true);
7878 wxWindow* main_window =
NULL;
7892 wxWindow* main_window =
NULL;
7901 table->SetColumns().push_back(id_col);
7905 for ( ; b_iter ; ++b_iter )
7910 id_col->
SetData().SetId().push_back(
id);
7914 if (it->GetUser().IsSetType() && it->GetUser().GetType().IsStr() &&
NStr::EqualNocase(it->GetUser().GetType().GetStr(),
"StructuredComment") )
7918 if ((*field_it)->IsSetLabel() && (*field_it)->GetLabel().IsStr() && (*field_it)->IsSetData())
7921 if ((*field_it)->GetData().IsStr())
7923 val.push_back((*field_it)->GetData().GetStr());
7925 else if ((*field_it)->GetData().IsStrs())
7927 for (vector<CStringUTF8>::const_iterator str_it = (*field_it)->GetData().GetStrs().begin(); str_it != (*field_it)->GetData().GetStrs().end(); ++str_it)
7929 val.push_back(*str_it);
7944 wxFileDialog table_save_file(main_window,
wxT(
"Export Structured Comment Table"), wxEmptyString, wxEmptyString,
7947 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
7949 if (table_save_file.ShowModal() == wxID_OK)
7951 wxString path = table_save_file.GetPath();
7952 wxString name = table_save_file.GetFilename();
7966 wxMessageBox(
wxT(
"Cannot open file ")+name,
wxT(
"Error"), wxOK | wxICON_ERROR, main_window);
7972 exporter.
Field((*cit)->GetHeader().GetTitle());
7975 for (
int i = 0;
i <
table->GetNum_rows(); ++
i) {
7977 if (
i < (*cit)->GetData().GetSize()) {
7978 if ((*cit)->GetData().IsId()) {
7982 }
else if ((*cit)->GetData().IsString()) {
7983 exporter.
Field((*cit)->GetData().GetString()[
i]);
7987 exporter.
Field(blank);
8080 wxWindow* main_window =
NULL;
8097 wxWindow* main_window =
NULL;
8208 wxWindow* main_window =
NULL;
8225 wxWindow* main_window =
NULL;
8239 wxWindow* main_window =
NULL;
8254 if (dlg.ShowModal() == wxID_OK) {
8268 bool enable =
event.IsChecked();
8278 wxMenuItem* menu =
dynamic_cast<wxMenuItem*
>(
event.GetEventObject());
8280 wxMessageBox(
_(
"Loading HUP-ID failed, do you have permissions to access this server?"),
wxT(
"Error"), wxOK,
NULL);
8293 return wxEmptyString;
8298 wxWindow* main_window =
NULL;
8302 wxArrayString choices;
8307 wxSingleChoiceDialog dlg(main_window,
_(
"Select Indexer Type"),
_(
"Indexer Type"), choices);
8311 dlg.SetSelection(sel);
8313 if (dlg.ShowModal() == wxID_OK)
8315 sel = dlg.GetSelection();
8345 wxWindow* main_window =
NULL;
8357 wxWindow* main_window =
NULL;
8380 type->SetStr(
"TextViewParams");
8386 label->SetStr(
"TextViewType");
8388 param->
SetData().SetStr(
"Flat File");
8389 data.push_back(param);
8394 label->SetStr(
"ExpandAll");
8396 param->
SetData().SetBool(
true);
8397 data.push_back(param);
8402 label->SetStr(
"TrackSelection");
8404 param->
SetData().SetBool(
true);
8405 data.push_back(param);
8415 vector< CIRef<IFileFormatLoaderManager> > managers;
8419 vector<string> format_ids(1,
"file_loader_auto");
8420 format_ids.push_back(
"file_loader_fasta");
8421 format_ids.push_back(
"file_loader_asn");
8426 fileManager->LoadFormats(format_ids);
8428 vector<CIRef<IOpenObjectsPanelClient> > loadManagers;
8431 dlg.SetSize(710, 480);
8434 if (dlg.ShowModal() == wxID_OK)
8438 return make_tuple(ph,
pi);
8441 return make_tuple(ph,
pi);
8443 auto&
objects = object_loader->GetObjects();
8444 const CBioseq* bseq =
nullptr;
8446 const CObject& ptr = it.GetObject();
8447 if (bseq =
dynamic_cast<const CBioseq*
>(&ptr)) {
8451 if (entry && entry->IsSeq()) {
8453 bseq = &(entry->GetSeq());
8463 if (bseq && bseq->
IsAa()) {
8464 wxMessageBox(
wxT(
"The file contains one protein sequence. Please import a nucleotide sequence file"),
wxT(
"Error"),
8465 wxOK | wxICON_ERROR);
8466 return make_tuple(ph,
pi);
8472 wxDateTime start = wxDateTime::Now();
8473 wxDateTime now = start;
8474 while ((!ph || !
pi) && (now - start).GetSeconds() < 60)
8476 for (
auto project_handle : ws->GetWorkspace().GetProjects())
8478 if (project_handle->GetProject().GetData().IsSetItems())
8480 for (
auto item : project_handle->GetProject().GetData().GetItems())
8482 if (item->IsSetLabel() && item->IsSetItem() && (item->GetItem().IsSubmit() || item->GetItem().IsEntry()))
8484 ph = project_handle;
8492 if (wxTheApp && wxTheApp->GetMainLoop())
8494 if (!wxTheApp->GetMainLoop()->IsYielding())
8495 wxTheApp->Yield(
true);
8496 wxTheApp->ProcessPendingEvents();
8499 now = wxDateTime::Now();
8502 return make_tuple(ph,
pi);
8512 vector<CIRef<IProjectView>> views;
8513 srv->FindViews(views, *
pi->GetObject());
8514 for (
auto& it : views)
8516 srv->RemoveProjectView(*it);
8522 string version_str =
"Genome Workbench ";
8528 version_str +=
" " + wxGetOsDescription().ToStdString();
8529 submitBlock->
SetTool(version_str);
8531 submitBlock->
SetContact().SetContact().SetName().SetName().SetLast(
"?");
8532 bool found_sub =
false;
8535 if (desc_ci->IsPub() && desc_ci->GetPub().IsSetPub() && desc_ci->GetPub().GetPub().IsSet() && !desc_ci->GetPub().GetPub().Get().empty() && desc_ci->GetPub().GetPub().Get().front()->IsSub())
8537 submitBlock->
SetCit().Assign(desc_ci->GetPub().GetPub().Get().front()->GetSub());
8545 author->
SetName().SetName().SetLast(
"?");
8546 submitBlock->
SetCit().SetAuthors().SetNames().SetStd().push_back(author);
8551 submitBlock->
SetCit().SetDate(*today);
8556 copy->Assign(*entry);
8560 submission->
SetData().SetEntrys().push_back(
copy);
8565 new_item->
SetDescr().assign(
pi->GetDescr().begin(),
pi->GetDescr().end());
8566 new_item->
SetItem().SetSubmit(*submission);
8568 if (
pi->IsSetLabel())
8596 new_bioseq->
Assign (*bioseq);
8599 cmd->AddCommand(*chgInst);
8606 edited_seqdesc->
Assign(seqdesc);
8609 cmd->AddCommand(*chgd_cmd);
8616 cmd->AddCommand(*subcmd);
8628 if (!old_set->IsSetClass() ||
8631 new_set->
Assign(*old_set);
8639 copy->Assign(*entry);
8655 copy->Assign(*entry);
8687 if (!ws || !ws->IsSetWorkspace() || !ws->GetWorkspace().IsSetProjects())
return;
8689 wxWindow* main_window =
nullptr;
8697 wxArrayString choices;
8698 bool non_editable =
false;
8699 for (
auto project_handle : ws->GetWorkspace().GetProjects())
8701 if (project_handle->GetProject().GetData().IsSetItems())
8703 for (
auto item : project_handle->GetProject().GetData().GetItems())
8705 if (item->IsSetLabel())
8707 if (item->IsSetItem() && (item->GetItem().IsSubmit() || item->GetItem().IsEntry()))
8709 projects.push_back(make_pair(project_handle, item));
8710 choices.Add(wxString(item->GetLabel()));
8713 non_editable =
true;
8720 wxMessageBox(
wxT(
"One or more projects contain records which cannot be used for submission.\nThis is only an informational notice, this is not an error."),
wxT(
"Information"), wxOK | wxICON_INFORMATION,
NULL);
8722 if (projects.empty())
8726 else if (projects.size() == 1)
8728 tie(ph,
pi) = projects[0];
8732 wxSingleChoiceDialog dlg(main_window,
_(
"Select the project for the submission"),
_(
"Multiple projects found"), choices);
8733 if (dlg.ShowModal() == wxID_OK)
8735 int sel = dlg.GetSelection();
8736 if (sel != wxNOT_FOUND)
8738 tie(ph,
pi) = projects[sel];
8756 if (
pi->IsSetItem() &&
pi->GetItem().IsSubmit())
8779 else if (
pi->IsSetItem() &&
pi->GetItem().IsEntry())
8799 LOG_POST(
Error <<
"Taxonomy lookup failed before opening the Submission Wizard: " << e.
GetMsg());
8823 wxWindow* main_window =
NULL;
8836 int answer = wxMessageBox (
_(
"You need to use the 'Genome Submission Wizard' to add contact information before submitting to GenBank - save incomplete file?"),
8837 _(
"Save Incomplete File"), wxYES_NO | wxICON_QUESTION);
8838 if (answer == wxYES)
8852 wxFileDialog asn_save_file(main_window,
wxT(
"Save Submission File"),
m_WorkDir, wxEmptyString,
8855 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
8858 if (asn_save_file.ShowModal() == wxID_OK) {
8859 wxString path = asn_save_file.GetPath();
8860 if (!path.IsEmpty()) {
8872 catch (
const exception& e) {
8892 wxWindow* main_window =
NULL;
8905 wxFileDialog asn_save_file(main_window,
wxT(
"Save ASN.1 File"),
m_WorkDir, wxEmptyString,
8908 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
8910 if (asn_save_file.ShowModal() == wxID_OK)
8912 wxString path = asn_save_file.GetPath();
8913 if( !path.IsEmpty())
8931 switch (event.GetId()){
8933 prefix.assign(
"MIENS-Data");
8936 prefix.assign(
"MIMARKS:5.0-Data");
8939 prefix.assign(
"MIGS:5.0-Data");
8942 prefix.assign(
"MIMS:5.0-Data");
8945 prefix.assign(
"Genome-Assembly-Data");
8948 prefix.assign(
"Genome-Annotation-Data");
8961 if (!orig_locs.empty())
8970 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
8974 edit_dlg->Show(
true);
8984 switch (event.GetId()){
8989 prefix.assign(
"MIMARKS");
8998 prefix.assign(
"Genome-Assembly");
9001 prefix.assign(
"Genome-Annotation");
9026 cmd->AddCommand(*cmdDelDesc);
9030 catch (
const exception&) { }
9040 wxString manual_name;
9041 switch (event.GetId()) {
9043 manual_name =
wxT(
"manual8");
9046 manual_name =
wxT(
"manual11");
9049 manual_name =
wxT(
"manual9");
9052 manual_name =
wxT(
"manual10");
9055 manual_name =
wxT(
"manual12");
9058 manual_name =
wxT(
"manual15");
9064 wxURI help_url(
wxT(
"https://www.ncbi.nlm.nih.gov/tools/gbench/") + manual_name +
wxT(
"/"));
9065 wxString help_encoded_url = help_url.BuildURI();
9066 wxLaunchDefaultBrowser(help_encoded_url, 0);
User-defined methods of the data storage class.
@ eExtreme_Positional
numerical value
@ eExtreme_Biological
5' and 3'
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
#define EXT_POINT__APP_MODE_EXTENSION
CSeq_entry_Handle GetSeqEntryForSeqdesc(CRef< CScope > scope, const CSeqdesc &seq_desc)
bool GUI_AsyncExecUnit(IExecuteUnit &exec_unit, const wxString &msg)
void ConfigureAutodefParamsForBestCombo(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
void ConfigureAutodefParamsForID(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
unsigned int ConfigureParamsForPrefixCombo(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > InstantiateProteinTitles(objects::CSeq_entry_Handle entry)
CRef< CCmdComposite > AutodefSeqEntryNoTitle(objects::CSeq_entry_Handle entry, SAutodefParams *params, bool docsum_only=false)
@ eCmdCreateRegulatory_ribosome_binding_site
@ eCmdCreateMobileElement
@ eCmdCreateMiscStructure
@ eCmdCreateBiosourceFeat
@ eCmdCreatePrimTranscript
@ eCmdCreateRegulatory_promoter
@ eCmdCreateRegulatory_riboswitch
@ eCmdCreateCodingRegion_ext
@ eCmdCreateCommentDescriptor
@ eCmdCreatePubFeatureLabeled
@ eCmdCreateRegulatory_enhancer
@ eCmdCreateTransitPeptide
@ eCmdCreateSecondaryStructure
@ eCmdCreateRegulatory_terminator
@ eCmdCreateMiscDifference
CIRef< IEditObject > CreateEditorForObject(CConstRef< CObject > obj, objects::CSeq_entry_Handle seh, bool create)
void SetInitParameters(EActionType action_type, EFieldType field_type, const string &field=kEmptyStr, const wxString &title=wxEmptyString)
@ eFieldType_StructuredComment
@ eActionType_RemoveTextOutside
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void SetKeyword(const string &keyword)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand()
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProccessor)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, CSeqFeatData::ESubtype subtype)
CRef< CCmdComposite > GetCommand()
static bool s_IsBioseqGood_AdjustEnds(const objects::CBioseq_Handle &bsh)
static bool s_IsBioseqGood_Strict(const objects::CBioseq_Handle &bsh)
static bool s_IsBioseqGood_Relaxed(const objects::CBioseq_Handle &bsh)
CRef< CCmdComposite > GetCommandToAdjustCDSEnds(const objects::CSeq_feat &cds)
CRef< CCmdComposite > GetCommand(const objects::CSeq_feat &cds)
AdjustForConsensusSpliceSite Adjust internal intervals of a CDS (and its associated mRNA feature) to ...
CAppTaskService - Application Task Service.
CAppTask - default implementation of IAppTask, use it as a base class for custom tasks.
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetCommand()
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void x_TableReaderMacro(bool modal=false)
void ShowSourceOptions(bool show)
void SetParams(SAutodefParams *params)
void PopulateParams(SAutodefParams ¶ms)
static void CollectBioseqEditorCommands(vector< CUICommand * > &commands)
static CRef< objects::CSeq_feat > MakeDefaultFeature(objects::CSeqFeatData::ESubtype subtype)
static objects::CSeqFeatData::ESubtype GetFeatTypeFromCmdID(int cmd_id)
const CBioseq & GetNucFromNucProtSet(void) const
CSeq_entry * GetParentEntry(void) const
TSeqPos GetLength(void) const
CRef< CCmdComposite > GetCommand()
void SetEditingType(EEditingType editing_type)
void ChooseFeatureType(objects::CSeqFeatData::ESubtype subtype)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand()
void Field(const string &value)
ncbi::objects::CBioseq_set::EClass GetClass()
static bool RepairXrefs(const CSeq_feat &f, const CTSE_Handle &tse)
Repairs non-reciprocal xref pairs for specified feature if xrefs between subtypes are permitted and f...
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
void AddCommand(IEditCommand &command)
static CIRef< IEditCommand > Create(const objects::CSeq_entry_Handle &seh, const vector< string > &quals)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
void SetConstraint(const string &input)
static CRef< CCmdComposite > apply(wxWindow *parent, objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
void ApplyToAllAndDie(bool similar, bool nonfunctional, bool unverified)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(const TConstScopedObjects &objects, bool to_known, bool adjust_features=false)
CRef< CCmdComposite > GetCommand(objects::CScope &scope, const objects::CBioseq_set &orig, bool &error)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, bool capitalize_after_colon)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
static CRef< CCmdComposite > GetCreateSeqHistFromTpaCommand(CSeq_entry_Handle tse, string &msg, double word_size, double expect_value)
CRef< CCmdComposite > GetCommand()
void SetToTime(const CTime &time, EPrecision prec=ePrecision_second)
virtual void SetRegistryPath(const string &path)
static CDiscrepancyDlg * OpenDiscrepancyDlg(EReportType type, CScope &scope, IWorkbench *workbench, const wxString &workDir=wxEmptyString)
std::function< void()> m_f
CDoOnIdleTask(std::function< void()> f)
virtual IAppTask::ETaskState x_Run()
override this function in derived classes
CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
void SetEditorWindow(wxWindow *editorWindow)
void SetEditor(CIRef< IEditObject > editor)
virtual void SetWorkDir(const wxString &workDir)
virtual void SetUndoManager(ICommandProccessor *cmdProccessor)
static CRef< CCmdComposite > apply(const TConstScopedObjects &objects)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetRemoveOriginalIdCommand(void)
virtual CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
static void GetInstance(wxWindow *parent, IWorkbench *workbench, bool autostart=false, wxWindowID id=10020, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(600, 400), long style=wxDEFAULT_FRAME_STYLE)
CEvent - generic event implementation TODO TODO - Attachments.
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
void SaveTable(const wxString &workDir=wxEmptyString)
static void RemoveEmptyColsAndRows(CRef< CSeq_table > values_table)
static CRef< CCmdComposite > ExtendCDS(CSeq_entry_Handle seh)
CExtensionDeclaration - static declaration helper.
CRef< CCmdComposite > GetCommand()
void SetWorkDir(const wxString &workDir)
static wxString GetDialogFilter(EFileType fileType)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, bool before_punct=false, bool before_cap=false, bool before_num=false, bool rm_commas=false, bool keep_last=false)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle seh)
wxString GetWorkDir() const
CUndoManager & GetUndoManager()
virtual CScope * GetScope() const
@Gb_qual.hpp User-defined methods of the data storage class.
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle seh)
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle seh)
void SetText(const wxString &text)
void SetRefresh(IRefreshCntrl *refresh)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static void apply(IWorkbench *wb, ICommandProccessor *cmd_processor, CScope &scope)
CRegistryWriteView GetWriteView(const string §ion)
get a read-write view at a particular level.
static CGuiRegistry & GetInstance()
access the application-wide singleton
CRegistryReadView GetReadView(const string §ion) const
get a read-only view at a particular level.
CIRef< IEditCommand > ImportFeaturesFromClipboard(const wxString &workDir)
CIRef< IEditCommand > ImportFeaturesFromFile(const wxString &workDir=wxEmptyString, const string &format_id=kEmptyStr)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, wxWindow *parent)
static CRef< CCmdComposite > apply(wxWindow *parent, CScope &scope, bool history_takeover)
void RestoreFile(bool convert=false)
static CMacroFlowEditor * GetInstance(wxWindow *parent, CRef< IGuiCoreHelper > gui_core_helper, wxWindowID id=15000, const wxString &caption=_("Macro Flow Editor"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(1500, 1000), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxCLOSE_BOX)
void MakeTable(const objects::CSeq_entry_Handle &seh)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CObject > GetNewObject(CConstRef< CObject > obj)
CRef< CCmdComposite > GetReplacementCommand(CConstRef< CObject >, CRef< CObject > newobj, objects::CScope &scope, const string &cmd_name)
vector< CConstRef< CObject > > GetObjects(objects::CBioseq_Handle bsh)
bool SetVal(CObject &object, const string &val, objects::edit::EExistingText existing_text)
CRef< CCmdComposite > GetCommand()
virtual CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
static CNcbiApplication * Instance(void)
Singleton method.
static bool AddObjects(IServiceLocator *serviceLocator, IObjectLoader::TObjects &objects, objects::CLoaderDescriptor *loader, CSelectProjectOptions &options, const map< string, string > &projectItemExtra=map< string, string >())
IObjectLoader * GetObjectLoader()
void SetManagers(vector< CIRef< IOpenObjectsPanelClient > > &managers)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle seh)
void SetFromFieldType(EFieldType field_type)
void SetToFieldType(EFieldType field_type)
CRef< CCmdComposite > GetCommand()
void PopulateModifierCombo()
void SetParams(SAutodefParams *params)
CProjectService - a service providing API for operations with Workspaces and Projects.
static CRef< CCmdComposite > GetPropagateDownCommand(objects::CSeq_entry_Handle seh)
@Pubdesc.hpp User-defined methods of the data storage class.
virtual void SetFilenames(const vector< wxString > &filenames)
initilize the manager with the given filenames
virtual void SetServiceLocator(IServiceLocator *srv_locator)
Sets / unsets Service Locator.
CAttribTableColumnIdPanel * x_GetColumnIdPanel()
void SetTopLevelEntry(CSeq_entry_Handle seq_entry)
void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static void DeltaSeqToRaw(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
CRef< CCmdComposite > apply(string title)
static CRef< CCmdComposite > ByAssemblyGapFeatures(objects::CSeq_entry_Handle seh)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, bool update_genes)
class CRegistryReadView provides a nested hierarchical view at a particular key.
int GetInt(const string &key, int default_val=0) const
access a named key at this level, with no recursion
void Set(const string &key, int val)
access a named key at this level, with no recursion
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static void rm_dbxref_from_biosource_and_feats(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_dbxref_from_biosource(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_dbxref_from_feat(objects::CSeq_entry_Handle seh, objects::CSeqFeatData::E_Choice type, ICommandProccessor *cmd_processor)
static void RemoveDuplicateFeatures(objects::CSeq_entry_Handle tse, ICommandProccessor *processor)
static void RemoveAllFeatures(CSeq_entry_Handle seh, ICommandProccessor *processor)
static CRef< CCmdComposite > RemoveNonsuppressing(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveOrphanLocus_tag(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveAll(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveUnnecessary(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveOrphanLocus(CSeq_entry_Handle seh)
virtual CRef< CCmdComposite > GetCommand(void)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > JustRemoveProteins(objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > OrphanedProteins(objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > AndRenormalizeNucProtSets(objects::CSeq_entry_Handle seh)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, CSeq_annot::C_Data::E_Choice which)
static void ApplyToCSeq_entry(objects::CSeq_entry_Handle tse, CCmdComposite *composite, const vector< string > &names)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle tse)
CRef< CCmdComposite > GetRemoveOriginalIdCommand()
CRef< CCmdComposite > GetCommand()
static void remove_set(IWorkbench *wb)
static void remove_sets_from_set(IWorkbench *wb)
static void rm_taxon_from_feats_and_biosource(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_taxon_from_feats(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
static void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
CRef< CCmdComposite > Apply(objects::CSeq_entry_Handle tse)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > ReorderById(objects::CSeq_entry_Handle seh)
virtual bool Show(bool show=1)
Report opening events in dialogs used in the editing package.
@ eRetranslateCDSObeyStop
@ eRetranslateCDSChooseFrame
@ eRetranslateCDSIgnoreStopExceptEnd
static CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle seh, string title, ERetranslateMethod method, string &error)
void apply(objects::CSeq_entry_Handle seh, ICommandProccessor *cmdProcessor, string title, ERetranslateMethod method)
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, bool update_seq, bool update_feat, bool update_graph)
CRef< CCmdComposite > GetCommand()
CProjectSelectOptions - describes how new Project Items shall be added to a workspace.
void Set_CreateNewProject(const string &folder=kEmptyStr)
CSelectionEvent CSelectionEvent is used for broadcasting selection between views.
bool AddObjectSelection(const CObject &obj)
virtual void GetActiveObjects(TConstScopedObjects &sel)
returns objects currently active in the application, this function should be used for obtaining argum...
virtual void Broadcast(CSelectionEvent &evt, ISelectionClient *source)
request broadcasting of the given event, Broadcast() notifies observers about changes in selection (d...
Declare the Package Object.
virtual const SwxMenuItemRec * GetMenuDef() const
simpler way to provide a static menu using macros defined earlier in this file
virtual string GetName() const
void x_UpdateValAuxFile(const string &fname) const
virtual void GetVersion(size_t &verMajor, size_t &verMinor, size_t &verPatch) const
virtual wxEvtHandler * GetEventHandler()
returns a handler which processes commands from the set above not needed for views
virtual vector< CUICommand * > GetCommands()
returns a vector of commands (takes ownership over CUICommand pointers)
virtual void SetWorkbench(IWorkbench *wb)
static EFeatureLocationAllowed AllowedFeatureLocation(ESubtype subtype)
@ eFeatureLocationAllowed_NucOnly
@ eFeatureLocationAllowed_ProtOnly
@ eFeatureLocationAllowed_Any
static CTempString SubtypeValueToName(ESubtype eSubtype)
Turns a ESubtype into its string value which is NOT necessarily related to the identifier of the enum...
void UpdateSingleSequence_Ext(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor) const
void SetSeqUpdateType(ESeqUpdateType update_type)
void UpdateMultipleSequences(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor)
void UpdateSingleSequence(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor) const
CRef< CSeq_loc > CreateRowSeq_loc(TDim row) const
TDim CheckNumRows(void) const
Validatiors.
const CSeq_id & GetSeq_id(TDim row) const
Get seq-id (the first one if segments have different ids).
@Seq_descr.hpp User-defined methods of the data storage class.
namespace ncbi::objects::
CConstRef< CSeq_submit > m_SeqSubmit
void FocusClear(wxCommandEvent &event)
void ConvertAuthorToConstortiumWhereLastName(wxCommandEvent &event)
void CreateDescriptor(wxCommandEvent &event)
void FixCapitalizationAffiliation(wxCommandEvent &event)
void ApplyStructuredCommentField(wxCommandEvent &evt)
void RemoveUnverified(wxCommandEvent &event)
void AddKeywordTPA_inferential(wxCommandEvent &event)
void Discrepancy(wxCommandEvent &event)
void CorrectGenes(wxCommandEvent &event)
void RemoveSeqAnnotAlign(wxCommandEvent &event)
void RemoveUnnecessaryExceptions(wxCommandEvent &event)
void RawSeqToDeltaByLoc(wxCommandEvent &event)
void RemoveDuplicateStructuredComments(wxCommandEvent &event)
void TruncateCDS(wxCommandEvent &event)
void CountryFixupNoCap(wxCommandEvent &event)
ICommandProccessor * m_CmdProccessor
void ConvertGapsBySize(wxCommandEvent &event)
void RemoveStructuredCommentKeyword(wxCommandEvent &event)
void EditSelectedGaps(wxCommandEvent &event)
void ConvertDescToFeatPub(wxCommandEvent &event)
void ExpandGaps(wxCommandEvent &event)
void AddRNA(wxCommandEvent &event)
void RemoveGenbankSeqIdsFromAll(wxCommandEvent &event)
void BioseqOnlyRevComp(wxCommandEvent &event)
void ExtendPartialsAll(wxCommandEvent &evt)
void EditSeqEndsWithAlign(wxCommandEvent &event)
void VectorTrim(wxCommandEvent &event)
void EditHistory(wxCommandEvent &event)
void PT_Cleanup(wxCommandEvent &event)
void ImportFeatureTableClipboard(wxCommandEvent &event)
void ConvertAuthorToConsortiumAll(wxCommandEvent &event)
void CreateSpecificStructuredComment(wxCommandEvent &event)
void LabelRna(wxCommandEvent &event)
void ExonFromCds(wxCommandEvent &evt)
void RemoveAllFeatures(wxCommandEvent &event)
void RemAllProtTitles(wxCommandEvent &event)
void TrimOrganismNames(wxCommandEvent &event)
void StripAuthorSuffixes(wxCommandEvent &event)
void RemoveGiSeqIdsFromAll(wxCommandEvent &event)
void RemoveDescriptors(wxCommandEvent &evt)
void CreateProteinId(wxCommandEvent &event)
void AddKeywordTPA_assembly(wxCommandEvent &event)
void PackageFeaturesOnParts(wxCommandEvent &event)
void CheckForMixedStrands(wxCommandEvent &event)
void AddKeywordGDS(wxCommandEvent &event)
void LocalToGeneralId(wxCommandEvent &event)
void ConvertAccessionToLocalIdsNuc(wxCommandEvent &event)
void RemoveAllPublications(wxCommandEvent &event)
void AddGenomeAssemblyStructuredComment(wxCommandEvent &event)
void Autodef(wxCommandEvent &event)
void BarcodeTool(wxCommandEvent &event)
void ConvertFeatToDescComment(wxCommandEvent &event)
void BulkEdit(wxCommandEvent &event)
void FixUsaAndStates(wxCommandEvent &event)
void RemoveDupFeatsWithOptions(wxCommandEvent &evt)
void ConvertSetType(wxCommandEvent &event)
void ExplodeRNAFeats(wxCommandEvent &event)
void Validate(wxCommandEvent &event)
void TestDialogView(wxCommandEvent &event)
void RemoveSeqAnnotGraph(wxCommandEvent &event)
void CDSGeneRangeErrorRestore(wxCommandEvent &event)
void RemoveLocalSeqIdsFromProt(wxCommandEvent &event)
void BulkRnaEdit(wxCommandEvent &event)
void UnculTaxTool(wxCommandEvent &event)
void ConvertDescToFeatSource(wxCommandEvent &event)
void RemoveGenomeProjectsDB(wxCommandEvent &event)
void BulkApplyGenCode(wxCommandEvent &event)
void DescriptorPropagateDown(wxCommandEvent &event)
void TestFormView(wxCommandEvent &event)
void Oncaller(wxCommandEvent &event)
void ConsolidateLikeModsWithSemicolon(wxCommandEvent &event)
void x_CacheSelectedLocations()
void MakeBadSpecificHostTable(wxCommandEvent &event)
void RemoveDbXrefsBioSourceAndFeats(wxCommandEvent &evt)
void PropagateDBLink(wxCommandEvent &event)
void Duplicate(wxCommandEvent &event)
void SwapPrimerSeqName(wxCommandEvent &event)
void ReorderStructuredComment(wxCommandEvent &event)
void ResolveIntersectingFeats(wxCommandEvent &evt)
void ApplyRNA_ITS(wxCommandEvent &event)
void GenusSpeciesFixup(wxCommandEvent &event)
void FixStructuredVouchers(wxCommandEvent &event)
void CountryFixupCap(wxCommandEvent &event)
TConstScopedObjects m_SelObjects
void RemoveAllGeneXrefs(wxCommandEvent &event)
void CombineSelectedGenesIntoPseudogenes(wxCommandEvent &evt)
void SelectTarget(wxCommandEvent &event)
void EditFeature(wxCommandEvent &evt)
void AddMicrosatellite(wxCommandEvent &event)
void AddAssemblyStructuredComment(wxCommandEvent &event)
void AdjustForConsensusSpliceSites(wxCommandEvent &event)
void CreateFeature(wxCommandEvent &event)
void LowercaseQuals(wxCommandEvent &event)
void RmCultureNotes(wxCommandEvent &event)
void ConvertFeatToDescSource(wxCommandEvent &event)
void UniqifyFeatureIds(wxCommandEvent &event)
void SuspectProductRulesEditor(wxCommandEvent &event)
void ConvertDescToFeatComment(wxCommandEvent &event)
void SequesterSets(wxCommandEvent &event)
void IsObjectSelected(wxUpdateUIEvent &event)
void FixProductNamesOptions(wxCommandEvent &event)
void RemoveDbXrefsRNA(wxCommandEvent &evt)
void RemoveDbXrefsBioSource(wxCommandEvent &evt)
CSeq_entry_Handle m_TopSeqEntry
void CreateSeqHistForTpaDetailed(wxCommandEvent &event)
void FixForTransSplicing(wxCommandEvent &evt)
void RemoveLocalSeqIdsFromNuc(wxCommandEvent &event)
void ConvertSelectedGapsToKnown(wxCommandEvent &event)
void LoadSecondaryAccessionsHistoryTakeover(wxCommandEvent &event)
void RemoveProteinsAndRenormalizeNucProtSets(wxCommandEvent &event)
void EditSequenceEnds(wxCommandEvent &event)
void ExportTable(wxCommandEvent &event)
void ConvertFeatures(wxCommandEvent &event)
void ConvertDescToSecondProtName(wxCommandEvent &event)
void AddGlobalCodeBreak(wxCommandEvent &event)
void AddControlRegion(wxCommandEvent &event)
void DeleteSpecificStructuredComment(wxCommandEvent &evt)
void RemoveDuplicateGoTerms(wxCommandEvent &evt)
void SplitDblinkQuals(wxCommandEvent &evt)
void RemoveOrphanLocusGeneXrefs(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeat(wxCommandEvent &evt)
void RemoveSequencesFromAlignments(wxCommandEvent &event)
void RemoveGeneralId(wxCommandEvent &event)
void RemoveTaxonFeatsAndBioSource(wxCommandEvent &event)
void RemoveTextInsideStr(wxCommandEvent &event)
void WrongQualsToNote(wxCommandEvent &event)
void TrimNsRich(wxCommandEvent &event)
void RemoveGeneXrefs(wxCommandEvent &event)
void ConvertAccessionToLocalIdsProt(wxCommandEvent &event)
void EditStructuredCommentPrefixSuffix(wxCommandEvent &evt)
void UpdateSingleSequence(wxCommandEvent &event)
void JustRemoveProteins(wxCommandEvent &event)
void AssignFeatureIds(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeatUnverified(wxCommandEvent &evt)
void AddStrainSerotypeToNames(wxCommandEvent &event)
void FixCapitalizationAuthors(wxCommandEvent &event)
void RemoveSet(wxCommandEvent &event)
void RemoveSequences(wxCommandEvent &event)
void ViewSortedProteins(wxCommandEvent &event)
void ExportStructuredCommentsTable(wxCommandEvent &evt)
void ExonFromMRNA(wxCommandEvent &evt)
void CompareWithBiosample(wxCommandEvent &event)
void CDSGeneRangeErrorSuppress(wxCommandEvent &event)
void CreateSeqHistForTpa(wxCommandEvent &event)
void ShowFeatureTable(wxCommandEvent &event)
void UpdateTargetedLocusName(wxCommandEvent &evt)
void tRNAFromGene(wxCommandEvent &evt)
void GroupExplode(wxCommandEvent &event)
void BioseqFeatsRevComp(wxCommandEvent &event)
void FixCapitalizationCountry(wxCommandEvent &event)
void GeneFromOtherFeat(wxCommandEvent &evt)
void FixupOrganismNames(wxCommandEvent &event)
void x_OnSelectionEvent(CEvent *event)
void SplitPrimerSets(wxCommandEvent &event)
void RemoveSegGaps(wxCommandEvent &event)
void TruncateAuthorMiddleInitials(wxCommandEvent &event)
void LoadSecondaryAccessions(wxCommandEvent &event)
void RmWrongQuals(wxCommandEvent &event)
void EditCdsFrame(wxCommandEvent &event)
void FindASN1(wxCommandEvent &evt)
void RemoveCddFeatDbxref(wxCommandEvent &event)
void DiscrepancyList(wxCommandEvent &event)
void TaxFixCleanup(wxCommandEvent &event)
void IsHupIdEnabled(wxUpdateUIEvent &event)
void FuseFeatures(wxCommandEvent &evt)
void RemoveUnpublishedPublications(wxCommandEvent &event)
void AddCitSubForUpdate(wxCommandEvent &event)
void AppendModToOrg(wxCommandEvent &event)
void BulkMiscFeatEdit(wxCommandEvent &event)
void RemoveOrphanLocus_tagGeneXrefs(wxCommandEvent &event)
void RawSeqToDeltaByAssemblyGapFeatures(wxCommandEvent &event)
void ConvertAccessionToLocalIdsAll(wxCommandEvent &event)
void TableReader(wxCommandEvent &event)
void AddCDS(wxCommandEvent &event)
void NormalizeGeneQuals(wxCommandEvent &event)
void PrefixDefLines(wxCommandEvent &event)
void RawSeqToDeltaByNs(wxCommandEvent &event)
void DisableStrainForwarding(wxCommandEvent &event)
void IndexerTypeSelection(wxCommandEvent &event)
void UpdateMultipleSequences(wxCommandEvent &event)
void RemoveOrphanedProteins(wxCommandEvent &event)
void x_SetUpTSEandUnDoManager(IWorkbench *wb)
void RestoreRNAediting(wxCommandEvent &event)
void RmIllegalQuals(wxCommandEvent &event)
void RestoreLocalFile(wxCommandEvent &event)
void ConvertFeatsToGaps(wxCommandEvent &event)
vector< CRef< CSeq_loc > > m_CachedSelectedLocations
CSeq_align::TDim x_FindRelevantAlignRow(const CSeq_align &align, const CSeq_id *id)
CRef< CProjectItem > CreateSeqSubmit(CRef< CGBProjectHandle > ph, CRef< CProjectItem > pi, CIRef< CProjectService > srv)
void TableReaderClipboard(wxCommandEvent &event)
void Mega(wxCommandEvent &event)
void ExonFromTRNA(wxCommandEvent &evt)
void SplitQualifiersAtCommas(wxCommandEvent &event)
void EditingButtons(wxCommandEvent &event)
void GeneXrefsFromFeats(wxCommandEvent &event)
void ReorderSeqById(wxCommandEvent &event)
void ConvertSelectedGapsToUnknown(wxCommandEvent &event)
void SplitCDSwithTooManyXs(wxCommandEvent &event)
void ChangeToGenomicDna()
void ParseCollectionDateDayFirst(wxCommandEvent &event)
void EditSequence(wxCommandEvent &event)
void SpecificHostCleanup(wxCommandEvent &event)
void RemoveTaxonFeats(wxCommandEvent &event)
void PrefixAuthWithTax(wxCommandEvent &event)
void CreateRegulatory(wxCommandEvent &evt)
void ImportFeatureTable(wxCommandEvent &event)
void ConvertAccessionToLocalIdsName(wxCommandEvent &event)
void RemoveUnreviewed(wxCommandEvent &event)
void SortUniqueCountTree(wxCommandEvent &event)
void ExtendPartialsConstr(wxCommandEvent &evt)
void AddSecondary(wxCommandEvent &event)
void MergePrimerSets(wxCommandEvent &event)
void FixCapitalizationAll(wxCommandEvent &event)
void ConvertToDelayedGenProdSetQuals(wxCommandEvent &event)
void RemoveSeqHistAssembly(wxCommandEvent &event)
void AddKeywordWithConstraint(wxCommandEvent &event)
void RemoveDbXrefsAllFeats(wxCommandEvent &evt)
void RemoveInPressPublications(wxCommandEvent &event)
void AddFluComments(wxCommandEvent &event)
CSequenceEditingEventHandler(IWorkbench *wb=NULL)
void SetGlobalRefGeneStatus(wxCommandEvent &event)
void RemoveNonsuppressingGeneXrefs(wxCommandEvent &event)
void DeltaSeqToRaw(wxCommandEvent &event)
void ConvertDescToFeatPubConstraint(wxCommandEvent &event)
void ClearNomenclature(wxCommandEvent &event)
void AddDefLine(wxCommandEvent &evt)
void FixCapitalizationTitles(wxCommandEvent &event)
void Submitter(wxCommandEvent &event)
void AddNamedrRNA(wxCommandEvent &event)
void EnableHupId(wxCommandEvent &event)
void BulkGeneEdit(wxCommandEvent &event)
void RemoveBankitComment(wxCommandEvent &event)
void MolInfoEdit(wxCommandEvent &event)
void RemovePublishedPublications(wxCommandEvent &event)
void RemoveEmptyGenomeProjectsDB(wxCommandEvent &event)
void RemoveSetsFromSet(wxCommandEvent &event)
void UpdateAlign(wxCommandEvent &event)
void RemoveFeatures(wxCommandEvent &evt)
void ListMacroButtonNames(wxCommandEvent &event)
void EditPubs(wxCommandEvent &event)
void RemoveDupFeats(wxCommandEvent &evt)
void AddSet(wxCommandEvent &event)
void LoadSettings(const string ®path, wxWindow *dlg)
void ConsolidateLikeModsWithoutSemicolon(wxCommandEvent &event)
void EnableStrainForwarding(wxCommandEvent &event)
void ReverseAuthorNames(wxCommandEvent &event)
vector< CRef< CSeq_loc > > & x_GetSelectedLocations()
void TrimJunkInPrimerSeqs(wxCommandEvent &event)
void ApplyFBOL(wxCommandEvent &event)
void AdjustCDSForIntrons(wxCommandEvent &event)
void ConvertSecondProtNameToDesc(wxCommandEvent &event)
void ConvertCdsWithGapsToMiscFeat(wxCommandEvent &evt)
void ReassignFeatureIds(wxCommandEvent &event)
void ConvertBadCdsAndRnaToMiscFeat(wxCommandEvent &event)
void ApplyEditConvertRemove(wxCommandEvent &event)
void RecomputeIntervals(wxCommandEvent &event)
void CountryConflict(wxCommandEvent &event)
void SegregateSets(wxCommandEvent &event)
void Help(wxCommandEvent &evt)
void RemoveUnindexedFeatures(wxCommandEvent &event)
void LinkmRNACDS(wxCommandEvent &event)
void SelectFeature(wxCommandEvent &event)
void BulkCdsEdit(wxCommandEvent &event)
void RemoveLocalSeqIdsFromAll(wxCommandEvent &event)
void AdjustrRNAForIntrons(wxCommandEvent &event)
void GlobalPubmedIdLookup(wxCommandEvent &event)
void ShowAfter(wxWindow *dlg)
void ClearKeywords(wxCommandEvent &event)
void ExtendCDS(wxCommandEvent &event)
void MacroEditor(wxCommandEvent &event)
void ParseCollectionDateMonthFirst(wxCommandEvent &event)
void FixNonReciprocalLinks(wxCommandEvent &event)
void ParseComment(wxCommandEvent &event)
void PrepareSeqSubmit(wxCommandEvent &event)
void ResynchronizePartials(wxCommandEvent &event)
void SaveASN1File(wxCommandEvent &event)
void AddTranslExcept(wxCommandEvent &event)
void CdsFromGeneMrnaExon(wxCommandEvent &evt)
void ConvertRptUnitRangeToLoc(wxCommandEvent &event)
void RemoveDbXrefsGenes(wxCommandEvent &evt)
void AddSequences(wxCommandEvent &event)
void ImportGFF3(wxCommandEvent &event)
void RemoveDbXrefsCDS(wxCommandEvent &evt)
void SortUniqueCount(wxCommandEvent &event)
void SaveDescriptors(wxCommandEvent &event)
void CdsToMatPeptide(wxCommandEvent &event)
void CorrectIntervalOrder(wxCommandEvent &event)
~CSequenceEditingEventHandler()
void AdjusttRNAForIntrons(wxCommandEvent &event)
void SaveSubmissionFile(wxCommandEvent &event)
void RemoveCollidingPublications(wxCommandEvent &event)
void RemoveEmptyStructuredComments(wxCommandEvent &event)
void ModifyStructuredComment(wxCommandEvent &event)
void FixProductNamesDefault(wxCommandEvent &event)
void AddStructuredCommentKeyword(wxCommandEvent &event)
void GeneralToLocalId(wxCommandEvent &event)
void GeneFeatFromXrefs(wxCommandEvent &event)
void RemoveUnnecessaryGeneXrefs(wxCommandEvent &event)
void LoadStructComments(wxCommandEvent &event)
void AddOtherFeature(wxCommandEvent &event)
void ConvertFeatToDescPub(wxCommandEvent &event)
void ParseText(wxCommandEvent &event)
void RemoveGenbankSeqIdsFromProt(wxCommandEvent &event)
void CreateLocusTagGene(wxCommandEvent &event)
void MergeBiosources(wxCommandEvent &event)
void WithdrawSequences(wxCommandEvent &event)
void SaveSettings(const string ®path, wxWindow *dlg) const
void EditSeqId(wxCommandEvent &event)
void FocusSet(wxCommandEvent &event)
void SetTransgSrcDesc(wxCommandEvent &event)
void ClearFeatureIds(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeatViral(wxCommandEvent &evt)
void ConvertComment(wxCommandEvent &event)
void ItemAction(wxCommandEvent &event, CRef< CItem > item, const string &title)
void RemoveAuthorConsortiums(wxCommandEvent &event)
void AlignmentAssistant(wxCommandEvent &event)
void FixiInPrimerSeqs(wxCommandEvent &event)
void ConvertCdsToMiscFeat(wxCommandEvent &evt)
void CreateGapFeats(wxCommandEvent &event)
void FuseJoinsInLocs(wxCommandEvent &event)
void ConvertBadInference(wxCommandEvent &event)
void AdjustmRNAForIntrons(wxCommandEvent &event)
void TrimNsTerminal(wxCommandEvent &event)
void SuppressGenes(wxCommandEvent &evt)
void RemProtTitles(wxCommandEvent &event)
void CompareWithBiosampleFirstOnly(wxCommandEvent &event)
void AddKeywordTPA_experimental(wxCommandEvent &event)
void AddLinkageToGaps(wxCommandEvent &event)
void ParseStrainSerotypeFromNames(wxCommandEvent &event)
void RecomputeIntervalsAndUpdateGenes(wxCommandEvent &event)
void ExtendCDSToStop(wxCommandEvent &event)
void CorrectRNAStrand(wxCommandEvent &event)
void RevCompSequences(wxCommandEvent &event)
void AdjustFeaturesForGaps(wxCommandEvent &event)
void RemoveSeqIdNamesFromProtFeats(wxCommandEvent &event)
void CombineAdjacentGaps(wxCommandEvent &event)
void FixOrgModInstitution(wxCommandEvent &event)
void LatLonTool(wxCommandEvent &event)
void RemoveSeqAnnotIds(wxCommandEvent &event)
void FarPointerSeq(wxCommandEvent &event)
CRef< CSeq_loc > GetFeatureLocation(CSeqFeatData::ESubtype subtype)
bool x_IsLocationOkForFeatCmd(CSeqFeatData::ESubtype subtype, CRef< CSeq_loc > loc)
void mRNAFromGeneCdsExon(wxCommandEvent &evt)
void RemoveAllStructuredComments(wxCommandEvent &event)
void SplitStructuredCollections(wxCommandEvent &event)
void IllegalQualsToNote(wxCommandEvent &event)
void ApplyIndexerComments(wxCommandEvent &evt)
void Update_Replaced_EC_numbers(wxCommandEvent &event)
void IsLocationSelected(wxUpdateUIEvent &event)
void RetranslateCDS(wxCommandEvent &event)
void SetTopLevelBioseqSetClass()
void AddFeatureBetween(wxCommandEvent &event)
CSequinDesktopViewFactory.
CRef< CCmdComposite > GetCommand()
static CIRef< IProjectView > CreateView(const string &viewName, FWindowFactory widgetFactory, IServiceLocator *serviceLocator, TConstScopedObjects &objects, ISimpleProjectViewCmdHandler *cmdHandler=0, bool bFloat=false)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, const string &title)
@ eCommandInfluenza_fixup
@ eCommandTrimOrganismNames
@ eCommandSplitQualsAtCommas
@ eCommandSplitStructuredCollections
@ eCommandInfluenza_parse
static CSubmissionWizard * GetInstance(wxWindow *parent, IWorkbench *wb, CRef< CGBProjectHandle > ph, CRef< CProjectItem > pi, wxWindowID id=ID_CSUBMISSIONWIZARD, const wxString &caption=_("Submission Wizard"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(650, 548), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxCLOSE_BOX)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static wxString ResolvePath(const wxString &path, const wxString &rel_name)
Utility function to hide the platform specifics of locating our standard directories and files.
static wxString ResolvePathExisting(const wxString &path, const wxString &delim=wxT(","))
Utility function to hide the platform specifics of locating our standard directories.
static void SetDoInference(objects::CUser_object ¶ms, bool val)
static void SetDoAlignment(objects::CUser_object ¶ms, bool val)
static wxWindow * CreateDialog(wxWindow *parent)
static wxWindow * CreateForm(wxWindow *parent)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, wxWindow *parent, const wxString &workDir, const CSequenceAmbigTrimmer::TTrimRuleVec &trim_rules=CSequenceAmbigTrimmer::GetDefaultTrimRules())
CRef< CCmdComposite > GetCommand()
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
const CUser_field & GetField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Access a named field in this user field.
void SetObjectType(EObjectType obj_type)
@ eObjectType_StructuredComment
static void GetInstance(wxWindow *parent, IWorkbench *workbench, CRef< objects::CUser_object > params, wxWindowID id=17000, const wxString &caption=_("Validation Errors"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(900, 600), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxTAB_TRAVERSAL)
CRef< CCmdComposite > GetCommand()
vector< string > GetNames()
CWorkbench - default implementation of IWorkbench.
static void RmWrongQuals(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void IllegalQualsToNote(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void WrongQualsToNote(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void RmIllegalQuals(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
void LinkByOverlap(ICommandProccessor *cmdProcessor)
void CompleteHalfFormedXrefPairs(ICommandProccessor *cmdProcessor)
void LinkSelectedFeatures(TConstScopedObjects &objects, ICommandProccessor *cmdProcessor)
void LinkByLabelAndLocation(ICommandProccessor *cmdProcessor)
void LinkByLabel(ICommandProccessor *cmdProcessor)
void LinkByProduct(ICommandProccessor *cmdProcessor)
vector< CConstRef< CObject > > GetReferencedmRNA_CDS(TConstScopedObjects &objects)
returns the pair of cross-referenced mRNA and CDS features, when one of them is selected
Undo/Redo interface for editing operations.
virtual void Execute(IEditCommand *command, wxWindow *window=0)=0
virtual bool PreExecute()=0
virtual bool PostExecute()=0
virtual string GetFileLoaderId() const =0
class IProjectView defines the abstract interface for views observing projects.
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, CConstRef< objects::CSeq_submit > submit=CConstRef< objects::CSeq_submit >(nullptr))
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
IUICommandContributor - contributes commands to the common command space.
IWorkbench is the central interface in the application framework.
unsigned int m_MiscFeatRule
CRef< CCmdComposite > GetCommand()
void SetWorkDir(const wxString &workDir)
static void Normalize(CPub &pub)
std::ofstream out("events_result.xml")
main entry point for tests
CRef< CCmdComposite > CreateControlRegion(objects::CSeq_entry_Handle entry)
CRef< CCmdComposite > AddNamedrRna(objects::CSeq_entry_Handle entry, string rna_name, bool ispartial5, bool ispartial3)
CRef< CCmdComposite > CreateMicrosatellite(objects::CSeq_entry_Handle entry)
const char * kStructCommDBName
const char * kGenbankBlockKeyword
const char * kSequenceIdColLabel
static void cleanup(void)
static const struct name_t names[]
static DLIST_TYPE *DLIST_NAME() first(DLIST_LIST_TYPE *list)
void GetGBenchVersionInfo(size_t &ver_major, size_t &ver_minor, size_t &ver_patch_level, CTime &build_date)
CRange< Position > Map(const CRange< Position > &target, const CRange< Position > &range)
CNcbiEnvironment & SetEnvironment(void)
Get a non-const copy of the application's cached environment.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
void Error(CExceptionArgs_Base &args)
const string & GetMsg(void) const
Get message string.
virtual const char * what(void) const noexcept
Standard report (includes full backlog).
void Info(CExceptionArgs_Base &args)
virtual bool Remove(TRemoveFlags flags=eRecursive) const
Remove a directory entry.
bool IsFile(EFollowLinks follow=eFollowLinks) const
Check whether a directory entry is a file.
virtual bool Exists(void) const
Check existence of file.
@ eIfExists_ReturnCurrent
Return reference to current stream, create new one if it does not exists yet.
@ eNoRemove
Do not remove file.
virtual wxFrame * GetMainWindow()=0
returns a pointer to the main application frame window
CIRef< T > GetServiceByType()
retrieves a typed reference to a service, the name of C++ type is used as the name of the service.
#define NCBI_PACKAGEENTRYPOINT_EXPORT
void AddTask(IAppTask &task)
Add a task to the queue.
virtual wxFrame * GetMainWindow()
returns a pointer to the main application frame window
ETaskState
List of task states defining the task management FSM.
@ eCompleted
successfully finished
objects::CSeq_entry_Handle GetTopSeqEntryFromScopedObject(SConstScopedObject &obj)
static bool IsVDBAccession(const string &acc)
Check if string starts with ("SRA", "SRR", "DRR", "ERR")
objects::CSeq_entry_Handle GetSeqEntryForPubdesc(CRef< objects::CScope > scope, const objects::CPubdesc &pubdesc)
virtual void RemoveListener(CEventHandler *listener)
Remove a listener.
static void GetLabel(const CObject &obj, string *label, ELabelType type=eDefault)
void GetExtensionAsInterface(const string &ext_point_id, vector< CIRef< I > > &interfaces)
GetExtensionAsInterface() is a helper function that extracts all extensions implementing the specifie...
void NcbiErrorBox(const string &message, const string &title="Error")
specialized Message Box function for reporting critical errors
EDialogReturnValue NcbiMessageBox(const string &message, TDialogType type=eDialog_Ok, EDialogIcon icon=eIcon_Exclamation, const string &title="Error", EDialogTextMode text_mode=eRaw)
#define END_EVENT_MAP()
Ends definition of Command Map.
#define BEGIN_EVENT_MAP(thisClass, baseClass)
Begins definition of Command Map for CEventHandler-derived class.
virtual void AddListener(CEventHandler *listener, int pool_name=ePool_Default)
Add a listener.
static Uint8 GetRemoteFileSize(const string &url)
Returns the size of the remote file.
vector< SConstScopedObject > TConstScopedObjects
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
#define MSerial_AsnText
I/O stream manipulators –.
CNcbiIstream & ContentStream(void) const
Get input stream.
int GetStatusCode(void) const
Get response status code.
bool CanGetContentStream(void) const
Check if the requested content can be read from the content stream.
CHttpResponse g_HttpGet(const CUrl &url, const CHttpParam ¶m)
Shortcut for GET request.
string GetSeqIdString(bool with_version=false) const
Return seqid string with optional version for text seqid type.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Optimized implementation of CSerialObject::Assign, which is not so efficient.
CConstRef< CSeq_id > GetSeqId(void) const
bool Match(const CSeq_id &sid2) const
Match() - TRUE if SeqIds are equivalent.
@ fParse_Default
By default in ParseIDs and IsValid, allow raw parsable non-numeric accessions and plausible local acc...
@ eContent
Untagged human-readable accession or the like.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Override Assign() to incorporate cache invalidation.
TSeqPos GetStart(ESeqLocExtremes ext) const
Return start and stop positions of the seq-loc.
void SetPartialStart(bool val, ESeqLocExtremes ext)
set / remove e_Lim fuzz on start or stop (lt/gt - indicating partial interval)
void SetPartialStop(bool val, ESeqLocExtremes ext)
bool AdjustFeaturePartialFlagForLocation(CSeq_feat &new_feat)
AdjustFeaturePartialFlagForLocation A function to ensure that Seq-feat.partial is set if either end o...
CMappedFeat GetBestOverlappingFeat(const CMappedFeat &feat, CSeqFeatData::ESubtype need_subtype, sequence::EOverlapType overlap_type, CFeatTree *feat_tree=0, const SAnnotSelector *base_sel=0)
const CSeq_id & GetId(const CSeq_loc &loc, CScope *scope)
If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found,...
sequence::ECompare Compare(const CSeq_loc &loc1, const CSeq_loc &loc2, CScope *scope)
Returns the sequence::ECompare containment relationship between CSeq_locs.
CRef< CSeq_loc > Seq_loc_Merge(const CSeq_loc &loc, CSeq_loc::TOpFlags flags, CScope *scope)
Merge ranges in the seq-loc.
@ eOverlap_Simple
any overlap of extremes
@ eOverlap_Contained
2nd contained within 1st extremes
CConstRef< CSeq_feat > GetOverlappingCDS(const CSeq_loc &loc, CScope &scope)
vector< STrimRule > TTrimRuleVec
Multiple STrimRules are allowed, which are applied from smallest bases_to_check to largest bases_to_c...
@ eGetId_Best
return the "best" gi (uses FindBestScore(), with CSeq_id::CalculateScore() as the score function
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
CSeq_entry_Handle AddTopLevelSeqEntry(CSeq_entry &top_entry, TPriority pri=kPriority_Default, EExist action=eExist_Default)
Add seq_entry, default priority is higher than for defaults or loaders Add object to the score with p...
CSeq_entry_Handle GetSeq_entryHandle(CDataLoader *loader, const TBlobId &blob_id, EMissing action=eMissing_Default)
Get Seq-entry handle by its blob-id, with possible loading.
CBioseq_Handle GetBioseqHandle(const CSeq_id &id)
Get bioseq handle by seq-id.
void AddDefaults(TPriority pri=kPriority_Default)
Add default data loaders from object manager.
void GetAllTSEs(TTSE_Handles &tses, enum ETSEKind kind=eManualTSEs)
CSeq_feat_Handle GetSeq_featHandle(const CSeq_feat &feat, EMissing action=eMissing_Default)
vector< CSeq_entry_Handle > TTSE_Handles
const CSeq_annot_Handle & GetAnnot(void) const
Get handle to seq-annot for this feature.
CSeq_entry_Handle GetSeq_entry_Handle(void) const
Get parent Seq-entry handle.
TSet ConvertSeqToSet(TClass set_class=CBioseq_set::eClass_not_set) const
Convert the entry from Bioseq to Bioseq-set.
CConstRef< CBioseq_set > GetCompleteBioseq_set(void) const
Return the complete bioseq-set object.
CSeq_entry_Handle GetParentEntry(void) const
Get parent Seq-entry handle.
CSeq_entry_Handle GetTopLevelEntry(void) const
Get top level Seq-entry handle.
TInst_Length GetInst_Length(void) const
CConstRef< CSeq_entry > GetCompleteSeq_entry(void) const
Complete and get const reference to the seq-entry.
CScope & GetScope(void) const
Get scope this handle belongs to.
CRef< CSeq_loc > GetRangeSeq_loc(TSeqPos start, TSeqPos stop, ENa_strand strand=eNa_strand_unknown) const
Return CSeq_loc referencing the given range and strand on the bioseq If start == 0,...
CConstRef< TObject > GetCompleteObject(void) const
void Reset(void)
Reset handle and make it not to point to any seq-entry.
CSeq_entry_Handle GetTopLevelEntry(void) const
Get top level Seq-entry handle.
const TId & GetId(void) const
const CSeq_align & GetOriginalSeq_align(void) const
Get original alignment.
CSeq_align_Handle GetSeq_align_Handle(void) const
Get original alignment handle.
CSeq_entry_Handle GetSeq_entry_Handle(void) const
@ fIncludeGivenEntry
Include the top (given) entry.
@ fRecursive
Iterate recursively.
TObjectType * GetPointer(void) const THROWS_NONE
Get pointer,.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
void Reset(void)
Reset reference object.
TObjectType * GetPointerOrNull(void) THROWS_NONE
Get pointer value.
TObjectType & GetNCObject(void) const
Get object.
uint64_t Uint8
8-byte (64-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ofstream CNcbiOfstream
Portable alias for ofstream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
IO_PREFIX::ifstream CNcbiIfstream
Portable alias for ifstream.
bool NcbiStreamCopy(CNcbiOstream &os, CNcbiIstream &is)
Copy the entire contents of stream "is" to stream "os".
static bool EndsWith(const CTempString str, const CTempString end, ECase use_case=eCase)
Check if a string ends with a specified suffix value.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
static string Join(const TContainer &arr, const CTempString &delim)
Join strings using the specified delimiter.
static bool StartsWith(const CTempString str, const CTempString start, ECase use_case=eCase)
Check if a string starts with a specified prefix value.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
@ eNocase
Case insensitive compare.
CTime CurrentTime(CTime::ETimeZone tz=CTime::eLocal, CTime::ETimeZonePrecision tzp=CTime::eTZPrecisionDefault)
static const char label[]
void SetName(TName &value)
Assign a value to Name data member.
bool IsSetDate(void) const
replaces imp, will become required Check if a value has been assigned to Date data member.
TDescr & SetDescr(void)
Assign a value to Descr data member.
void SetLabel(const TLabel &value)
Assign a value to Label data member.
void SetItem(TItem &value)
Assign a value to Item data member.
const TStr & GetStr(void) const
Get the variant data.
bool IsStr(void) const
Check if variant Str is selected.
bool IsSetType(void) const
type of object within class Check if a value has been assigned to Type data member.
const TData & GetData(void) const
Get the Data member data.
bool IsStr(void) const
Check if variant Str is selected.
TData & SetData(void)
Assign a value to Data data member.
const TStr & GetStr(void) const
Get the variant data.
void SetLabel(TLabel &value)
Assign a value to Label data member.
void SetType(TType &value)
Assign a value to Type data member.
void SetData(TData &value)
Assign a value to Data data member.
const TType & GetType(void) const
Get the Type member data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
vector< CRef< CUser_field > > TData
void SetHeader(THeader &value)
Assign a value to Header data member.
vector< CRef< CSeqTable_column > > TColumns
void SetData(TData &value)
Assign a value to Data data member.
@ eField_id_location_id
location Seq-id
bool IsSpliced(void) const
Check if variant Spliced is selected.
const TSegs & GetSegs(void) const
Get the Segs member data.
TXref & SetXref(void)
Assign a value to Xref data member.
void SetQual(const TQual &value)
Assign a value to Qual data member.
bool IsSetData(void) const
the specific data Check if a value has been assigned to Data data member.
void SetLocation(TLocation &value)
Assign a value to Location data member.
void SetComment(const TComment &value)
Assign a value to Comment data member.
void SetPartial(TPartial value)
Assign a value to Partial data member.
const TLocation & GetLocation(void) const
Get the Location member data.
bool IsGene(void) const
Check if variant Gene is selected.
const TData & GetData(void) const
Get the Data member data.
void SetVal(const TVal &value)
Assign a value to Val data member.
void SetPseudo(TPseudo value)
Assign a value to Pseudo data member.
const TXref & GetXref(void) const
Get the Xref member data.
void ResetXref(void)
Reset Xref data member.
TQual & SetQual(void)
Assign a value to Qual data member.
bool IsSetLocation(void) const
feature made from Check if a value has been assigned to Location data member.
@ e_not_set
No variant selected.
@ e_Other
for historical reasons, 'other' = 'refseq'
@ e_Gi
GenInfo Integrated Database.
bool IsSetClass(void) const
Check if a value has been assigned to Class data member.
const TDescr & GetDescr(void) const
Get the Descr member data.
TSet & SetSet(void)
Select the variant.
TClass GetClass(void) const
Get the Class member data.
const TSet & GetSet(void) const
Get the variant data.
bool IsSetDescr(void) const
Check if a value has been assigned to Descr data member.
void SetClass(TClass value)
Assign a value to Class data member.
TSeq_set & SetSeq_set(void)
Assign a value to Seq_set data member.
@ eClass_nuc_prot
nuc acid and coded proteins
@ eClass_genbank
converted genbank
const TInst & GetInst(void) const
Get the Inst member data.
TTitle & SetTitle(void)
Select the variant.
TPub & SetPub(void)
Select the variant.
bool IsSetMol(void) const
Check if a value has been assigned to Mol data member.
TGenbank & SetGenbank(void)
Select the variant.
const TId & GetId(void) const
Get the Id member data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
bool IsSetInst(void) const
the sequence data Check if a value has been assigned to Inst data member.
TMol GetMol(void) const
Get the Mol member data.
TComment & SetComment(void)
Select the variant.
void SetInst(TInst &value)
Assign a value to Inst data member.
TSource & SetSource(void)
Select the variant.
bool IsSetDescr(void) const
descriptors Check if a value has been assigned to Descr data member.
void SetBiomol(TBiomol value)
Assign a value to Biomol data member.
TUser & SetUser(void)
Select the variant.
const TFtable & GetFtable(void) const
Get the variant data.
bool IsFtable(void) const
Check if variant Ftable is selected.
const TData & GetData(void) const
Get the Data member data.
const TDescr & GetDescr(void) const
Get the Descr member data.
TMolinfo & SetMolinfo(void)
Select the variant.
@ e_Ids
used for communication between tools
@ e_User
user defined object
@ e_Pub
a reference to the publication
@ e_Molinfo
info on the molecule and techniques
@ eMol_not_set
> cdna = rna
@ eMol_na
just a nucleic acid
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
const TCit & GetCit(void) const
Get the Cit member data.
void SetSub(TSub &value)
Assign a value to Sub data member.
void SetCit(TCit &value)
Assign a value to Cit data member.
void SetTool(const TTool &value)
Assign a value to Tool data member.
const TEntrys & GetEntrys(void) const
Get the variant data.
const TData & GetData(void) const
Get the Data member data.
void SetData(TData &value)
Assign a value to Data data member.
bool IsEntrys(void) const
Check if variant Entrys is selected.
void SetContact(TContact &value)
Assign a value to Contact data member.
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is orig
<!DOCTYPE HTML >< html > n< header > n< title > PubSeq Gateway Help Page</title > n< style > n table
for(len=0;yy_str[len];++len)
Functions used in the DO/DONE section affecting the top seq-entry.
Macro library for storing parsed macros.
CMinPanelContainer::OnRestoreWindow EVT_UPDATE_UI_RANGE(eCmdCloseDockPanel, eCmdWindowRestore, CMinPanelContainer::OnUpdateWindowCommand) CMinPanelContainer
CRef< CCmdComposite > GetPropagateDBLinkCmd(objects::CSeq_entry_Handle entry)
void GetViewObjects(IWorkbench *workbench, TConstScopedObjects &objects)
const struct ncbi::grid::netcache::search::fields::SIZE size
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
void copy(Njn::Matrix< S > *matrix_, const Njn::Matrix< T > &matrix0_)
double f(double x_, const double &y_)
static const char * prefix[]
IGuiPackage * NCBIGBenchGetPackage()
Declare Package Entry Point.
static CRef< CUser_object > GetParams()
static const char * kFramePosX
static const char * kFrameHeight
static tuple< CRef< CGBProjectHandle >, CRef< CProjectItem > > LoadFileForSubmission(wxWindow *parent, CIRef< CProjectService > srv, CRef< CGBWorkspace > ws)
static bool EqualLoc(CRef< CSeq_loc > first, CRef< CSeq_loc > second)
static const char * sMacroLibraries[]
ON_EVENT_RANGE(CSelectionServiceEvent, CSelectionServiceEvent::eClientAttached, CSelectionServiceEvent::eSelectionChanged, &CSequenceEditingEventHandler::x_OnSelectionEvent) static const SwxMenuItemRec *CSeqEditPackage
static wxString IndexerTypeToName(int i)
static bool s_UpdateLocalFile(const string &url, const string &file_name)
static bool CompLoc(CRef< CSeq_loc > first, CRef< CSeq_loc > second)
static const char * kFramePosY
static const char * kFrameWidth
bool AddOrgToDefline(objects::CSeq_entry_Handle seh, CCmdComposite *composite)
bool AddModToDefline(objects::CSeq_entry_Handle entry, CCmdComposite *composite, const objects::CAutoDefAvailableModifier &mod, bool show_label)
#define EXT_POINT__PROJECT_ITEM_EXTENSION
#define EDIT_EACH_SEQFEATXREF_ON_SEQFEAT(Itr, Var)
#define FOR_EACH_SEQFEATXREF_ON_SEQFEAT(Itr, Var)
FOR_EACH_SEQFEATXREF_ON_SEQFEAT EDIT_EACH_SEQFEATXREF_ON_SEQFEAT.
void FillShortColumns(CRef< objects::CSeq_table > values_table)
void AddValueToTable(CRef< CSeq_table > table, string subtype_name, string value, size_t row, edit::EExistingText existing_text=edit::eExistingText_replace_old)
static const char * kInternalIndexerRegistry
static const char * kInternalIndexerRegistryType
@ eCmdDescriptorPropagateDown
@ eCmdConvertCdsWithInternalStopToMiscFeat
@ eCmdRemoveLocalSeqIdsFromNuc
@ eCmdConvertAccessionToLocalIdsAll
@ eCmdEditStructuredCommentPrefixSuffixMIMARKS3_0
@ eCmdLinkmRNACDSUnidirectional
@ eCmdLinkmRNACDSTranscriptID
@ eCmdCreateSeqHistForTpa
@ eCmdRetranslateCDSIgnoreStopExceptEnd_ext
@ eCmdRemoveNonsuppressingGeneXrefs
@ eCmdTruncateAuthorMiddleInitials
@ eCmdCreateDescRefGeneTracking
@ eCmdCreateStructuredCommentPrefixSuffixMIGS
@ eCmdAddKeywordWithConstraint
@ eCmdRemoveAllStructuredComments
@ eCmdSplitQualifiersAtCommas
@ eCmdFixForTransSplicing
@ eCmdRemoveSeqHistAssembly
@ eCmdRetranslateCDSObeyStop
@ eCmdConvertCdsWithInternalStopToMiscFeatUnverified
@ eCmdUpdateSequenceClipboard
@ eCmdEditStructuredCommentPrefixSuffixFluData
@ eCmdSortUniqueCountTree
@ eCmdParseCollectionDateDayFirst
@ eCmdRemoveSequences_ext
@ eCmdConvertDescToFeatComment
@ eCmdRemoveOrphanLocusGeneXrefs
@ eCmdRemoveDuplicateGOTerms
@ eCmdValidateNoAlignments
@ eCmdSpecificHostCleanup
@ eCmdLinkSelectedmRNACDS
@ eCmdRemoveOrphanedProteins
@ eCmdRemoveTextInsideStr
@ eCmdConvertSelectedGapsToKnown
@ eCmdTrimJunkInPrimerSeqs
@ eCmdEditStructuredCommentPrefixSuffixGenAssData
@ eCmdEditSeqEndsWithAlign
@ eCmdCreateDescStructuredComment
@ eCmdFixCapitalizationCountry
@ eCmdCDSGeneRangeErrorRestore
@ eCmdAutodefDefaultOptions
@ eCmdParseTextFromDefline
@ eCmdRemoveGenbankSeqIdsFromProt
@ eCmdFixOrgModInstitution
@ eCmdLinkmRNACDSLabelLocation
@ eCmdRemoveBankitComment
@ eCmdRemoveTaxonFeatsAndBioSource
@ eCmdAddKeywordTPA_experimental
@ eCmdIndexerTypeSelection
@ eCmdConvertAuthorToConsortiumAll
@ eCmdDeleteStructuredCommentPrefixSuffixMIGS
@ eCmdDeleteStructuredCommentPrefixSuffixGenAssData
@ eCmdRemoveGenomeProjectId
@ eCmdCreateDescGenomeAssemblyComment
@ eCmdUpdateMultiSeqClipboard
@ eCmdRemoveUnpublishedPublications
@ eCmdAddStructuredCommentKeyword
@ eCmdPrefixHaplotToDefLine
@ eCmdConvertCdsWithGapsToMiscFeat
@ eCmdConvertAccessionToLocalIdsName
@ eCmdAdjustmRNAForIntrons
@ eCmdConvertDescToFeatPubConstraint
@ eCmdEditStructuredCommentPrefixSuffixMIENSData
@ eCmdRemoveInPressPublications
@ eCmdLinkmRNACDSProteinID
@ eCmdAddAssemblyStructuredComment
@ eCmdCombineSelectedGenesIntoPseudogenes
@ eCmdAdjustConsensusSpliceSitesStrict
@ eCmdResynchronizePartialsCDS
@ eCmdFixNonReciprocalLinks
@ eCmdApplyIndexerComments
@ eCmdModifyStructuredComment
@ eCmdSortUniqueCountTree_ext
@ eCmdCompareWithBiosample
@ eCmdLoadSecondaryAccessions
@ eCmdRemoveDbXrefsBioSourceAndFeats
@ eCmdAddGenomeAssemblyStructuredComment
@ eCmdAdjustConsensusSpliceSitesStrict_ext
@ eCmdDeleteStructuredCommentPrefixSuffixMIMARKS
@ eCmdRemoveDuplicateStructuredComments
@ eCmdGlobalPubmedIdLookup
@ eCmdAdjustConsensusSpliceSitesConsensusEnds
@ eCmdCreateDescUnverified
@ eCmdCreateDescGenBankBlock
@ eCmdCdsFromGeneMrnaExon
@ eCmdAdjustConsensusSpliceSitesRelaxed_ext
@ eCmdConvertSecondProtNameToDesc
@ eCmdRemoveSequencesFromAlignments
@ eCmdConvertDescToFeatPub
@ eCmdImportFeatureTable_ext
@ eCmdUpdateSequenceAccession
@ eCmdConvertSelectedGapsToUnknown
@ eCmdRemoveUnnecessaryGeneXrefs
@ eCmdImportFeatureTableClipboard
@ eCmdEditStructuredCommentPrefixSuffixiBol
@ eCmdAdjustFeaturesForGaps
@ eCmdRemoveTextOutsideString
@ eCmdFixProductNamesDefault
@ eCmdCreateStructuredCommentPrefixSuffixGenAnnData
@ eCmdShowFeatureTable_ext
@ eCmdAdjustConsensusSpliceSitesRelaxed
@ eCmdStripAuthorSuffixes
@ eCmdPrefixCloneToDefLine
@ eCmdFixCapitalizationAffiliation
@ eCmdDeleteStructuredCommentPrefixSuffixMIMS
@ eCmdConvertFeatToDescPub
@ eCmdCreateDescTPAAssembly
@ eCmdConvertAccessionToLocalIdsProt
@ eCmdEnableStrainForwarding
@ eCmdRawSeqToDeltaByNs_ext
@ eCmdRetranslateCDSIgnoreStopExceptEnd
@ eCmdPackageFeaturesOnParts
@ eCmdDeleteStructuredCommentPrefixSuffixMIENSData
@ eCmdRemoveDbXrefsBioSource
@ eCmdConvertCdsToMiscFeat
@ eCmdHelpEditingTools_ext
@ eCmdConvertBadInference
@ eCmdRemoveLocalSeqIdsFromProt
@ eCmdEditStructuredCommentPrefixSuffixAssemblyData
@ eCmdRemoveEmptyStructuredComments
@ eCmdCreateDescComment_ext
@ eCmdRemoveCddFeatDbxref
@ eCmdAdjustrRNAForIntrons
@ eCmdPrefixStrainToDefLine
@ eCmdInstantiateProteinTitles
@ eCmdConsolidateLikeModsWithSemicolon
@ eCmdSplitCDSwithTooManyXs
@ eCmdmRNAFromGeneCdsExon
@ eCmdExtendPartialsConstr
@ eCmdEditStructuredCommentPrefixSuffixHIVData
@ eCmdRemoveDupFeatsWithOptions_ext
@ eCmdRemoveProteinsAndRenormalizeNucProtSets
@ eCmdExportStructuredCommentsTable
@ eCmdRemoveOrphanLocus_tagGeneXrefs
@ eCmdConvertAuthorToConstortiumWhereLastName
@ eCmdConvertToDelayedGenProdSetQuals
@ eCmdCreateDescAuthorizedAccess
@ eCmdRemoveSeqIdNamesFromProtFeats
@ eCmdRemoveEmptyGenomeProjectId
@ eCmdSplitStructuredCollections
@ eCmdConvertFeatToDescComment
@ eCmdResolveIntersectingFeats
@ eCmdCreateSeqHistForTpaDetailed
@ eCmdCreateStructuredCommentPrefixSuffixMIENSData
@ eCmdAdjustCDSForIntrons
@ eCmdSuspectProductRulesEditor
@ eCmdCombineAdjacentGaps
@ eCmdRemoveUnindexedFeatures
@ eCmdConvertDescToSecondProtName
@ eCmdAddKeywordTPA_inferential
@ eCmdMakeBadSpecificHostTable
@ eCmdRemoveCollidingPublications
@ eCmdPrefixCultivarToDefLine
@ eCmdRevCompSequences_ext
@ eCmdFixStructuredVouchers
@ eCmdReorderStructuredComment
@ eCmdFixCapitalizationAuthors
@ eCmdRemovePublishedPublications
@ eCmdConvertCdsWithInternalStopToMiscFeatViral
@ eCmdRemoveGiSeqIdsFromAll
@ eCmdEditStructuredCommentPrefixSuffixMIGS3_0
@ eCmdRemoveDbXrefsAllFeats
@ eCmdCreateStructuredCommentPrefixSuffixMIMARKS
@ eCmdAddLinkageToGaps_ext
@ eCmdConvertDescToFeatSource
@ eCmdRemoveAuthorConsortiums
@ eCmdRemoveUnnecessaryExceptions
@ eCmdAddStrainSerotypeToNames
@ eCmdRawSeqToDeltaByAssemblyGapFeatures
@ eCmdTableReaderClipboard
@ eCmdCreateStructuredCommentPrefixSuffixGenAssData
@ eCmdRemoveDupFeatsWithOptions
@ eCmdConvertBadCdsAndRnaToMiscFeat
@ eCmdFixCapitalizationAll
@ eCmdCreateStructuredCommentPrefixSuffixMIMS
@ eCmdConsolidateLikeModsWithoutSemicolon
@ eCmdSetGlobalRefGeneStatus
@ eCmdParseStrainSerotypeFromNames
@ eCmdDeleteStructuredCommentPrefixSuffixGenAnnData
@ eCmdRetranslateCDSChooseFrame
@ eCmdEditStructuredCommentPrefixSuffixMIGSData
@ eCmdRemoveLocalSeqIdsFromAll
@ eCmdCreateDescUnreviewed
@ eCmdFixCapitalizationTitles
@ eCmdConvertFeatToDescSource
@ eCmdRemoveGenbankSeqIdsFromAll
@ eCmdUpdate_Replaced_EC_numbers
@ eCmdFixProductNamesOptions
@ eCmdAddKeywordTPA_assembly
@ eCmdRecomputeIntervalsAndUpdateGenes
@ eCmdRemoveAllPublications
@ eCmdRemoveStructuredCommentKeyword
@ eCmdPrefixListToDefLine
@ eCmdSortUniqueCountText
@ eCmdCorrectIntervalOrder
@ eCmdConvertAccessionToLocalIdsNuc
@ eCmdCDSGeneRangeErrorSuppress
@ eCmdCheckForMixedStrands
@ eCmdValidateCheckInferences
@ eCmdUpdateMultiSequences
@ eCmdEditStructuredCommentPrefixSuffixMIMSData
@ eCmdConvertRptUnitRangeToLoc
@ eCmdParseCollectionDateMonthFirst
@ eCmdDisableStrainForwarding
@ eCmdLoadSecondaryAccessionsHistoryTakeover
@ eCmdApplyStructuredCommentField
@ eCmdRestoreAndConvertSeqSubmit
@ eCmdPrefixIsolateToDefLine
@ eCmdEditStructuredCommentPrefixSuffixMIMS3_0
@ eCmdAdjusttRNAForIntrons
@ eCmdCompareWithBiosampleFirstOnly
ViewerWindowBase::OnEditMenu ViewerWindowBase::OnJustification EVT_MENU(MID_SHOW_GEOM_VLTNS, ViewerWindowBase::OnShowGeomVltns) EVT_MENU(MID_FIND_PATTERN
#define row(bind, expected)
@ eExistingText_replace_old
For example, if bases_to_check is 10 and max_bases_allowed_to_be_ambig is 5, then on each iteration w...
#define WX_MENU_ITEM_EXT(cmd)
#define WX_DEFINE_MENU(name)
New macros for defining menus for use with CUICommandRegistry.
#define WX_SUBMENU(label)
#define WX_SUBMENU_EXT(label)
#define WX_MENU_CHECK_ITEM_INT(cmd)
#define WX_MENU_SEPARATOR_L(label)
#define WX_SUBMENU_INT(label)
#define WX_MENU_SEPARATOR_EXT()
#define WX_MENU_ITEM_INT(cmd)
#define WX_MENU_SEPARATOR_INT()
CRef< CCmdComposite > GetRemoveDuplicateGOTermsCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetSynchronizeProteinPartialsCommand(objects::CScope &scope, const objects::CSeq_feat &cds)
CRef< CCmdComposite > CleanupCommand(objects::CSeq_entry_Handle orig_seh, bool extended, bool do_tax)
void GetProductToCDSMap(objects::CScope &scope, map< objects::CBioseq_Handle, set< objects::CSeq_feat_Handle > > &product_to_cds)
CRef< CCmdComposite > GetDisableStrainForwardingCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetRmCultureNotesCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > SpecificHostCleanupCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetNormalizeGeneQualsCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetEnableStrainForwardingCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > TaxonomyLookupCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetDeleteFeatureCommand(const objects::CSeq_feat_Handle &fh, bool remove_proteins=true)
static const char *const features[]
wxString ToWxString(const string &s)
string ToStdString(const wxString &s)
void CorrectWindowRect(wxTopLevelWindow *win, wxRect &rc)